Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 4 Apr 2001 03:52:41 -0400 (EDT)
From:      "T. William Wells" <bill@twwells.com>
To:        stable@freebsd.org
Subject:   possible problem with dc driver
Message-ID:  <E14ki5p-000KKo-00@twwells.com>

next in thread | raw e-mail | index | archive | help
I noticed that my network performance seemed sluggish.  So, today
I decided to do some real testing.

Machine G:

CPU: AMD-K6(tm) 3D processor (350.80-MHz 586-class CPU)
  Origin = "AuthenticAMD"  Id = 0x580  Stepping = 0
  Features=0x8001bf<FPU,VME,DE,PSE,TSC,MSR,MCE,CX8,MMX>
  AMD Features=0x80000800<SYSCALL,3DNow!>
dc0: <LC82C115 PNIC II 10/100BaseTX> port 0xd800-0xd8ff mem 0xdf000000-0xdf0000ff irq 10 at device 10.0 on pci0
dc0: Ethernet address: 00:a0:cc:e2:ff:24
miibus0: <MII bus> on dc0
dcphy0: <Intel 21143 NWAY media interface> on miibus0
dcphy0:  10baseT, 10baseT-FDX, 100baseTX, 100baseTX-FDX, auto

Machine P:

CPU: AMD-K5(tm) Processor (116.93-MHz 586-class CPU)
  Origin = "AuthenticAMD"  Id = 0x524  Stepping = 4
  Features=0x21bf<FPU,VME,DE,PSE,TSC,MSR,MCE,CX8,PGE>
  AMD Features=0x0
dc0: <ADMtek AN985 10/100BaseTX> port 0xf000-0xf0ff mem 0xffae7c00-0xffae7fff irq 11 at device 13.0 on pci0
dc0: Ethernet address: 00:03:6d:19:3b:ec
miibus0: <MII bus> on dc0
ukphy0: <Generic IEEE 802.3u media interface> on miibus0
ukphy0:  10baseT, 10baseT-FDX, 100baseTX, 100baseTX-FDX, auto

Copying a big file from P to G worked without trouble and at a
reasonable speed (6.3mbps). But copying from G to P was slow as
molasses -- also in the past I have had lockups on P when
receiving lots of data on it. So I decided to concentrate there.

What I did was set up tcpdump on both ends and did an scp from a
file on G to a file on P. I noticed in the tcpdump output that
every packet that P saw, G also saw. However, there were packets
that G saw that P did not and all of those were packets sent by G.

For amusement, I tried swapping P's cable for another cable. No
effect. I have another machine on the network, a '486. Testing
with it established that the problem isn't with G.

Clearly, P is losing packets at some point from the ethernet card
inward. Given that it also sometimes hangs on receipt of lots of
data, I'm betting on a driver bug. Though, it's possible that
there is a hardware problem that causes the packet loss which also
triggers a driver bug that wouldn't happen with good hardware.

Anyway, this is as far as I've got and I don't know where to
proceed from here. I've appended the kernel configuration of P and
its dmesg.boot.

Copyright (c) 1992-2001 The FreeBSD Project.
Copyright (c) 1979, 1980, 1983, 1986, 1988, 1989, 1991, 1992, 1993, 1994
	The Regents of the University of California. All rights reserved.
FreeBSD 4.3-RC #3: Tue Apr  3 00:37:56 EDT 2001
    root@twwells.com:/usr/obj/usr/src/sys/P
Timecounter "i8254"  frequency 1193182 Hz
Timecounter "TSC"  frequency 116933696 Hz
CPU: AMD-K5(tm) Processor (116.93-MHz 586-class CPU)
  Origin = "AuthenticAMD"  Id = 0x524  Stepping = 4
  Features=0x21bf<FPU,VME,DE,PSE,TSC,MSR,MCE,CX8,PGE>
  AMD Features=0x0
real memory  = 29360128 (28672K bytes)
avail memory = 25690112 (25088K bytes)
Preloaded elf kernel "kernel" at 0xc02f1000.
Preloaded userconfig_script "/boot/kernel.conf" at 0xc02f109c.
npx0: <math processor> on motherboard
npx0: INT 16 interface
pcib0: <Host to PCI bridge> on motherboard
pci0: <PCI bus> on pcib0
isab0: <SiS 85c503 PCI-ISA bridge> at device 1.0 on pci0
isa0: <ISA bus> on isab0
atapci0: <SiS 5591 ATA33 controller> port 0x4000-0x400f,0x7f1fb9f4-0x7f1fb9f7,0xc7ff02f8-0xc7ff02ff,0xeafa3ee0-0xeafa3ee3,0x90eefdf8-0x90eefdff irq 0 at device 1.1 on pci0
ata0: at 0x1f0 irq 14 on atapci0
ata1: at 0x170 irq 15 on atapci0
dc0: <ADMtek AN985 10/100BaseTX> port 0xf000-0xf0ff mem 0xffae7c00-0xffae7fff irq 11 at device 13.0 on pci0
dc0: Ethernet address: 00:03:6d:19:3b:ec
miibus0: <MII bus> on dc0
ukphy0: <Generic IEEE 802.3u media interface> on miibus0
ukphy0:  10baseT, 10baseT-FDX, 100baseTX, 100baseTX-FDX, auto
pci0: <SiS 5597/98 SVGA controller> at 20.0 irq 0
pca0 at port 0x40 on isa0
atkbdc0: <Keyboard controller (i8042)> at port 0x60,0x64 on isa0
atkbd0: <AT Keyboard> flags 0x1 irq 1 on atkbdc0
kbd0 at atkbd0
vga0: <Generic ISA VGA> at port 0x3c0-0x3df iomem 0xa0000-0xbffff on isa0
sc0: <System console> at flags 0x100 on isa0
sc0: VGA <16 virtual consoles, flags=0x300>
sio0 at port 0x3f8-0x3ff irq 4 flags 0x10 on isa0
sio0: type 16550A
sio1 at port 0x2f8-0x2ff irq 3 on isa0
sio1: type 16550A
ppc0: <Parallel port> at port 0x378-0x37f irq 7 on isa0
ppc0: Generic chipset (NIBBLE-only) in COMPATIBLE mode
ppi0: <Parallel I/O> on ppbus0
plip0: <PLIP network interface> on ppbus0
lpt0: <Printer> on ppbus0
lpt0: Interrupt-driven port
fdc0: <NEC 765 or clone> at port 0x3f0-0x3f5,0x3f7 irq 6 drq 2 on isa0
fd0: <1440-KB 3.5" drive> on fdc0 drive 0
fd1: <1200-KB 5.25" drive> on fdc0 drive 1
pcm0: <CMI8330> at port 0x530-0x537,0x388-0x38f irq 5 drq 0 on isa0
IP packet filtering initialized, divert enabled, rule-based forwarding disabled, default to deny, logging limited to 1000 packets/entry by default
DUMMYNET initialized (010124)
ad0: 6149MB <WDC AC26400B> [13328/15/63] at ata0-master UDMA33
acd0: CDROM <BCD-24XH CD-ROM> at ata1-master using PIO4

machine         i386
cpu             I486_CPU
cpu             I586_CPU
cpu             I686_CPU
ident           P
maxusers        64
options         CD9660                  #ISO 9660 Filesystem
options         CD9660_ROOT             #CD-ROM usable as root, CD9660 required
options         COMPAT_43               #Compatible with BSD 4.3 [KEEP THIS!]
options         DUMMYNET
options         FFS                     #Berkeley Fast Filesystem
options         FFS_ROOT                #FFS usable as root device [keep this!]
options         ICMP_BANDLIM            #Rate limit bad replies
options         INCLUDE_CONFIG_FILE     # Include this file in kernel
options         INET                    #InterNETworking
options         IPDIVERT                #divert sockets
options         IPFIREWALL              #firewall
options         IPFIREWALL_VERBOSE      #print information about dropped packets
options         IPFIREWALL_VERBOSE_LIMIT=1000 #limit verbosity
options         IPSTEALTH               #support for stealth forwarding
options         KBD_INSTALL_CDEV        # install a CDEV entry in /dev
options         KTRACE                  #kernel tracing
options         NO_F00F_HACK            #Not a Pentium!
options         P1003_1B                #Posix P1003_1B real-time extensions
options         PROCFS                  #Process filesystem
options         SCSI_DELAY=2000         #Delay (in ms) before probing SCSI
options         SOFTUPDATES             #Enable FFS soft updates support
options         SYSVMSG                 #SYSV-style message queues
options         SYSVSEM                 #SYSV-style semaphores
options         SYSVSHM                 #SYSV-style shared memory
options         UCONSOLE                #Allow users to grab the console
options         USERCONFIG              #boot -c editor
options         VISUAL_USERCONFIG       #visual boot -c editor
options         _KPOSIX_PRIORITY_SCHEDULING
device          isa
device          pci
device          npx0    at nexus? port IO_NPX irq 13
device          pca0 at isa? port IO_TIMER1
device          atkbdc0 at isa? port IO_KBD
device          atkbd0  at atkbdc? irq 1 flags 0x1
device          psm0    at atkbdc? irq 12
device          vga0    at isa?
device          sc0     at isa? flags 0x100
options         SC_KERNEL_CONS_ATTR="(FG_WHITE|BG_BLACK)"
options         SC_KERNEL_CONS_REV_ATTR="(FG_YELLOW|BG_BLACK)"
options         SC_NORM_ATTR="(FG_WHITE|BG_BLUE)"
options         SC_NORM_REV_ATTR="(FG_YELLOW|BG_BLUE)"
device          sio0    at isa? port IO_COM1 flags 0x10 irq 4
device          sio1    at isa? port IO_COM2 irq 3
device          ppc0    at isa? irq 7
device          ppbus           # Parallel port bus (required)
device          lpt             # Printer
device          plip            # TCP/IP over parallel
device          ppi             # Parallel port interface device
device          fdc0    at isa? port IO_FD1 irq 6 drq 2
device          fd0     at fdc0 drive 0
device          fd1     at fdc0 drive 1
device          ata0    at isa? port IO_WD1 irq 14
device          ata1    at isa? port IO_WD2 irq 15
device          ata
device          atadisk                 # ATA disk drives
device          atapicd                 # ATAPI CDROM drives
device          atapifd                 # ATAPI floppy drives
device          atapist                 # ATAPI tape drives
options         ATA_STATIC_ID           #Static device numbering
device          miibus          # MII bus support
device          dc              # DEC/Intel 21143 and various workalikes
device          pcm
pseudo-device   bpf     4       # Berkeley packet filter
pseudo-device   ether           # Ethernet support
pseudo-device   gzip            #Exec gzipped a.out's
pseudo-device   loop            # Network loopback
pseudo-device   pty     64      # Pseudo-ttys (telnet etc)
pseudo-device   speaker         #Play IBM BASIC-style noises out your speaker
pseudo-device   splash          # splash screen/screen saver
pseudo-device   tun             # Packet tunnel.
pseudo-device   vn              #Vnode driver (turns a file into a device)

To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-stable" in the body of the message




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?E14ki5p-000KKo-00>