Re: [PATCH] scsi: fix bnx2i build errors

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On 05/05/10 09:02, James Bottomley wrote:
> On Wed, 2010-05-05 at 08:48 -0700, Randy Dunlap wrote:
>> On 05/05/10 06:54, James Bottomley wrote:
>>> On Tue, 2010-05-04 at 10:30 -0700, Randy Dunlap wrote:
>>>> From: Randy Dunlap <randy.dunlap@xxxxxxxxxx>
>>>>
>>>> bnx2i should depend on NET since it selects SCSI_ISCSI_ATTRS,
>>>> which depends on NET.
>>>>
>>>> Also move the dependencies together.
>>>>
>>>> The "depends" change fixes multiple build errors when CONFIG_NET is
>>>> not enabled:
>>>> ERROR: "skb_trim" [drivers/scsi/scsi_transport_iscsi.ko] undefined!
>>>> ERROR: "netlink_kernel_create" [drivers/scsi/scsi_transport_iscsi.ko] undefined!
>>>> ERROR: "netlink_kernel_release" [drivers/scsi/scsi_transport_iscsi.ko] undefined!
>>>> ERROR: "skb_pull" [drivers/scsi/scsi_transport_iscsi.ko] undefined!
>>>> ERROR: "init_net" [drivers/scsi/scsi_transport_iscsi.ko] undefined!
>>>> ERROR: "__alloc_skb" [drivers/scsi/scsi_transport_iscsi.ko] undefined!
>>>> ERROR: "netlink_broadcast" [drivers/scsi/scsi_transport_iscsi.ko] undefined!
>>>> ERROR: "kfree_skb" [drivers/scsi/scsi_transport_iscsi.ko] undefined!
>>>> ERROR: "skb_put" [drivers/scsi/scsi_transport_iscsi.ko] undefined!
>>>>
>>>> Signed-off-by: Randy Dunlap <randy.dunlap@xxxxxxxxxx>
>>>> Cc: Anil Veerabhadrappa <anilgv@xxxxxxxxxxxx>
>>>> ---
>>>>  drivers/scsi/bnx2i/Kconfig |    3 ++-
>>>>  1 file changed, 2 insertions(+), 1 deletion(-)
>>>>
>>>> --- lnx-2634-rc6.orig/drivers/scsi/bnx2i/Kconfig
>>>> +++ lnx-2634-rc6/drivers/scsi/bnx2i/Kconfig
>>>> @@ -1,10 +1,11 @@
>>>>  config SCSI_BNX2_ISCSI
>>>>  	tristate "Broadcom NetXtreme II iSCSI support"
>>>> +	depends on NET
>>>> +	depends on PCI
>>>
>>> Actually, let's not fix it this way.  While we still have this annoying
>>> bug in the Kconfig system where it doesn't respect the dependencies of a
>>> select, let's not build traps like this ... the rule has to be selected
>>> attributes must select their dependencies, that way the selection just
>>> works(tm).
>>>
>>> Of course, fixing Kconfig would be the better option ...
>>>
>>> James
>>>
>>> ---
>>>
>>> diff --git a/drivers/scsi/Kconfig b/drivers/scsi/Kconfig
>>> index 75f2336..804ba3d 100644
>>> --- a/drivers/scsi/Kconfig
>>> +++ b/drivers/scsi/Kconfig
>>> @@ -308,7 +308,8 @@ config SCSI_FC_TGT_ATTRS
>>>  
>>>  config SCSI_ISCSI_ATTRS
>>>  	tristate "iSCSI Transport Attributes"
>>> -	depends on SCSI && NET
>>> +	depends on SCSI
>>> +	select NET
>>>  	help
>>>  	  If you wish to export transport-specific information about
>>>  	  each attached iSCSI device to sysfs, say Y.
>>>
>>>
>>
>> I would Nak that but it would probably do no good.
>> Selecting NET just adds way too much code to be hidden like this.
> 
> I think it's a complete hack too.  But it's better than forcing people
> who use select on hidden options (like the transport classes) to be
> aware of the nebulous dependency diagram it's going to pull in.  It's
> also what we've done to prevent hidden dependencies in other select
> items.

The only other config symbol that selects NET is SCSI_NETLINK.  :(

>> Yes, of course, kconfig should be fixed...
> 
> In the absence of volunteers, I suppose I could take a look at it on the
> 'plane home.  It seems to be a fairly simplistic parser.

That would be great.  I've had a look at it and I was left dazed & confuzed.


-- 
~Randy
*** Remember to use Documentation/SubmitChecklist when testing your code ***
--
To unsubscribe from this list: send the line "unsubscribe linux-scsi" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Index of Archives]     [SCSI Target Devel]     [Linux SCSI Target Infrastructure]     [Kernel Newbies]     [IDE]     [Security]     [Git]     [Netfilter]     [Bugtraq]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux ATA RAID]     [Linux IIO]     [Samba]     [Device Mapper]
  Powered by Linux