Re: 2.6.6: smc-ultra: eth%d message

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

 





I missed the eth%d in the 1st message - was focusing on the hardware
parameters reported, as I'm used to seeing detection problems.

Anyway, the simple fix is to simply remove the dev->name reporting.
It isn't assigned at that stage, so why bend over backwards to try
and make it so.  With people re-assigning ethN <--> physical interfaces,
the reporting isn't as meaningful as it once was anyway.  If people
really care, the kernel can give a quick summary of the found interfaces
after all the boot time probing is completed, and that allows us to
remove the problem from all drivers quickly and simply.

Paul.



On Sat, 29 May 2004, Roger Luethi wrote:



On Fri, 28 May 2004 10:27:30 +0200, Németh Márton wrote:


When I'm loading smc-ultra module with 'modprobe -k smc_ultra' using
Linux 2.6.6 I get the following message in 'dmesg':

smc-ultra.c: Presently autoprobing (not recommended) for a single card.
smc-ultra.c: No ISAPnP cards found, trying standard ones...
smc-ultra.c:v2.02 2/3/98 Donald Becker (becker@cesdis.gsfc.nasa.gov)
eth%d: SMC Ultra at 0x280, 00 00 C0 78 C5 B6, IRQ 3 memory 0xd0000-0xd3fff.

Using Linux kernel 2.4.25 the last line was correct, like this:
eth0: SMC Ultra at 0x280, 00 00 C0 78 C5 B6, IRQ 3 memory 0xd0000-0xd3fff.

I think the printk() in linux-2.6.6/drivers/net/smc-ultra.c:243 is buggy,
but I do not have the knowledge how to correct this.


There are several drivers in 2.6 that use dev->name before calling
register_netdev(), which results in the "eth%d" messages you are seeing.
I've noticed this with mace.c as well (2.6.5 IIRC).



--- linux/drivers/net/smc-ultra.c	Sat Apr  3 19:38:41 2004
+++ linux-r/drivers/net/smc-ultra.c	Wed Jun  2 11:11:53 2004
@@ -240,7 +240,7 @@
 
 	model_name = (idreg & 0xF0) == 0x20 ? "SMC Ultra" : "SMC EtherEZ";
 
-	printk("%s: %s at %#3x,", dev->name, model_name, ioaddr);
+	printk("%s at %#3x,", model_name, ioaddr);
 
 	for (i = 0; i < 6; i++)
 		printk(" %2.2X", dev->dev_addr[i] = inb(ioaddr + 8 + i));


[Index of Archives]     [Netdev]     [Ethernet Bridging]     [Linux 802.1Q VLAN]     [Linux Wireless]     [Kernel Newbies]     [Security]     [Linux for Hams]     [Netfilter]     [Git]     [Bugtraq]     [Yosemite News and Information]     [MIPS Linux]     [ARM Linux]     [Linux RAID]     [Linux PCI]     [Linux Admin]     [Samba]

  Powered by Linux