The airo driver is currently caching a pid for later use, but with the implementation of containers, pids themselves do not uniquely identify a task. The driver is also using kernel_thread() which is deprecated in drivers. This patch essentially replaces the kernel_thread() with kthread_create(). It also stores the task_struct of the airo_thread rather than its pid. Since this introduces a second task_struct in struct airo_info, the patch renames airo_info.task to airo_info.list_bss_task. As an extension of these changes, the patch further: - replaces kill_proc() with kthread_stop() - replaces signal_pending() with kthread_should_stop() - removes thread completion synchronisation which is handled by kthread_stop(). [akpm@osdl.org: fix races] Signed-off-by: Sukadev Bhattiprolu <sukadev@us.ibm.com> Cc: Javier Achirica <achirica@gmail.com> Cc: Christoph Hellwig <hch@infradead.org> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: John W. Linville <linville@tuxdriver.com>
README ------ This directory is mostly for Wireless LAN drivers, in their various incarnations (ISA, PCI, Pcmcia...). This separate directory is needed because a lot of driver work on different bus (typically PCI + Pcmcia) and share 95% of the code. This allow the code and the config options to be in one single place instead of scattered all over the driver tree, which is never 100% satisfactory. Note : if you want more info on the topic of Wireless LANs, you are kindly invited to have a look at the Wireless Howto : http://www.hpl.hp.com/personal/Jean_Tourrilhes/Linux/ Some Wireless LAN drivers, like orinoco_cs, require the use of Wireless Tools to be configured : http://www.hpl.hp.com/personal/Jean_Tourrilhes/Linux/Tools.html Special notes for distribution maintainers : 1) wvlan_cs will be discontinued soon in favor of orinoco_cs 2) Please add Wireless Tools support in your scripts Have fun... Jean