lkml.org 
[lkml]   [2006]   [Feb]   [11]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
Patch in this message
/
Date
From
SubjectRe: BUG at drivers/net/dl2k.c
Vincent ETIENNE <ve@vetienne.net> :
>
> I'm using 2.6.14-mm2 kernel (x86_64) on a Bi-Opteron 246 board with a PCI-64
> card ( DLINK 550 GT ) plug on PCI-X interface. This card use the DL2000
> driver which seems to cause this problem logged during boot time :
>
> BUG: warning at drivers/net/dl2k.c:1481/mii_wait_link()
[...]

Try the bandaid below. If it is not enough, please open a PR at
http://bugzilla.kernel.org and add me to the Cc: list.

1ms delay in irq context always hurt. This stuff should be done in
an user-context.

Signed-off-by: Francois Romieu <romieu@fr.zoreil.com>

diff --git a/drivers/net/dl2k.c b/drivers/net/dl2k.c
index 430c628..2d47804 100644
--- a/drivers/net/dl2k.c
+++ b/drivers/net/dl2k.c
@@ -972,7 +972,7 @@ rio_error (struct net_device *dev, int i

/* Link change event */
if (int_status & LinkEvent) {
- if (mii_wait_link (dev, 10) == 0) {
+ if (mii_wait_link (dev, 1000) == 0) {
printk (KERN_INFO "%s: Link up\n", dev->name);
if (np->phy_media)
mii_get_media_pcs (dev);
@@ -1478,7 +1478,7 @@ mii_wait_link (struct net_device *dev, i
bmsr.image = mii_read (dev, phy_addr, MII_BMSR);
if (bmsr.bits.link_status)
return 0;
- mdelay (1);
+ udelay(10);
} while (--wait > 0);
return -1;
}
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/

\
 
 \ /
  Last update: 2006-02-11 21:01    [from the cache]
©2003-2011 Jasper Spaans