[PATCH 6/9] staging: brcm80211: remove kernel_thread() for _iscan_sysioc_thread.
Jason Cooper
jason at lakedaemon.net
Wed Oct 6 21:40:10 UTC 2010
Signed-off-by: Jason Cooper <jason at lakedaemon.net>
---
drivers/staging/brcm80211/brcmfmac/wl_iw.c | 7 +++++--
1 files changed, 5 insertions(+), 2 deletions(-)
diff --git a/drivers/staging/brcm80211/brcmfmac/wl_iw.c b/drivers/staging/brcm80211/brcmfmac/wl_iw.c
index c105b7f..ed1c596 100644
--- a/drivers/staging/brcm80211/brcmfmac/wl_iw.c
+++ b/drivers/staging/brcm80211/brcmfmac/wl_iw.c
@@ -18,6 +18,7 @@
#include <typedefs.h>
#include <linuxver.h>
+#include <linux/kthread.h>
#include <osl.h>
#include <bcmutils.h>
@@ -3700,6 +3701,7 @@ int wl_iw_attach(struct net_device *dev, void *dhdp)
wl_iw_t *iw;
#if defined(WL_IW_USE_ISCAN)
iscan_info_t *iscan = NULL;
+ struct task_struct *tsk;
if (!dev)
return 0;
@@ -3739,8 +3741,9 @@ int wl_iw_attach(struct net_device *dev, void *dhdp)
sema_init(&iscan->sysioc_sem, 0);
init_completion(&iscan->sysioc_exited);
- iscan->sysioc_pid = kernel_thread(_iscan_sysioc_thread, iscan, 0);
- if (iscan->sysioc_pid < 0)
+ tsk = kthread_run(_iscan_sysioc_thread, iscan, "_iscan_sysioc");
+ iscan->sysioc_pid = (long)get_pid(task_pid(tsk));
+ if (IS_ERR(tsk))
return -ENOMEM;
#endif /* defined(WL_IW_USE_ISCAN) */
--
1.6.3.3
More information about the devel
mailing list