From patchwork Fri Mar 20 08:28:02 2009 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Mikhail Zolotaryov X-Patchwork-Id: 24734 X-Patchwork-Delegate: davem@davemloft.net Return-Path: X-Original-To: patchwork-incoming@ozlabs.org Delivered-To: patchwork-incoming@ozlabs.org Received: from vger.kernel.org (vger.kernel.org [209.132.176.167]) by ozlabs.org (Postfix) with ESMTP id AE4F7DDE26 for ; Fri, 20 Mar 2009 19:45:37 +1100 (EST) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1753301AbZCTIpe (ORCPT ); Fri, 20 Mar 2009 04:45:34 -0400 Received: (majordomo@vger.kernel.org) by vger.kernel.org id S1752196AbZCTIpd (ORCPT ); Fri, 20 Mar 2009 04:45:33 -0400 Received: from b-mail.com.ua ([195.68.202.242]:62166 "EHLO b-mail.com.ua" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1752188AbZCTIpc (ORCPT ); Fri, 20 Mar 2009 04:45:32 -0400 X-Greylist: delayed 1080 seconds by postgrey-1.27 at vger.kernel.org; Fri, 20 Mar 2009 04:45:32 EDT Received: from CUSTOMER.local by b-mail.com.ua with ESMTP (TLS-1.0:DHE_RSA_AES_256_CBC_SHA1:32) id 1Lka93-00080a-9i for netdev@vger.kernel.org; Fri, 20 Mar 2009 10:32:01 +0200 Message-ID: <49C35392.7030906@lebon.org.ua> Date: Fri, 20 Mar 2009 10:28:02 +0200 From: Mikhail Zolotaryov User-Agent: Thunderbird 2.0.0.19 (X11/20090209) MIME-Version: 1.0 To: netdev@vger.kernel.org Subject: [PATCH] powerpc 4xx EMAC driver: device name reported on timeout is not correct Sender: netdev-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: netdev@vger.kernel.org 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 Acked-by: Benjamin Herrenschmidt --- 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: