[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: forcedeth generates Invalid MAC address message

On Sun, Nov 11, 2007 at 04:29:54PM -0800, Keith Schweikhard wrote:
> No luck on the MAC addresses being printed on the bottom.  I've tried to 
> locate the chip on the IEEE website without luck.  It looks like the MAC 
> address that is getting posted on both machines is in a reverse byte order.  
> When I call up the MAC address on the Windows side of the computer the byte 
> order is reversed.  As a result, the first three bytes of my MAC address are 
> 00-1B-38.  According to IEEE these MAC addresses are assigned to COMPAL 
> Judging from what I am reading, Nvidia chips had issues with reporting their 
> MAC addresses.  As a result, forcedeth swaps the bytes.  The board in the 
> computer claims to be Nvidia, but the chip is registered to Compal.  In 
> looking up the chipset in hardware for linux
> http://hardware4linux.info/component/15830/
> I get pointed to a different driver for the NIC. (r8169)  But the kernel does 
> not seem realize this during the boot process.  As a result, it calls 
> forcedeth and forcedeth swaps the byte order.  I am baffled on how to 
> override this selection.  I've already tried blacklisting forcedeth 
> in /etc/modprobe.d/blacklist and adding r8169 into /etc/modules but it seems 
> to load the forcedeth module regardless of the fact that it is blacklisted.  
> I have also tried moving forcedeth.ko from the kernel/drivers/net/ directory 
> but without luck.  forcedeth gets loaded as a module anyway.  This problem 
> happens as soon as forcedeth tries to initialize the NIC.  I'm not certain 
> what to try next.  Any suggestions?

Either the forcedeth module is built into the kernel or is being loaded
by udev.  If its loaded by udev, if you turn off networking, you should
be able to rmmod the forcedeth module, then insmod the r8169 and see if
it works.

That would be the first step.  Then, I guess you'd need to reconfigure
the initrd to load the r8169 module instead of the forcedeth (i.e.
remove the forcedeth module from the initrd altogether).  


Reply to: