Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 66761 - sundance.ko in gentoo-dev-sources-2.6.8-gentoo-r6 fails when using D-Link DFE-580TX NIC
Summary: sundance.ko in gentoo-dev-sources-2.6.8-gentoo-r6 fails when using D-Link DFE...
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: [OLD] Core system (show other bugs)
Hardware: x86 Linux
: High major (vote)
Assignee: Gentoo Kernel Bug Wranglers and Kernel Maintainers
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2004-10-08 07:07 UTC by Charlie Gehlin
Modified: 2004-10-22 17:04 UTC (History)
1 user (show)

See Also:
Package list:
Runtime testing required: ---


Attachments
Diff between sundance.c in 2.6.7-gentoo-r11 and 2.6.8-gentoo-r6 (sundance.c.diff,2.59 KB, patch)
2004-10-13 11:34 UTC, Charlie Gehlin
Details | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Charlie Gehlin 2004-10-08 07:07:38 UTC
'modprobe sundance' works with gentoo-dev-sources-2.6.7-gentoo-r11 but not in gentoo-dev-sources-2.6.8-gentoo-r6 when using D-Link's DFE-580TX 4-port server-card. Kernel-config are the same (see diff).

Reproducible: Always
Steps to Reproduce:
1.modprobe mii
2.modprobe sundance
3.

Actual Results:  
dmesg entries using gentoo-dev-sources-2.6.8-gentoo-r6 :
sundance.c:v1.01+LK1.09a 10-Jul-2003  Written by Donald Becker
  http://www.scyld.com/network/sundance.html
ACPI: PCI interrupt 0000:05:04.0[A] -> GSI 23 (level, low) -> IRQ 225
eth1: D-Link DFE-580TX 4 port Server Adapter at 0xf8f8b000, 6f:ef:6f:ef:6f:ef, 
IRQ 225.
eth1: No MII transceiver found, aborting.  ASIC status f000ef6f
ACPI: PCI interrupt 0000:05:05.0[A] -> GSI 19 (level, low) -> IRQ 177
eth1: D-Link DFE-580TX 4 port Server Adapter at 0xf8f8b000, 6f:ef:6f:ef:6f:ef, 
IRQ 177.
eth1: No MII transceiver found, aborting.  ASIC status f000ef6f
ACPI: PCI interrupt 0000:05:06.0[A] -> GSI 17 (level, low) -> IRQ 233
eth1: D-Link DFE-580TX 4 port Server Adapter at 0xf8f8b000, 6f:ef:6f:ef:6f:ef, 
IRQ 233.
eth1: No MII transceiver found, aborting.  ASIC status f000ef6f
ACPI: PCI interrupt 0000:05:07.0[A] -> GSI 18 (level, low) -> IRQ 185
eth1: D-Link DFE-580TX 4 port Server Adapter at 0xf8f8b000, 6f:ef:6f:ef:6f:ef, 
IRQ 185.
eth1: No MII transceiver found, aborting.  ASIC status f000ef6f


Expected Results:  
dmesg entries using gentoo-dev-sources-2.6.7-gentoo-r11 :
sundance.c:v1.01+LK1.09a 10-Jul-2003  Written by Donald Becker
  http://www.scyld.com/network/sundance.html
eth1: D-Link DFE-580TX 4 port Server Adapter at 0x8800, 00:0d:88:c5:f9:d0, IRQ 
193.
eth1: MII PHY found at address 1, status 0x7809 advertising 01e1.
eth2: D-Link DFE-580TX 4 port Server Adapter at 0x8400, 00:0d:88:c5:f9:d1, IRQ 
177.
eth2: MII PHY found at address 1, status 0x7809 advertising 01e1.
eth3: D-Link DFE-580TX 4 port Server Adapter at 0x8000, 00:0d:88:c5:f9:d2, IRQ 
201.
eth3: MII PHY found at address 1, status 0x7809 advertising 01e1.
eth4: D-Link DFE-580TX 4 port Server Adapter at 0x7800, 00:0d:88:c5:f9:d3, IRQ 
185.
eth4: MII PHY found at address 1, status 0x7809 advertising 01e1.


emerge info:
Portage 2.0.51_rc7 (default-x86-2004.2, gcc-3.3.4, glibc-2.3.4.20040808-r0, 
2.6.8-gentoo-r6 i686)
=================================================================
System uname: 2.6.8-gentoo-r6 i686 Intel(R) Xeon(TM) CPU 3.06GHz
Gentoo Base System version 1.5.3
Autoconf: sys-devel/autoconf-2.59-r4
Automake: sys-devel/automake-1.8.5-r1
Binutils: sys-devel/binutils-2.15.90.0.1.1-r3
Headers:  sys-kernel/linux-headers-2.4.22
Libtools: sys-devel/libtool-1.5.2-r5
ACCEPT_KEYWORDS="x86 ~x86"
AUTOCLEAN="yes"
CFLAGS="-O3 -march=pentium4 -mfpmath=sse -mmmx -msse -msse2 -mno-sse3 -mno-
3dnow -funroll-loops -pipe"
CHOST="i686-pc-linux-gnu"
COMPILER=""
CONFIG_PROTECT="/etc /usr/X11R6/lib/X11/xkb /usr/kde/2/share/config /usr/kde/3/s
hare/config /usr/share/config /var/bind /var/qmail/control"
CONFIG_PROTECT_MASK="/etc/afs/C /etc/afs/afsws /etc/gconf /etc/terminfo /etc/env
.d"
CXXFLAGS="-O3 -march=pentium4 -mfpmath=sse -mmmx -msse -msse2 -mno-sse3 -mno-
3dnow -funroll-loops -pipe"
DISTDIR="/usr/portage/distfiles"
FEATURES="autoaddcvs buildpkg ccache distlocks sandbox"
GENTOO_MIRRORS="http://ds.thn.htu.se/linux/gentoo 
http://mirror.pudas.net/gentoo ftp://mirror.pudas.net/gentoo"
MAKEOPTS="-j5"
PKGDIR="/usr/portage/packages"
PORTAGE_TMPDIR="/var/tmp"
PORTDIR="/usr/portage"
PORTDIR_OVERLAY="/usr/local/portage"
SYNC="rsync://sparcux.lmera.ericsson.se/gentoo-portage"
USE="X X509 acpi afs apache2 avi bcmath berkdb bitmap-fonts bzlib cdr cpdflib 
crypt cups curl curlwrappers dba dio encode esd exif foomaticdb ftp gd gd-
external gdbm gif gmp gnome gnutls gtk gtk2 imagemagick imap imlib ipv6 
ithreads java javascript jpeg kde kerberos krb4 ldap libg++ libwww lm_sensors 
lzw-tiff mad mailwrapper md5sum mikmod mime mmap mmx mng motif mozilla mpeg 
mysql mysqli nas ncurses nls nocardbus oggvorbis pam pcre pdflib perl php 
plotutils png pnp python qt readline samba sasl sdl shared sharedmem slang snmp 
sockets sse ssl szip tcltk tcpd threads tiff truetype unicode usb vhosts vim-
with-x wmf x86 xml2 zlib"

diff /usr/src/linux-2.6.7-gentoo-r11/.config /usr/src/linux-2.6.8-gentoo-
r6/.config:
14d13
< # CONFIG_STANDALONE is not set
32a32
> # CONFIG_KALLSYMS_EXTRA_PASS is not set
96d95
< # CONFIG_HPET_EMULATE_RTC is not set
189c188
< CONFIG_PCI_USE_VECTOR=y
---
> CONFIG_PCI_MSI=y
237a237,238
> # CONFIG_STANDALONE is not set
> # CONFIG_PREVENT_FIRMWARE_BUILD is not set
282c283
< # CONFIG_BLK_DEV_CARMEL is not set
---
> # CONFIG_BLK_DEV_SX8 is not set
296a298
> # CONFIG_BLK_DEV_IDE_SATA is not set
385a388
> # CONFIG_SCSI_3W_9XXX is not set
405c408,409
< # CONFIG_SCSI_MEGARAID is not set
---
> # CONFIG_MEGARAID_NEWGEN is not set
> # CONFIG_MEGARAID_LEGACY is not set
468a473,478
> CONFIG_DM_SNAPSHOT=m
> CONFIG_DM_MIRROR=m
> CONFIG_DM_ZERO=m
> CONFIG_BLK_DEV_DM_BBR=m
> CONFIG_DM_MULTIPATH=m
> CONFIG_DM_FLAKEY=m
584a595,596
> CONFIG_IP_NF_MATCH_ADDRTYPE=m
> CONFIG_IP_NF_MATCH_REALM=m
651d662
< # CONFIG_NET_FASTROUTE is not set
657a669,671
> CONFIG_NET_SCH_CLK_JIFFIES=y
> # CONFIG_NET_SCH_CLK_GETTIMEOFDAY is not set
> # CONFIG_NET_SCH_CLK_CPU is not set
661d674
< CONFIG_NET_SCH_CSZ=m
669c682
< CONFIG_NET_SCH_DELAY=m
---
> CONFIG_NET_SCH_NETEM=m
678a692,693
> CONFIG_CLS_U32_PERF=y
> # CONFIG_NET_CLS_IND is not set
680a696,697
> CONFIG_NET_CLS_ACT=y
> # CONFIG_NET_ACT_POLICE is not set
770c787
< # CONFIG_SUNDANCE_MMIO is not set
---
> CONFIG_SUNDANCE_MMIO=y
773c790,791
< # CONFIG_VIA_RHINE_MMIO is not set
---
> CONFIG_VIA_RHINE_MMIO=y
> # CONFIG_VIA_VELOCITY is not set
963a982
> # CONFIG_HPET is not set
1008a1028,1029
> CONFIG_SENSORS_ADM1025=m
> CONFIG_SENSORS_ADM1031=m
1014a1036
> CONFIG_SENSORS_LM77=m
1038a1061,1065
> # Dallas's 1-wire bus
> #
> # CONFIG_W1 is not set
>
> #
1071a1099
> # CONFIG_VIDEO_OVCAMCHIP is not set
1190a1219
> # CONFIG_USB_STORAGE_RW_DETECT is not set
1233a1263
> # CONFIG_USB_SN9C102 is not set
1235d1264
< # CONFIG_USB_W9968CF is not set
1318a1348
> CONFIG_UDF_NLS=y
1325a1356,1357
> CONFIG_FAT_DEFAULT_CODEPAGE=850
> CONFIG_FAT_DEFAULT_IOCHARSET="iso8859-1"
1343d1374
< # CONFIG_SUPERMOUNT is not set
1386a1418,1419
> CONFIG_CIFS_XATTR=y
> # CONFIG_CIFS_POSIX is not set
1417d1449
< # CONFIG_NEC98_PARTITION is not set
1450a1483
> CONFIG_NLS_ASCII=m
1502c1535
< CONFIG_CRYPTO_AES=m
---
> CONFIG_CRYPTO_AES_586=m
1504a1538
> CONFIG_CRYPTO_TEA=m
1505a1540
> CONFIG_CRYPTO_KHAZAD=m
1513a1549
> CONFIG_CRC_CCITT=m
1522d1557
< CONFIG_X86_STD_RESOURCES=y

diff /usr/src/linux-2.6.7-gentoo-r11/drivers/net/sundance.c /usr/src/linux-
2.6.8-gentoo-r6/drivers/net/sundance.c:
151,159d150
< #ifndef __KERNEL__
< #define __KERNEL__
< #endif
< #if !defined(__OPTIMIZE__)
< #warning  You must compile this file with the correct options!
< #warning  See the last lines of the source file.
< #error You must compile this driver with "-O".
< #endif
<
312c303
<       {0,},                   /* 0 terminated list. */
---
>       {NULL,},                        /* 0 terminated list. */
1042c1033
<               np->rx_skbuff[i] = 0;
---
>               np->rx_skbuff[i] = NULL;
1061c1052
<               np->tx_skbuff[i] = 0;
---
>               np->tx_skbuff[i] = NULL;
1165c1156
<                       np->tx_skbuff[i] = 0;
---
>                       np->tx_skbuff[i] = NULL;
1268c1259
<                               np->tx_skbuff[entry] = 0;
---
>                               np->tx_skbuff[entry] = NULL;
1287c1278
<                               np->tx_skbuff[entry] = 0;
---
>                               np->tx_skbuff[entry] = NULL;
1765c1756
<                       np->rx_skbuff[i] = 0;
---
>                       np->rx_skbuff[i] = NULL;
1775c1766
<                       np->tx_skbuff[i] = 0;
---
>                       np->tx_skbuff[i] = NULL;

Probably even more files that diffs...
Comment 1 Daniel Drake (RETIRED) gentoo-dev 2004-10-08 09:53:52 UTC
Looks like an upstream issue. You could try replacing the 2.6.8 sundance.c with the working one from 2.6.7 and see if that helps after a recompile.

You could also test with kernel 2.6.9-rc3 and see if the issue still remains upstream.
Comment 2 Charlie Gehlin 2004-10-12 04:03:33 UTC
Tried with 2.6.9-rc4 as it was latest available on kernel.org.
sundance.c doestn't diff and the result when modprobing is the same.

dmesg entries with 2.6.9-rc4:
sundance.c:v1.01+LK1.09a 10-Jul-2003  Written by Donald Becker
  http://www.scyld.com/network/sundance.html
ACPI: PCI interrupt 0000:04:04.0[A] -> GSI 24 (level, low) -> IRQ 209
eth1: D-Link DFE-580TX 4 port Server Adapter at 0xf8d19000, 6f:ef:6f:ef:6f:ef, IRQ 209.
eth1: No MII transceiver found, aborting.  ASIC status f000ef6f
ACPI: PCI interrupt 0000:04:05.0[A] -> GSI 25 (level, low) -> IRQ 217
eth1: D-Link DFE-580TX 4 port Server Adapter at 0xf8d19000, 6f:ef:6f:ef:6f:ef, IRQ 217.
eth1: No MII transceiver found, aborting.  ASIC status f000ef6f
ACPI: PCI interrupt 0000:04:06.0[A] -> GSI 26 (level, low) -> IRQ 225
eth1: D-Link DFE-580TX 4 port Server Adapter at 0xf8d19000, 6f:ef:6f:ef:6f:ef, IRQ 225.
eth1: No MII transceiver found, aborting.  ASIC status f000ef6f
ACPI: PCI interrupt 0000:04:07.0[A] -> GSI 27 (level, low) -> IRQ 233
eth1: D-Link DFE-580TX 4 port Server Adapter at 0xf8d19000, 6f:ef:6f:ef:6f:ef, IRQ 233.
eth1: No MII transceiver found, aborting.  ASIC status f000ef6f

Is it possible to apply same sundance.c-patch as in 2.6.7-gentoo-r11 and perhaps release a 2.6.8-gentoo-r7 ?
Comment 3 Charlie Gehlin 2004-10-12 04:45:44 UTC
Hmmm forgot the new grub-entry.... 
With the _right_ kernel booted i actually get this in dmesg:
sundance.c:v1.01+LK1.09a 10-Jul-2003  Written by Donald Becker
  http://www.scyld.com/network/sundance.html
ACPI: PCI interrupt 0000:04:04.0[A] -> GSI 24 (level, low) -> IRQ 24
eth1: D-Link DFE-580TX 4 port Server Adapter at 0xa800, 00:0d:88:c5:f9:8c, IRQ 24.
eth1: MII PHY found at address 1, status 0x7809 advertising 01e1.
ACPI: PCI interrupt 0000:04:05.0[A] -> GSI 25 (level, low) -> IRQ 25
eth2: D-Link DFE-580TX 4 port Server Adapter at 0xa400, 00:0d:88:c5:f9:8d, IRQ 25.
eth2: MII PHY found at address 1, status 0x7809 advertising 01e1.
ACPI: PCI interrupt 0000:04:06.0[A] -> GSI 26 (level, low) -> IRQ 26
eth3: D-Link DFE-580TX 4 port Server Adapter at 0xa000, 00:0d:88:c5:f9:8e, IRQ 26.
eth3: MII PHY found at address 1, status 0x7809 advertising 01e1.
ACPI: PCI interrupt 0000:04:07.0[A] -> GSI 27 (level, low) -> IRQ 27
eth4: D-Link DFE-580TX 4 port Server Adapter at 0x9800, 00:0d:88:c5:f9:8f, IRQ 27.
eth4: MII PHY found at address 1, status 0x7809 advertising 01e1.

The weird thing is that sundance.c doesn't diff anything at all...
So how long before gentoo-dev-sources-2.6.9-rc4 goes ~x86 in portage? :)

/
Comment 4 Charlie Gehlin 2004-10-12 04:45:44 UTC
Hmmm forgot the new grub-entry.... 
With the _right_ kernel booted i actually get this in dmesg:
sundance.c:v1.01+LK1.09a 10-Jul-2003  Written by Donald Becker
  http://www.scyld.com/network/sundance.html
ACPI: PCI interrupt 0000:04:04.0[A] -> GSI 24 (level, low) -> IRQ 24
eth1: D-Link DFE-580TX 4 port Server Adapter at 0xa800, 00:0d:88:c5:f9:8c, IRQ 24.
eth1: MII PHY found at address 1, status 0x7809 advertising 01e1.
ACPI: PCI interrupt 0000:04:05.0[A] -> GSI 25 (level, low) -> IRQ 25
eth2: D-Link DFE-580TX 4 port Server Adapter at 0xa400, 00:0d:88:c5:f9:8d, IRQ 25.
eth2: MII PHY found at address 1, status 0x7809 advertising 01e1.
ACPI: PCI interrupt 0000:04:06.0[A] -> GSI 26 (level, low) -> IRQ 26
eth3: D-Link DFE-580TX 4 port Server Adapter at 0xa000, 00:0d:88:c5:f9:8e, IRQ 26.
eth3: MII PHY found at address 1, status 0x7809 advertising 01e1.
ACPI: PCI interrupt 0000:04:07.0[A] -> GSI 27 (level, low) -> IRQ 27
eth4: D-Link DFE-580TX 4 port Server Adapter at 0x9800, 00:0d:88:c5:f9:8f, IRQ 27.
eth4: MII PHY found at address 1, status 0x7809 advertising 01e1.

The weird thing is that sundance.c doesn't diff anything at all...
So how long before gentoo-dev-sources-2.6.9-rc4 goes ~x86 in portage? :)

/©harlie
Comment 5 Daniel Drake (RETIRED) gentoo-dev 2004-10-12 05:05:27 UTC
Could you please try applying this patch to 2.6.8 and see if it helps:

http://linux.bkbits.net:8080/linux-2.6/patch@1.1046.487.1?nav=cset@1.1046.487.1
Comment 6 Charlie Gehlin 2004-10-12 06:07:05 UTC
Thanks for your responce Daniel.
In kernel gentoo-dev-sources-2.6.8-gentoo-r6 (in which I have this problem) the patch you supplied has already been applied. Same for linux-2.6.8 (vanilla, i believe since I just tared up the source from /usr/portage/distfiles/linux-2.6.8.tar.bz2 that I got from emerging gentoo-dev-sources), the path is already applied...
I can't find anything in the changelog that indicates any patch on this driver:
#fgrep -i sundance /usr/portage/sys-kernel/gentoo-dev-sources/ChangeLog
#fgrep -i d-link /usr/portage/sys-kernel/gentoo-dev-sources/ChangeLog
#fgrep -i 580 /usr/portage/sys-kernel/gentoo-dev-sources/ChangeLog

/
Comment 7 Charlie Gehlin 2004-10-12 06:07:05 UTC
Thanks for your responce Daniel.
In kernel gentoo-dev-sources-2.6.8-gentoo-r6 (in which I have this problem) the patch you supplied has already been applied. Same for linux-2.6.8 (vanilla, i believe since I just tared up the source from /usr/portage/distfiles/linux-2.6.8.tar.bz2 that I got from emerging gentoo-dev-sources), the path is already applied...
I can't find anything in the changelog that indicates any patch on this driver:
#fgrep -i sundance /usr/portage/sys-kernel/gentoo-dev-sources/ChangeLog
#fgrep -i d-link /usr/portage/sys-kernel/gentoo-dev-sources/ChangeLog
#fgrep -i 580 /usr/portage/sys-kernel/gentoo-dev-sources/ChangeLog

/©harlie
Comment 8 Daniel Drake (RETIRED) gentoo-dev 2004-10-12 09:39:27 UTC
Yes, we have never patched that driver (or at least not recently). Also I didn't check that patch, it was obviously merged before 2.6.8 came out.

The messages you have posted indicate its a problem relating to MII, which is an area of shared code between various network drivers - so its unlikely to be a problem relating to the sundance code (as we've found out), but actually somewhere deeper in the networking subsystem.

I'm happy that its been fixed in 2.6.9-rc but would be even happier if we could isolate the actual fix for this problem so that we could add it to gentoo-dev-sources 2.6.8. The 2004.3 livecd will be running this kernel and it would be nice if people with this network hardware could actually use it.

There won't be a gentoo-dev-sources-2.6.9-rc4, but I have already started working on a patchset based on this kernel. So, we'll be quick off the mark with g-d-s-2.6.9 when 2.6.9 is released in a weeks time.
Comment 9 Charlie Gehlin 2004-10-13 06:59:46 UTC
Couldn't agree with you more about the 2004.3-relase....
However, I looked at the page http://www.scyld.com/ethercard_drivers.html which I believe delivers some of the drivers residing in linux-`uname -r`drivers/net -directory. I downloaded the sources from Scyld and theese files differs when running command:

for file in `ls /download/network/`;do   echo "--File: $file--";  diff -q /download/network/$file /usr/src/linux-2.6.8-gentoo-r6/drivers/net/$file;  echo -e "----\n\n"; done
-------------------------------------------------------------

--File: 3c59x.c--
Files /download/network/3c59x.c and /usr/src/linux-2.6.8-gentoo-r6/drivers/net/3c59x.c differ
----

--File: Makefile--
Files /download/network/Makefile and /usr/src/linux-2.6.8-gentoo-r6/drivers/net/Makefile differ
----

--File: cb_shim.c--
diff: /usr/src/linux-2.6.8-gentoo-r6/drivers/net/cb_shim.c: No such file or directory
----

--File: eepro100.c--
Files /download/network/eepro100.c and /usr/src/linux-2.6.8-gentoo-r6/drivers/net/eepro100.c differ
----

--File: epic100.c--
Files /download/network/epic100.c and /usr/src/linux-2.6.8-gentoo-r6/drivers/net/epic100.c differ
----

--File: hamachi.c--
Files /download/network/hamachi.c and /usr/src/linux-2.6.8-gentoo-r6/drivers/net/hamachi.c differ
----

--File: intel-gige.c--
diff: /usr/src/linux-2.6.8-gentoo-r6/drivers/net/intel-gige.c: No such file or directory
----

--File: kern_compat.h--
----

--File: myson803.c--
diff: /usr/src/linux-2.6.8-gentoo-r6/drivers/net/myson803.c: No such file or directory
----

--File: natsemi.c--
Files /download/network/natsemi.c and /usr/src/linux-2.6.8-gentoo-r6/drivers/net/natsemi.c differ
----

--File: ne2k-pci.c--
Files /download/network/ne2k-pci.c and /usr/src/linux-2.6.8-gentoo-r6/drivers/net/ne2k-pci.c differ
----

--File: ns820.c--
diff: /usr/src/linux-2.6.8-gentoo-r6/drivers/net/ns820.c: No such file or directory
----

--File: pci-scan.c--
----

--File: pci-scan.h--
----

--File: pci-serial.c--
diff: /usr/src/linux-2.6.8-gentoo-r6/drivers/net/pci-serial.c: No such file or directory
----

--File: pci-skeleton.c--
Files /download/network/pci-skeleton.c and /usr/src/linux-2.6.8-gentoo-r6/drivers/net/pci-skeleton.c differ
----

--File: rtl8139.c--
diff: /usr/src/linux-2.6.8-gentoo-r6/drivers/net/rtl8139.c: No such file or directory
----

--File: starfire.c--
Files /download/network/starfire.c and /usr/src/linux-2.6.8-gentoo-r6/drivers/net/starfire.c differ
----

--File: sundance.c--
Files /download/network/sundance.c and /usr/src/linux-2.6.8-gentoo-r6/drivers/net/sundance.c differ
----

--File: tulip.c--
diff: /usr/src/linux-2.6.8-gentoo-r6/drivers/net/tulip.c: No such file or directory
----

--File: via-rhine.c--
Files /download/network/via-rhine.c and /usr/src/linux-2.6.8-gentoo-r6/drivers/net/via-rhine.c differ
----

--File: winbond-840.c--
diff: /usr/src/linux-2.6.8-gentoo-r6/drivers/net/winbond-840.c: No such file or directory
----

--File: yellowfin.c--
Files /download/network/yellowfin.c and /usr/src/linux-2.6.8-gentoo-r6/drivers/net/yellowfin.c differ
----

--------------------------------------------------------------

Doesn't really matter since files (not exactly the same) differs from both 2.6.7-gentoo-r11 and 2.6.9-rc4 and besides, the problem was MII-related OR even deeper in net-sources.... Anyway, the sundance.c in all kernels (2.6.7-gentoo-r11 , 2.6.8-gentoo-r6 and 2.6.9-rc4) claim to version 1.01, but the latest available from Scyld is 1.11. Shouldn't the latest source be in the latest rc-kernel or at least in gentoo-dev-sources? :) I really would like to help out fixing this issue to 2004.3 but I'm affraid I don't have the competence on how to move on... I have the kernels and NIC's right here at work, and testing patches would be no problem, as long as someone provides them.

Thanks! /
Comment 10 Charlie Gehlin 2004-10-13 06:59:46 UTC
Couldn't agree with you more about the 2004.3-relase....
However, I looked at the page http://www.scyld.com/ethercard_drivers.html which I believe delivers some of the drivers residing in linux-`uname -r`drivers/net -directory. I downloaded the sources from Scyld and theese files differs when running command:

for file in `ls /download/network/`;do   echo "--File: $file--";  diff -q /download/network/$file /usr/src/linux-2.6.8-gentoo-r6/drivers/net/$file;  echo -e "----\n\n"; done
-------------------------------------------------------------

--File: 3c59x.c--
Files /download/network/3c59x.c and /usr/src/linux-2.6.8-gentoo-r6/drivers/net/3c59x.c differ
----

--File: Makefile--
Files /download/network/Makefile and /usr/src/linux-2.6.8-gentoo-r6/drivers/net/Makefile differ
----

--File: cb_shim.c--
diff: /usr/src/linux-2.6.8-gentoo-r6/drivers/net/cb_shim.c: No such file or directory
----

--File: eepro100.c--
Files /download/network/eepro100.c and /usr/src/linux-2.6.8-gentoo-r6/drivers/net/eepro100.c differ
----

--File: epic100.c--
Files /download/network/epic100.c and /usr/src/linux-2.6.8-gentoo-r6/drivers/net/epic100.c differ
----

--File: hamachi.c--
Files /download/network/hamachi.c and /usr/src/linux-2.6.8-gentoo-r6/drivers/net/hamachi.c differ
----

--File: intel-gige.c--
diff: /usr/src/linux-2.6.8-gentoo-r6/drivers/net/intel-gige.c: No such file or directory
----

--File: kern_compat.h--
----

--File: myson803.c--
diff: /usr/src/linux-2.6.8-gentoo-r6/drivers/net/myson803.c: No such file or directory
----

--File: natsemi.c--
Files /download/network/natsemi.c and /usr/src/linux-2.6.8-gentoo-r6/drivers/net/natsemi.c differ
----

--File: ne2k-pci.c--
Files /download/network/ne2k-pci.c and /usr/src/linux-2.6.8-gentoo-r6/drivers/net/ne2k-pci.c differ
----

--File: ns820.c--
diff: /usr/src/linux-2.6.8-gentoo-r6/drivers/net/ns820.c: No such file or directory
----

--File: pci-scan.c--
----

--File: pci-scan.h--
----

--File: pci-serial.c--
diff: /usr/src/linux-2.6.8-gentoo-r6/drivers/net/pci-serial.c: No such file or directory
----

--File: pci-skeleton.c--
Files /download/network/pci-skeleton.c and /usr/src/linux-2.6.8-gentoo-r6/drivers/net/pci-skeleton.c differ
----

--File: rtl8139.c--
diff: /usr/src/linux-2.6.8-gentoo-r6/drivers/net/rtl8139.c: No such file or directory
----

--File: starfire.c--
Files /download/network/starfire.c and /usr/src/linux-2.6.8-gentoo-r6/drivers/net/starfire.c differ
----

--File: sundance.c--
Files /download/network/sundance.c and /usr/src/linux-2.6.8-gentoo-r6/drivers/net/sundance.c differ
----

--File: tulip.c--
diff: /usr/src/linux-2.6.8-gentoo-r6/drivers/net/tulip.c: No such file or directory
----

--File: via-rhine.c--
Files /download/network/via-rhine.c and /usr/src/linux-2.6.8-gentoo-r6/drivers/net/via-rhine.c differ
----

--File: winbond-840.c--
diff: /usr/src/linux-2.6.8-gentoo-r6/drivers/net/winbond-840.c: No such file or directory
----

--File: yellowfin.c--
Files /download/network/yellowfin.c and /usr/src/linux-2.6.8-gentoo-r6/drivers/net/yellowfin.c differ
----

--------------------------------------------------------------

Doesn't really matter since files (not exactly the same) differs from both 2.6.7-gentoo-r11 and 2.6.9-rc4 and besides, the problem was MII-related OR even deeper in net-sources.... Anyway, the sundance.c in all kernels (2.6.7-gentoo-r11 , 2.6.8-gentoo-r6 and 2.6.9-rc4) claim to version 1.01, but the latest available from Scyld is 1.11. Shouldn't the latest source be in the latest rc-kernel or at least in gentoo-dev-sources? :) I really would like to help out fixing this issue to 2004.3 but I'm affraid I don't have the competence on how to move on... I have the kernels and NIC's right here at work, and testing patches would be no problem, as long as someone provides them.

Thanks! /©harlie
Comment 11 Daniel Drake (RETIRED) gentoo-dev 2004-10-13 07:28:44 UTC
If you're willing to investigate further, then thanks! I just looked through the changelogs and I can't find any MII related fixes between 2.6.8 and now which affect the general system.

One thing you could try, is taking a backup copy of "sundance.c", then replacing it with the one from the scyld site, recompiling kernel, etc, reboot, retest. Please be extra careful when copying the kernel over etc - make sure that /boot is mounted, grub is updated, etc.

Thanks!
Comment 12 Chris Gianelloni (RETIRED) gentoo-dev 2004-10-13 09:36:37 UTC
Can you also check that you have CONFIG_MII=m or CONFIG_MII=y in your kernel configuration?

I didn't see it mentioned anywhere.
Comment 13 Charlie Gehlin 2004-10-13 10:12:53 UTC
OK, so this is what happened:
  CC [M]  drivers/net/sundance.o
drivers/net/sundance.c:155:22: pci-scan.h: No such file or directory
drivers/net/sundance.c:156:25: kern_compat.h: No such file or directory

Added the files (they were in the scyld-rel.) Compiles with warnings:
  CC [M]  drivers/net/sundance.o
drivers/net/sundance.c: In function `sundance_probe1':
drivers/net/sundance.c:492: warning: implicit declaration of function `init_etherdev'
drivers/net/sundance.c:492: warning: assignment makes pointer from integer without a cast
drivers/net/sundance.c: In function `netdev_open':
drivers/net/sundance.c:731: warning: `MOD_INC_USE_COUNT' is deprecated (declared at include/linux/module.h:555)
drivers/net/sundance.c:733: warning: passing arg 2 of `request_irq' from incompatible pointer type
drivers/net/sundance.c:734: warning: `MOD_DEC_USE_COUNT' is deprecated (declared at include/linux/module.h:567)
drivers/net/sundance.c: In function `set_rx_mode':
drivers/net/sundance.c:1320: warning: passing arg 2 of `set_bit' from incompatible pointer type
drivers/net/sundance.c: In function `sundance_pwr_event':
drivers/net/sundance.c:1395: warning: `MOD_INC_USE_COUNT' is deprecated (declared at include/linux/module.h:555)
drivers/net/sundance.c:1427: warning: `MOD_DEC_USE_COUNT' is deprecated (declared at include/linux/module.h:567)
drivers/net/sundance.c: In function `netdev_close':
drivers/net/sundance.c:1507: warning: `MOD_DEC_USE_COUNT' is deprecated (declared at include/linux/module.h:567)

At depmod-stage in 'make modules-install':
WARNING: /lib/modules/2.6.8-gentoo-r6/kernel/drivers/net/sundance.ko needs unknown symbol pci_drv_register
WARNING: /lib/modules/2.6.8-gentoo-r6/kernel/drivers/net/sundance.ko needs unknown symbol pci_drv_unregister
WARNING: /lib/modules/2.6.8-gentoo-r6/kernel/drivers/net/sundance.ko needs unknown symbol acpi_set_pwr_state
WARNING: /lib/modules/2.6.8-gentoo-r6/kernel/drivers/net/sundance.ko needs unknown symbol init_etherdev

Module doesn't load, dmesg when boot/manual modprobe:
sundance: Unknown symbol pci_drv_register
sundance: Unknown symbol pci_drv_unregister
sundance: Unknown symbol acpi_set_pwr_state
sundance: Unknown symbol init_etherdev

I also tried the same ( to change out sundance.c and add the other files) in the 2.6.9-rc4 source-tree, but with the same results.

Now, the file that exports that symbol, pci_drv_register (for starters), is pci-scan.c that only exists in the scyld-source but not in the 2.6.8-gentoo-r6 or 2.6.9-rc4. In fact, all unknown symbols are exported in the pci-scan.c so I added it to the source-tree, but the same result. I now assume that just put the .c-file in the tree wont do any good, it must be added to some Makefile in order to build pci-scan.o, right? But how?
Comment 14 Charlie Gehlin 2004-10-13 10:17:53 UTC
Chris: see "Steps to Reproduce" :), also I re-checked all kernel-configs and they all have "<M>   Generic Media Independent Interface device support". It also loads at boot prior to any NIC-modules (first entry in /etc/modules.autoload/kernel-2.6)

/
Comment 15 Charlie Gehlin 2004-10-13 10:17:53 UTC
Chris: see "Steps to Reproduce" :), also I re-checked all kernel-configs and they all have "<M>   Generic Media Independent Interface device support". It also loads at boot prior to any NIC-modules (first entry in /etc/modules.autoload/kernel-2.6)

/©harlie
Comment 16 Charlie Gehlin 2004-10-13 11:33:06 UTC
Hi, it's just me again....
I copied sundance.c from 2.6.7-gentoo-r11 to 2.6.8-gentoo-r6 tree, and after a recompile the card now works, dmesg:
sundance.c:v1.01+LK1.09a 10-Jul-2003  Written by Donald Becker
  http://www.scyld.com/network/sundance.html
ACPI: PCI interrupt 0000:04:04.0[A] -> GSI 24 (level, low) -> IRQ 209
eth1: D-Link DFE-580TX 4 port Server Adapter at 0xa800, 00:0d:88:c5:f9:8c, IRQ 209.
eth1: MII PHY found at address 1, status 0x7829 advertising 01e1.
ACPI: PCI interrupt 0000:04:05.0[A] -> GSI 25 (level, low) -> IRQ 217
eth2: D-Link DFE-580TX 4 port Server Adapter at 0xa400, 00:0d:88:c5:f9:8d, IRQ 217.
eth2: MII PHY found at address 1, status 0x7829 advertising 01e1.
ACPI: PCI interrupt 0000:04:06.0[A] -> GSI 26 (level, low) -> IRQ 225
eth3: D-Link DFE-580TX 4 port Server Adapter at 0xa000, 00:0d:88:c5:f9:8e, IRQ 225.
eth3: MII PHY found at address 1, status 0x7829 advertising 01e1.
ACPI: PCI interrupt 0000:04:07.0[A] -> GSI 27 (level, low) -> IRQ 233
eth4: D-Link DFE-580TX 4 port Server Adapter at 0x9800, 00:0d:88:c5:f9:8f, IRQ 233.
eth4: MII PHY found at address 1, status 0x7829 advertising 01e1.

I don't really know how to make patches, but I'll attach a 'diff -u /usr/src/linux-2.6.8-gentoo-r6/drivers/net/sundance.oldc /usr/src/linux-2.6.8-gentoo-r6/drivers/net/sundance.c' When I come to think about it, I've seen this exact patch somewhere when googling on this problem.... Dunno remember where, but still :)

/
Comment 17 Charlie Gehlin 2004-10-13 11:33:06 UTC
Hi, it's just me again....
I copied sundance.c from 2.6.7-gentoo-r11 to 2.6.8-gentoo-r6 tree, and after a recompile the card now works, dmesg:
sundance.c:v1.01+LK1.09a 10-Jul-2003  Written by Donald Becker
  http://www.scyld.com/network/sundance.html
ACPI: PCI interrupt 0000:04:04.0[A] -> GSI 24 (level, low) -> IRQ 209
eth1: D-Link DFE-580TX 4 port Server Adapter at 0xa800, 00:0d:88:c5:f9:8c, IRQ 209.
eth1: MII PHY found at address 1, status 0x7829 advertising 01e1.
ACPI: PCI interrupt 0000:04:05.0[A] -> GSI 25 (level, low) -> IRQ 217
eth2: D-Link DFE-580TX 4 port Server Adapter at 0xa400, 00:0d:88:c5:f9:8d, IRQ 217.
eth2: MII PHY found at address 1, status 0x7829 advertising 01e1.
ACPI: PCI interrupt 0000:04:06.0[A] -> GSI 26 (level, low) -> IRQ 225
eth3: D-Link DFE-580TX 4 port Server Adapter at 0xa000, 00:0d:88:c5:f9:8e, IRQ 225.
eth3: MII PHY found at address 1, status 0x7829 advertising 01e1.
ACPI: PCI interrupt 0000:04:07.0[A] -> GSI 27 (level, low) -> IRQ 233
eth4: D-Link DFE-580TX 4 port Server Adapter at 0x9800, 00:0d:88:c5:f9:8f, IRQ 233.
eth4: MII PHY found at address 1, status 0x7829 advertising 01e1.

I don't really know how to make patches, but I'll attach a 'diff -u /usr/src/linux-2.6.8-gentoo-r6/drivers/net/sundance.oldc /usr/src/linux-2.6.8-gentoo-r6/drivers/net/sundance.c' When I come to think about it, I've seen this exact patch somewhere when googling on this problem.... Dunno remember where, but still :)

/©harlie
Comment 18 Charlie Gehlin 2004-10-13 11:34:05 UTC
Created attachment 41748 [details, diff]
Diff between sundance.c in 2.6.7-gentoo-r11 and 2.6.8-gentoo-r6
Comment 19 Daniel Drake (RETIRED) gentoo-dev 2004-10-13 12:12:04 UTC
First thing to try (it might sound odd) is to completely power your PC down for 2 mins or so, then boot back into your "hybrid" kernel (2.6.8 with the 2.6.7 sundance.c) and see if it still works. I have a suspicion that it might fail on a cold boot.
Comment 20 Charlie Gehlin 2004-10-13 22:58:53 UTC
I removed the power-cord and ethernet-cables for ~45 mins, then booted and it still works. In fact, all 4 cards in the box are up OK. Speaking of which, is there by any chance someone here that could explain why I can't add 6 cards to the motherboard? The answer from ASUS was: "because the space of system Boot ROM is not enough to accept all the required resources from the add-on devices and onboard devices." Isn't there a way around this.....
Anyway, what now? Is there going to be a new gentoo-dev-sources ebuild with a 2.6.8-gentoo-r7 kernel?

Thanks!

/
Comment 21 Charlie Gehlin 2004-10-13 22:58:53 UTC
I removed the power-cord and ethernet-cables for ~45 mins, then booted and it still works. In fact, all 4 cards in the box are up OK. Speaking of which, is there by any chance someone here that could explain why I can't add 6 cards to the motherboard? The answer from ASUS was: "because the space of system Boot ROM is not enough to accept all the required resources from the add-on devices and onboard devices." Isn't there a way around this.....
Anyway, what now? Is there going to be a new gentoo-dev-sources ebuild with a 2.6.8-gentoo-r7 kernel?

Thanks!

/©harlie
Comment 22 Daniel Drake (RETIRED) gentoo-dev 2004-10-22 17:04:03 UTC
2.6.9 is stable and will be used on livecd. That means the problem is gone :)