Subject: Modem performance on 1.5_Alpha
To: None <current-users@netbsd.org>
From: David Forbes <david@flossy.u-net.com>
List: current-users
Date: 08/12/2000 11:10:59
Since upgrading to 1.5_Alpha, my modem performance has become appalling.
To be specific, I've got a 56k USR Sportster external attached to tty00 on
a ChalTech CATS box (this is /arm32, but I don't know whether it's and
arm32 problem or a more general one). Previously, I've had smooth
operation with the line
tty00 57600
in the ppp config file. However, now I find that this generates lots of
silo overflows to the extent that just about any TCP connection doesn't
get past the first couple of bytes. I've reduced this back to
tty00 38400
but still I'm getting plenty of
Aug 12 10:39:55 crowley /netbsd: com0: 13 silo overflows, 0 ibuf floods
and connections stop and start in a fairly haphazard manner.
Unfortunately, I was previously running 1.4 on this and have not been
following -current on this machine, so I don't know at what point this
began to be a problem.
Anyone got any ideas as to what has caused this or where I might start
looking for a solution?
Thanks,
David.
PS - My new kernel config is:
# $NetBSD: CATS,v 1.35 2000/06/14 22:02:20 veego Exp $
#
# CATS -- CHALTECH CATS Development kernel
#
include "arch/arm32/conf/std.arm32"
# estimated number of users
maxusers 32
# Standard system options
options UCONSOLE # users can use TIOCCONS (for xconsole)
options INSECURE # disable kernel securelevel
options RTC_OFFSET=0 # hardware clock is this many mins. west of GMT
#options NTP # NTP phase/frequency locked loop
# CPU options
# For standard RiscPC's
#options CPU_SA110 # Support the SA110 core
#options CPU_ARM6 # Support the ARM6 core
#options CPU_ARM7 # Support the ARM7 core
#options CPU_ARM8 # Support the ARM8 core
#options ARM6_LATE_ABORT # ARM6XX late abort support
# For A7000, Stork and other ARM7500 machines
#options CPU_ARM7 # Support the ARM7 core
#options CPU_ARM7500 # We are actually an ARM7500
# For StrongARM systems
options CPU_SA110 # Support the SA110 core
# Architecture options
#options IOMD # We have an IOMD
#options RISCPC # We are a RiscPC
#options RC7500 # We are a RC7500
options FOOTBRIDGE # We have DC21285 'Footbridge' core logic
options EBSA285 # We are an EBSA285
# FPA options
#options ARMFPE # ARM Ltd FPE
# File systems
file-system FFS # UFS
#file-system LFS # log-structured file system
#file-system MFS # memory file system
file-system NFS # Network file system
#file-system ADOSFS # AmigaDOS-compatible file system
#file-system EXT2FS # second extended file system (linux)
file-system CD9660 # ISO 9660 + Rock Ridge file system
file-system MSDOSFS # MS-DOS file system
#file-system FDESC # /dev/fd
file-system KERNFS # /kern
#file-system NULLFS # loopback file system
#file-system OVERLAY # overlay filesystem
#file-system PORTAL # portal filesystem (still experimental)
file-system PROCFS # /proc
#file-system UMAPFS # NULLFS + uid and gid remapping
#file-system UNION # union file system
#file-system CODA # Coda File System; also needs vcode (below)
# File system options
#options QUOTA # UFS quotas
#options FFS_EI # FFS Endian Independant support
options NFSSERVER
#options SOFTDEP # FFS soft updates support
# Networking options
options GATEWAY # packet forwarding
options INET # IP + ICMP + TCP + UDP
#options INET6 # IPV6
#options IPSEC # IP security
#options IPSEC_ESP # IP security (encryption part; define w/ IPSEC)
#options IPSEC_DEBUG # debug for IP security
#options MROUTING # IP multicast routing
#options NS # XNS
#options NSIP # XNS tunneling over IP
#options ISO,TPIP # OSI
#options EON # OSI tunneling over IP
#options CCITT,LLC,HDLC # X.25
#options NETATALK # AppleTalk networking
options PFIL_HOOKS # pfil(9) packet filter hooks
options PPP_BSDCOMP # BSD-Compress compression support for PPP
options PPP_DEFLATE # Deflate compression support for PPP
options PPP_FILTER # Active filter support for PPP (requires bpf)
#options NFS_BOOT_BOOTP
#options NFS_BOOT_DHCP
#options NFS_BOOT_BOOTPARAM
# Compatibility options
#options COMPAT_43 # 4.3BSD compatibility.
options COMPAT_14 # NetBSD 1.4 compatibility.
options COMPAT_13 # NetBSD 1.3 compatibility.
#options COMPAT_12 # NetBSD 1.2 compatibility.
#options COMPAT_11 # NetBSD 1.1 compatibility.
#options COMPAT_10 # NetBSD 1.0 compatibility.
#options COMPAT_09 # NetBSD 0.9 compatibility.
#options TCP_COMPAT_42 # TCP bug compatibility with 4.2BSD
# Shared memory options
options SYSVMSG # System V-like message queues
options SYSVSEM # System V-like semaphores
options SYSVSHM # System V-like memory sharing
#options SHMMAXPGS=1024 # 1024 pages is the default
# Device options
#options MEMORY_DISK_HOOKS # boottime setup of ramdisk
#options MEMORY_DISK_SIZE=0 # Size in blocks
#options MINIROOTSIZE=3400 # Size in blocks
#options MEMORY_DISK_IS_ROOT # use memory disk as root
# Miscellaneous kernel options
options KTRACE # system call tracing, a la ktrace(1)
options IRQSTATS # manage IRQ statistics
#options LKM # loadable kernel modules
#options KMEMSTATS # kernel memory statistics
#options SCSIVERBOSE # Verbose SCSI errors
options PCIVERBOSE # Verbose PCI descriptions
#options MIIVERBOSE # verbose PHY autoconfig messages
#options PCI_CONFIG_DUMP # verbosely dump PCI config space
#options USBVERBOSE # verbose USB device autoconfig messages
options DDB_KEYCODE=0x40
options PMAP_STATIC_L1S=128
# wscons options
#options WSEMUL_SUN # sun terminal emulation
options WSEMUL_VT100 # VT100 / VT220 emulation
# different kernel output - see dev/wscons/wsdisplayvar.h
options WS_KERNEL_FG=WSCOL_MAGENTA
options WSDISPLAY_COMPAT_PCVT # emulate some ioctls
options WSDISPLAY_COMPAT_SYSCONS # emulate some ioctls
options WSDISPLAY_COMPAT_USL # VT handling
options WSDISPLAY_COMPAT_RAWKBD # can get raw scancodes
# see dev/wscons/wskbdmap_mfii.h for implemented layouts
#options PCKBD_LAYOUT="(KB_DE | KB_NODEAD)"
options PCKBD_LAYOUT="KB_UK"
# Development and Debugging options
#options ARM700BUGTRACK # track the ARM700 swi bug
#options PORTMASTER # Enable PortMaster only options
#options DIAGNOSTIC # internally consistency checks
#options PMAP_DEBUG # Enable pmap_debug_level code
#options IPKDB # remote kernel debugging
options DDB # in-kernel debugger
options DDB_HISTORY_SIZE=100 # Enable history editing in DDB
#makeoptions DEBUG="-g" # compile full symbol table
config netbsd root on ? type ?
# The main bus device
mainbus0 at root
# The boot cpu
cpu0 at mainbus?
# Core logic
footbridge0 at mainbus?
# footbridge uart
fcom0 at footbridge?
# system clock via footbridge
#clock* at footbridge?
# time-of-day device via footbridge or RTC
todclock0 at todservice?
# PCI bus support
# PCI bus via footbridge
pci0 at footbridge? # PCI bus
#pci* at ppb? bus ?
# PCI bridges
#ppb* at pci? dev ? function ? # PCI-PCI bridges
# XXX 'puc's aren't really bridges, but there's no better place for them here
#puc* at pci? dev ? function ? # PCI "universal" comm. cards
# PCI serial interfaces
#com* at puc? port ? # 16x50s on "universal" comm boards
#cy* at pci? dev ? function ? # Cyclades Cyclom-Y serial boards
# PCI parallel printer interfaces
#lpt* at puc? port ? # || ports on "universal" comm boards
# PCI SCSI Controllers and Buses
#adv* at pci? dev ? function ? # AdvanSys 1200[A,B], ULTRA SCSI
#scsibus* at adv?
#adw* at pci? dev ? function ? # AdvanSys 9xxUW SCSI
#scsibus* at adw?
#ahc* at pci? dev ? function ? # Adaptec [23]94x, aic78x0 SCSI controllers
#scsibus* at ahc?
#bha* at pci? dev ? function ? # BusLogic 9xx SCSI
#scsibus* at bha?
#isp* at pci? dev ? function ? # Qlogic ISP 10x0 SCSI controllers
#scsibus* at isp?
#pcscp* at pci? dev ? function ? # AMD 53c974 PCscsi-PCI SCSI
#scsibus* at pcscp?
#siop* at pci? dev ? function ? # NCR 53c8xx SCSI
#scsibus* at siop?
# SCSI devices
#sd* at scsibus? target ? lun ? # SCSI disk drives
#st* at scsibus? target ? lun ? # SCSI tape drives
#cd* at scsibus? target ? lun ? # SCSI CD-ROM drives
#ch* at scsibus? target ? lun ? # SCSI auto-changers
#uk* at scsibus? target ? lun ? # SCSI unknown device
#ss* at scsibus? target ? lun ? # SCSI scanner
# PCI IDE Controllers and Devices
# PCI IDE controllers - see pciide(4) for supported hardware.
# The 0x0001 flag force the driver to use DMA, even if the driver doesn't know
# how to set up DMA modes for this chip. This may work, or may cause
# a machine hang with some controllers.
pciide* at pci? dev ? function ? flags 0x0000
# IDE drives
# Flags are used only with controllers that support DMA operations
# and mode settings (e.g. some pciide controllers)
# The lowest order four bits (rightmost digit) of the flags define the PIO
# mode to use, the next set of four bits the DMA mode and the third set the
# UltraDMA mode. For each set of four bits, the 3 lower bits define the mode
# to use, and the last bit must be 1 for this setting to be used.
# For DMA and UDMA, 0xf (1111) means 'disable'.
# 0x0fac means 'use PIO mode 4, DMA mode 2, disable UltraDMA'.
# (0xc=1100, 0xa=1010, 0xf=1111)
# 0x0000 means "use whatever the drive claims to support".
wd* at pciide? channel ? drive ? flags 0x0000 # the drives themselves
# ATAPI bus support
atapibus* at pciide? channel ?
# ATAPI devices
cd* at atapibus? drive ? flags 0x0000 # ATAPI CD-ROM drives
sd* at atapibus? drive ? flags 0x0000 # ATAPI disk drives
uk* at atapibus? drive ? flags 0x0000 # ATAPI unknown
# PCI network interfaces
de* at pci? dev ? function ? # DC21X4X-based ethernet cards
#en* at pci? dev ? function ? # ENI/Adaptec ATM
#ep* at pci? dev ? function ? # 3C590 ethernet cards
#ex* at pci? dev ? function ? # 3Com 90x[B]
#epic* at pci? dev ? function ? # SMC EPIC/100 Ethernet
#esh* at pci? dev ? function ? # Essential HIPPI card
#fpa* at pci? dev ? function ? # DEC DEFPA FDDI
#fxp* at pci? dev ? function ? # Intel EtherExpress PRO 10+/100B
#le* at pci? dev ? function ? # PCnet-PCI Ethernet
#ne* at pci? dev ? function ? # NE2000 compat ethernet
#ntwoc* at pci? dev ? function ? # Riscom/N2 PCI Sync Serial
#sip* at pci? dev ? function ? # SiS 900 Ethernet
#tl* at pci? dev ? function ? # ThunderLAN-based Ethernet
#tlp* at pci? dev ? function ? # DECchip 21x4x (and clones) Ethernet
#options TLP_MATCH_21040
#options TLP_MATCH_21041
#options TLP_MATCH_21140
#options TLP_MATCH_21142
#vr* at pci? dev ? function ? # VIA Rhine Fast Ethernet
#lmc* at pci? dev ? function ? # Lan Media Corp SSI/HSSI/DS3
#rtk* at pci? dev ? function ? # Realtek 8129/8139
# MII/PHY support
#exphy* at mii? phy ? # 3Com internal PHYs
#icsphy* at mii? phy ? # Integrated Circuit Systems ICS1890
#inphy* at mii? phy ? # Intel 82555 PHYs
#iophy* at mii? phy ? # Intel 82553 PHYs
#lxtphy* at mii? phy ? # Level One LXT-970 PHYs
#nsphy* at mii? phy ? # NS83840 PHYs
#nsphyter* at mii? phy ? # NS83843 PHYs
#qsphy* at mii? phy ? # Quality Semiconductor QS6612 PHYs
#sqphy* at mii? phy ? # Seeq 80220/80221/80223 PHYs
#tlphy* at mii? phy ? # ThunderLAN PHYs
#tqphy* at mii? phy ? # TDK Semiconductor PHYs
#ukphy* at mii? phy ? # generic unknown PHYs
# USB Controller and Devices
# PCI USB controllers
#uhci* at pci? # Universal Host Controller (Intel)
#ohci* at pci? # Open Host Controller
# USB bus support
#usb* at uhci?
#usb* at ohci?
# USB Hubs
#uhub* at usb?
#uhub* at uhub? port ? configuration ? interface ?
# USB Mice
#ums* at uhub? port ? configuration ? interface ?
#wsmouse* at ums?
# USB Keyboards
#ukbd* at uhub? port ? configuration ? interface ?
#wskbd* at ukbd? console ?
# USB Generic HID devices
#uhid* at uhub? port ? configuration ? interface ?
# USB Printer
#ulpt* at uhub? port ? configuration ? interface ?
# USB Modem
#umodem* at uhub? port ? configuration ?
#ucom* at umodem?
# USB Mass Storage
#umass* at uhub? port ? configuration ? interface ?
#atapibus* at umass? channel ?
#scsibus* at umass? channel ?
# USB audio
#uaudio* at uhub? port ? configuration ?
#audio* at uaudio?
# USB Ethernet adapters
#aue* at uhub? port ? # ADMtek AN986 Pegasus based adapters
#cue* at uhub? port ? # CATC USB-EL1201A based adapters
#kue* at uhub? port ? # Kawasaki LSI KL5KUSB101B based adapters
# USB Generic driver
#ugen* at uhub? port ?
# Audio Devices
# PCI audio devices
#eap* at pci? dev ? function ? # Ensoniq AudioPCI
#sv* at pci? dev ? function ? # S3 SonicVibes
# Audio support
#audio* at eap?
#audio* at sv?
vga* at pci?
wsdisplay* at vga? console ?
# ISA bus bridging
pcib* at pci? dev ? function ? # PCI-ISA bridge
isa* at pcib? # ISA bus
# ISA Plug-and-Play bus support
isapnp0 at isa?
# wscons
pckbc0 at isa? # pc keyboard controller
pckbd* at pckbc? # PC keyboard
pms* at pckbc? # PS/2 mouse for wsmouse
pmsi* at pckbc? # PS/2 "Intelli"mouse for wsmouse
wskbd* at pckbd? console ?
wsmouse* at pms?
wsmouse* at pmsi?
pcppi0 at isa?
sysbeep0 at pcppi?
# ISA Plug-and-Play serial interfaces
#com* at isapnp? # Modems and serial boards
# ISA serial interfaces
com0 at isa? port 0x3f8 irq 4 # Standard PC serial ports
com1 at isa? port 0x2f8 irq 3
#com2 at isa? port 0x3e8 irq 9
#com3 at isa? port 0x2e8 irq 10
# ISA parallel printer interfaces
lpt0 at isa? port 0x378 irq 7 # standard PC parallel ports
#lpt1 at isa? port 0x278 irq 5
#lpt2 at isa? port 0x3bc
# ISA floppy
#fdc0 at isa? port 0x3f0 irq 6 drq 2 # standard PC floppy controllers
#fdc1 at isa? port 0x370 irq ? drq ?
#fd* at fdc? drive ? # the drives themselves
# ISA network interface
#ne0 at isa? port 0x280 irq 9
#ne1 at isa? port 0x300 irq 10
# The spkr driver provides a simple tone interface to the built in speaker.
spkr0 at pcppi? # PC speaker
dsrtc0 at isa? port 0x72 # Dallas RTC
# ISA Plug-and-Play audio devices
#ess* at isapnp? # ESS Tech ES1887, ES1888, ES888 audio
#sb* at isapnp? # SoundBlaster-compatible audio
#wss* at isapnp? # Windows Sound System
# OPL[23] FM syntheziers
#opl* at ess?
#opl* at sb?
# Audio support
#audio* at ess?
#audio* at sb?
#audio* at wss?
# MPU 401 UARTs
#mpu* at sb?
# MIDI support
#midi* at pcppi? # MIDI interface to the PC speaker
#midi* at sb? # SB MPU401 port
#midi* at opl? # OPL FM synth
#midi* at mpu? # MPU 401
# Joysticks
# ISA Plug-and-Play joysticks
#joy* at isapnp? # Game ports (usually on audio cards)
# ISA joysticks. Probe is a little strange; add only if you have one.
#joy0 at isa? port 0x201
# Pseudo-Devices
# disk/mass storage pseudo-devices
#pseudo-device ccd 2 # concatenated/striped disk devices
#pseudo-device md 1 # memory disk device (ramdisk)
pseudo-device vnd 4 # disk-like interface to files
# network pseudo-devices
pseudo-device bpfilter 4 # Berkeley packet filter
pseudo-device ipfilter # IP filter (firewall) and NAT
pseudo-device loop # network loopback
pseudo-device ppp 2 # Point-to-Point Protocol
#pseudo-device sl 2 # Serial Line IP
#pseudo-device strip 2 # Starmode Radio IP (Metricom)
pseudo-device tun 2 # network tunneling over tty
# miscellaneous pseudo-devices
pseudo-device pty 64 # pseudo-terminals
#pseudo-device tb 1 # tablet line discipline
#pseudo-device sequencer 1 # MIDI sequencer
pseudo-device rnd # /dev/random and in-kernel generator
#options RND_COM # use "com" randomness as well (BROKEN)
#pseudo-device vcoda 4 # coda minicache <-> venus comm.
# mouse & keyboard multiplexor pseudo-devices
pseudo-device wsmux 2
# for IPv6
#pseudo-device gif 4 # IPv[46] over IPv[46] tunnel (RFC1933)
#pseudo-device faith 1 # IPv[46] tcp relay translation i/f