Re: rc9 + orinoco WPA patchset: BUG: scheduling while atomic loading firmware with PCMCIA adapter

From: Andrey Borzenkov
Date: Thu Oct 09 2008 - 12:14:57 EST


On Thursday 09 October 2008, Dan Williams wrote:
>
> On Thu, 2008-10-09 at 19:59 +0400, Andrey Borzenkov wrote:
> > On Thursday 09 October 2008, Matthew Wilcox wrote:
> > >
> > > On Thu, Oct 09, 2008 at 05:22:55PM +0400, Andrey Borzenkov wrote:
> > > > After loading orinoco and "inserting" adapter I get either BUG with
> > > > endless loop (attached) or kernel panic on NULL pointer dereference
> > > > (was not able capture). Adapter works fine with wlags49 driver.
> > >
> > > It looks like you've fallen off the bottom of the kernel stack. Do you
> > > have 4k stacks enabled in your config?
> > >
> >
> > You are right. Using 8K stacks load and runs fine. Hmm ... not nice
> > from it :p
>
> == driver bug; the driver should not require large stacks and this
> should get fixed.
>
I'll check for obvious places, still ...

/* Download either STA or AP firmware into the card. */
static int
orinoco_dl_firmware(struct orinoco_private *priv,
const struct fw_info *fw,
int ap)
{
/* Plug Data Area (PDA) */
__le16 pda[512] = { 0 };

allocating 1K on stack is not nice; but what has eaten 3K more?

Is there any instrumentation to analyze stack usage?

Attachment: signature.asc
Description: This is a digitally signed message part.