Subject: Re: [patch 2.6.29-rc] usbnet: allow type check of devdbg arguments in non-debug build

From: David Brownell <[email-masked]>
Date: Mon, 19 Jan 2009 18:04:08 -0800

On Monday 19 January 2009, David Miller wrote:
> From: David Miller <[email-masked]>
> Date: Mon, 19 Jan 2009 17:12:00 -0800 (PST)
> 
> > From: David Brownell <[email-masked]>
> > Date: Fri, 16 Jan 2009 23:19:44 -0800
> > 
> > > Improve usbnet's devdbg to always type-check diagnostic arguments,
> > > like dev_dbg (device.h).  This makes no change to the resulting size of
> > > usbnet modules.
> > > 
> > > Signed-off-by: Steve Glendinning <[email-masked]>
> > > Signed-off-by: David Brownell <[email-masked]>
> > 
> > Applied, thanks.
> 
> I have to back this out, it breaks the build:
> 
> drivers/net/wireless/rndis_wlan.c: In function 'rndis_translate_scan':
> drivers/net/wireless/rndis_wlan.c:1664: error: 'usbdev' undeclared (first use in this function)
> drivers/net/wireless/rndis_wlan.c:1664: error: (Each undeclared identifier is reported only once
> drivers/net/wireless/rndis_wlan.c:1664: error: for each function it appears in.)
> make[3]: *** [drivers/net/wireless/rndis_wlan.o] Error 1
> make[3]: *** Waiting for unfinished jobs....
> make[2]: *** [drivers/net/wireless] Error 2
> make[2]: *** Waiting for unfinished jobs....
> 
> I bet there are other similar gremlins like this in the tree.

Maybe, but that's after all part of why we want this kind
of patch merged ... after the first gremlines are fixed!

In this case I'll guess this is the root cause of the bug:

#ifdef DEBUG
        struct usbnet *usbdev = netdev_priv(dev);
#endif

CC'd someone more involved in rndis_wlan than me ...

- Dave