[vortex] Re: [Problem fixed] 3c59x compile problems + Question regarding 3C905C overruns in multi-switched environment
Jim Matthews
beowulf@cfdlab.larc.nasa.gov
Tue Aug 20 18:15:01 2002
I have found that the overrun issue was due to a BIOS problem on the
Dell Precision 340s, probably related to PCI memory allocation. Upgrading
the BIOS from revision A02 to A03 has fixed the overrun problem. At this
point it appears to be working with the old 3c59x driver so the compile
issues are no longer a big deal. Unless there would still be a benefit in
moving to the latest 3c59x driver...?
Thanks for the help.
--JIM
On Mon, 19 Aug 2002, Jim Matthews wrote:
> Here is the latest followup to this question...
>
> --JIM
>
> Jim Matthews wrote:
>
> Donald Becker wrote:
>
> On Sun, 18 Aug 2002, Jim Matthews wrote:
>
> > I am trying to compile Donald Becker's latest 3c59x driver into the
> > 2.4.18 kernel.
> ...
> > I get 0 overruns in a single switch
> > environment with identical machine hardware and configuration. These
> > overruns are definitely affecting performance, some MPI jobs run as
> much
> > as 3 times faster on the machines w/o overruns.
>
> You should probably move this to the vortex@scyld.com mailing list,
> since it's more of a driver problem than a MPI problem.
>
> Ok, sorry about that.
>
>
>
> > I have made the following changes to the
> > drivers/net/Makefile to include support for pci-scan:
> >
> > 20c20
> > < net_init.o mii.o pci-scan.o
> ...
> > 66c66
> > < obj-$(CONFIG_VORTEX) += 3c59x.o pci-scan.o mii.o
>
> You don't need "mii.o" support for the updated driver set. (The mii.o
> file contains a few bogus support routines -- functions that need not
> and should not be done in the kernel.)
>
>
> I tried it with and without the mii.o and I still got the same errors.
>
>
> > When I compile and link I get lots of undefined references (see
> below).
> > What do I need to be doing in order to resolve these symbol errors?
>
> They look like module version problems.
> What was the compile line for the 3c59x.c driver?
>
>
> gcc -D__KERNEL__ -I/misc/home1/jmatthew/src/linux-2.4.18/include -Wall
> -Wstrict-prototypes -Wno-trigraphs -O2 -fomit-frame-pointer
> -fno-strict-aliasing -fno-common -pipe -mpreferred-stack-boundary=2
> -march=i686 -DKBUILD_BASENAME=3c59x -c -o 3c59x.o 3c59x.c
>
>
>
> > Another question (probably a question for Donald Becker). The reason
> > why I am trying to compile a new driver is because I have been seeing
> > lots of (1%) overruns on Dell precision 340s using the 3C905C card in
> a
> > multi-switched environment.
>
> Rx overruns? That should only happen if the PCI bus is overloaded. The
> 3c905C should be at least as efficient as the 82559, so there must be a
> bus setting that differs between the two. What does the /proc/pci entry
>
> report? (Or you can use 'lspci -v'.)
>
>
> Here is the output from lspci -v. This output is identical between the
> Dells with and without overruns. The only difference is that the cluster
> reporting
> overruns is connected within a multi-switch environment where the other is
> on a single switch. The system configuration is also identical as they
> are
> netbooted off of the same server using the same configuration maintained
> by the same set of scripts and the both load identical kernels. The same
> code is being tested on both clusters.
>
> 00:00.0 Host bridge: Intel Corp. 82850 850 (Tehama) Chipset Host Bridge
> (MCH) (rev 04)
> Subsystem: Dell Computer Corporation: Unknown device 010d
> Flags: bus master, fast devsel, latency 0
> Memory at e8000000 (32-bit, prefetchable) [size=128M]
> Capabilities: [a0] AGP version 2.0
>
> 00:01.0 PCI bridge: Intel Corp. 82850 850 (Tehama) Chipset AGP Bridge (rev
> 04) (prog-if 00 [Normal decode])
> Flags: bus master, 66Mhz, fast devsel, latency 64
> Bus: primary=00, secondary=01, subordinate=01, sec-latency=64
> Memory behind bridge: fc000000-fdffffff
> Prefetchable memory behind bridge: f0000000-f7ffffff
>
> 00:1e.0 PCI bridge: Intel Corp. 82801BA/CA PCI Bridge (rev 04) (prog-if 00
> [Normal decode])
> Flags: bus master, fast devsel, latency 0
> Bus: primary=00, secondary=02, subordinate=02, sec-latency=64
> I/O behind bridge: 0000e000-0000efff
> Memory behind bridge: fe100000-fe2fffff
>
> 00:1f.0 ISA bridge: Intel Corp. 82801BA ISA Bridge (LPC) (rev 04)
> Flags: bus master, medium devsel, latency 0
>
> 00:1f.1 IDE interface: Intel Corp. 82801BA IDE U100 (rev 04) (prog-if 80
> [Master])
> Subsystem: Dell Computer Corporation: Unknown device 010d
> Flags: bus master, medium devsel, latency 0
> I/O ports at ffa0 [size=16]
>
> 00:1f.2 USB Controller: Intel Corp. 82801BA/BAM USB (Hub (rev 04)
> (prog-if 00 [UHCI])
> Subsystem: Dell Computer Corporation: Unknown device 010d
> Flags: bus master, medium devsel, latency 0, IRQ 11
> I/O ports at ff80 [size=32]
>
> 00:1f.3 SMBus: Intel Corp. 82801BA/BAM SMBus (rev 04)
> Subsystem: Dell Computer Corporation: Unknown device 010d
> Flags: medium devsel, IRQ 10
> I/O ports at dcd0 [size=16]
>
> 00:1f.4 USB Controller: Intel Corp. 82801BA/BAM USB (Hub (rev 04)
> (prog-if 00 [UHCI])
> Subsystem: Dell Computer Corporation: Unknown device 010d
> Flags: bus master, medium devsel, latency 0, IRQ 9
> I/O ports at ff60 [size=32]
>
> 00:1f.5 Multimedia audio controller: Intel Corp. 82801BA/BAM AC'97 Audio
> (rev 04)
> Subsystem: Dell Computer Corporation: Unknown device 010d
> Flags: bus master, medium devsel, latency 0, IRQ 10
> I/O ports at d800 [size=256]
> I/O ports at dc40 [size=64]
>
> 01:00.0 VGA compatible controller: nVidia Corporation NV11 [GeForce2 MXR]
> (rev b2) (prog-if 00 [VGA])
> Subsystem: nVidia Corporation: Unknown device 0070
> Flags: 66Mhz, medium devsel, IRQ 11
> Memory at fc000000 (32-bit, non-prefetchable) [size=16M]
> Memory at f0000000 (32-bit, prefetchable) [size=128M]
> Expansion ROM at 80000000 [disabled] [size=64K]
> Capabilities: [60] Power Management version 2
> Capabilities: [44] AGP version 2.0
>
> 02:0c.0 Ethernet controller: 3Com Corporation 3c905C-TX/TX-M [Tornado]
> (rev 78)
> Subsystem: Dell Computer Corporation: Unknown device 010d
> Flags: bus master, medium devsel, latency 64, IRQ 11
> I/O ports at ec80 [size=128]
> Memory at fe1ffc00 (32-bit, non-prefetchable) [size=128]
> Expansion ROM at fe200000 [disabled] [size=128K]
> Capabilities: [dc] Power Management version 2
>
>
>
>
>
> --
>
> -----------------------------------------------------------------------
> James W. Matthews - UNIX System Administration / Beowulf Cluster Design
> Raytheon Technical Services Company - NASA Langley Research Center
> MS 128 - 18E West Taylor Street - Hampton, VA 23681
> E-Mail: J.W.Matthews@LaRC.NASA.GOV - Phone: (757) 864-5259
> -----------------------------------------------------------------------
>
> _______________________________________________
> vortex mailing list
> vortex@scyld.com
> http://www.scyld.com/mailman/listinfo/vortex
>