Re: [PATCH] [SCSI] bnx2fc: fix build error when !CONFIG_MODULES

From: James Bottomley
Date: Mon Mar 07 2011 - 19:18:31 EST


On Mon, 2011-03-07 at 15:54 -0800, Bhanu Gollapudi wrote:
> On Mon, 2011-03-07 at 12:16 -0800, Mariusz Kozlowski wrote:
> > On Wed, Mar 02, 2011 at 11:10:03PM +0100, Mariusz Kozlowski wrote:
> > > drivers/scsi/bnx2fc/bnx2fc_fcoe.c:1815: error: dereferencing pointer to incomplete type
> > > drivers/scsi/bnx2fc/bnx2fc_fcoe.c:1815: error: âMODULE_STATE_LIVEâ undeclared (first use in this function)
> >
> > Hm. Still there in next-20110307. Is this patch wrong or..?
> >
>
> James,
>
> Here is my ack for this patch.

OK, so the patch is actually wrong because adding #ifdefs on modules in
files really impedes readability. The bug is using a direct deref on
module state instead of one of the APIs which work in the non-modular
case, namely try_module_get(). That means the other two need to come out
and be reworked (plus all the others in fcoe).

Reworked looks like it might be a bigger item than bnx2fc. If any of
those tests is ever relevant, it means we have a race in the
fcoe_transport because it shouldn't be calling function pointers on a
dying module (unless it wants to trigger an oops).

So, why are you trying to do this in the first place?

James


--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/