Thread (1 message) 1 message, 1 author, 2013-07-07

Re: [PATCH] rtlwifi: Fix Kconfig for some corner cases

From: Ben Hutchings <hidden>
Date: 2013-07-07 09:42:31
Also in: linux-wireless

On Sat, 2013-07-06 at 21:47 -0500, Larry Finger wrote:
Fengguang Wu reported the following errors in the build of rtlwifi with
a random configuration:

tree:   git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux master
head:   bcd7351e83728859833e3c5b8aae9a2816914e4b
commit: 06e7cda3ce30dadc3454539127b4cfc3888c349e rtlwifi: Rework Kconfig
date:   5 months ago
config: i386-randconfig-s05-0703

   drivers/built-in.o: In function `rtl_usb_cleanup':
   usb.c:(.text+0x114895): undefined reference to `usb_kill_anchored_urbs'
   usb.c:(.text+0x114964): undefined reference to `usb_kill_anchored_urbs'
   usb.c:(.text+0x11497c): undefined reference to `usb_kill_anchored_urbs'
   drivers/built-in.o: In function `_usb_writeN_sync':
   usb.c:(.text+0x114c9e): undefined reference to `usb_control_msg'
   drivers/built-in.o: In function `rtl_usb_disconnect':
   (.text+0x114d9c): undefined reference to `usb_put_dev'
   drivers/built-in.o: In function `rtl_usb_start':
   usb.c:(.text+0x114fb0): undefined reference to `usb_alloc_urb'
   usb.c:(.text+0x115049): undefined reference to `usb_free_urb'
--snip--

Although I could not duplicate this result on my machine, it seemed likely
that it was due to the unusual configuration where rtlwifi was being built,
but none of its dependent drivers were selected.
I think it just requires:

CONFIG_USB=m
CONFIG_RTLWIFI=y
The fix is to select rtlwifi only when it is needed.
I don't think so.  Consider this configuration:

CONFIG_PCI=y
CONFIG_USB=m
CONFIG_RTL_CARDS=y
CONFIG_RTL8192CE=y
CONFIG_RTL8192CU=m
CONFIG_RTLWIFI=y     # maximum of RTL8192CE=y and RTL8192CU=m

The same breakage occurs.
While making this
change, I simplified the configuration so that variable RTLWIFI is never seen
by the user.
[...]

This will break existing configurations as RTL_CARDS defaults to n.

Perhaps you should introduce separate modules for the common PCI and USB
support code, similarly to how the rt2x00 modules are organised.

Ben.

-- 
Ben Hutchings, Staff Engineer, Solarflare
Not speaking for my employer; that's the marketing department's job.
They asked us to note that Solarflare product names are trademarked.

--
To unsubscribe from this list: send the line "unsubscribe linux-wireless" in
the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help