Subject: Re: oops/warning report for the week of November 26, 2008

From: Arjan van de Ven <[email-masked]>
Date: Fri, 28 Nov 2008 12:12:02 -0800

On Fri, 28 Nov 2008 20:50:18 +0100
Francois Romieu <[email-masked]> wrote:

> Arjan van de Ven <[email-masked]> :
> [...]
> > For me, sis900 and r8169 stand out; if you look at the data in the
> > table above, both of these are an order of magnitude more frequent
> > than the rest of the pack.
> 
> via-rhine + via_rhine = 438: it does not look too good either.
> 
> Is there an (ideally automated) way to retrieve more information ?

this will need help from the driver and a bit of the core
infrastructure.

the code that generates the warning is in net/sched/sch_generic.c:

char drivername[64];
WARN_ONCE(1, KERN_INFO "NETDEV WATCHDOG: %s (%s): transmit timed out\n", dev->name, netdev_drivername(dev, drivername, 64));
dev->tx_timeout(dev); 
 
> The r8169 driver handles three different chipsets and a plethora of
> phys. The "XID" line printed by the driver could hint at some specific
> PHY for instance.

anything you add to that WARN_ONCE will end up on kerneloops.org...
it could be as simple storing some information in the net dev... or having
a function pointer that can print some useful diagnostics information.

In addition, I'm trying to get a patch into .29 that prints, on x86, some basic
DMI information in every WARN_ON class message; but this won't give you the details
about the actual NIC, at most which motherboard is in use.

-- 
Arjan van de Ven 	Intel Open Source Technology Centre
For development, discussion and tips for power savings, 
visit http://www.lesswatts.org