summaryrefslogtreecommitdiffstats
path: root/drivers/net/ibm_newemac
diff options
context:
space:
mode:
authorMikhail Zolotaryov <lebon@lebon.org.ua>2009-03-19 22:28:02 +0000
committerDavid S. Miller <davem@davemloft.net>2009-03-21 16:50:20 -0700
commit62f0c338d126fee75dc04bd23be30281a0e1e62f (patch)
treebbb314e4e9a107dfc3e2172970e4fdd29b9a1015 /drivers/net/ibm_newemac
parented734a97c6a81b644bd648afd7a337deb0ccd7e5 (diff)
downloadlinux-62f0c338d126fee75dc04bd23be30281a0e1e62f.tar.gz
linux-62f0c338d126fee75dc04bd23be30281a0e1e62f.tar.bz2
linux-62f0c338d126fee75dc04bd23be30281a0e1e62f.zip
powerpc 4xx EMAC driver: device name reported on timeout is not correct
Hi, 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 <lebon@lebon.org.ua> Acked-by: Benjamin Herrenschmidt <benh@kernel.crashing.org> Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'drivers/net/ibm_newemac')
-rw-r--r--drivers/net/ibm_newemac/core.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/drivers/net/ibm_newemac/core.c b/drivers/net/ibm_newemac/core.c
index 6fd7aa61736e..a815e17a0ab4 100644
--- a/drivers/net/ibm_newemac/core.c
+++ b/drivers/net/ibm_newemac/core.c
@@ -134,7 +134,7 @@ static inline void emac_report_timeout_error(struct emac_instance *dev,
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: