Subject: Re: [PATCH] powerpc 4xx EMAC driver: device name reported on timeout is not correct

From: Benjamin Herrenschmidt <[email-masked]>
Date: Fri, 20 Mar 2009 16:38:13 +1100

On Tue, 2009-03-10 at 20:32 +0200, Mikhail Zolotaryov wrote:
> Hi,
> 
> not critical problem here.
> 
> IBM EMAC driver performs device reset (drivers/net/ibm_newemac/core.c: 
> emac_probe() -> emac_init_phy() -> emac_reset()) before registering 
> appropriate net_device (emac_probe() -> register_netdev()), so 
> net_device name contains raw format string during EMAC reset ("eth%d").
> 
> If the case of reset timeout, emac_report_timeout_error() function is 
> called to report an error. The problem is this function uses net_device 
> name to report device related, which is not correct, as a result in the 
> kernel log buffer we see:
> 
> eth%d: reset timeout
> 
> The solution is to print device_node full_name instead. After applying 
> the patch proposed, error string is like the following:
> 
> /plb/opb/ethernet@ef600e00: reset timeout
> 
> 
> Signed-off-by: Mikhail Zolotaryov <[email-masked]>

Acked-by: Benjamin Herrenschmidt <[email-masked]>
---

Please submit with my Ack included to the netdev list.

Cheers,
Ben.

> 
> 
> plain text document attachment (emac_report_timeout_error.patch)
> --- linux-2.6/drivers/net/ibm_newemac/core.c.orig	2009-03-10 20:24:12.000000000 +0200
> +++ linux-2.6/drivers/net/ibm_newemac/core.c		2009-03-10 20:29:12.000000000 +0200
> @@ -134,7 +134,7 @@
>  				  EMAC_FTR_440EP_PHY_CLK_FIX))
>  		DBG(dev, "%s" NL, error);
>  	else if (net_ratelimit())
> -		printk(KERN_ERR "%s: %s\n", dev->ndev->name, error);
> +		printk(KERN_ERR "%s: %s\n", dev->ofdev->node->full_name, error);
>  }
>  
>  /* EMAC PHY clock workaround:
> _______________________________________________
> Linuxppc-dev mailing list
> [email-masked]
> https://ozlabs.org/mailman/listinfo/linuxppc-dev