diff options
author | Rafael J. Wysocki <rafael.j.wysocki@intel.com> | 2017-10-21 13:09:18 +0200 |
---|---|---|
committer | Rafael J. Wysocki <rafael.j.wysocki@intel.com> | 2017-10-21 13:09:18 +0200 |
commit | a2ab5fc41533c952706ebdfaa378bb746e535cc1 (patch) | |
tree | 9fb86bb4e9ecb67f7e651d284c2f12c6c5d4378f /drivers/uwb/uwbd.c | |
parent | a380f2edef65b2447a043251bb3c00a9d2153a8b (diff) | |
parent | 0e708fc602531b8355b5de6ea7c98f09129b223f (diff) |
Merge branch 'pm-sleep' into pm-core
Diffstat (limited to 'drivers/uwb/uwbd.c')
-rw-r--r-- | drivers/uwb/uwbd.c | 12 |
1 files changed, 8 insertions, 4 deletions
diff --git a/drivers/uwb/uwbd.c b/drivers/uwb/uwbd.c index 01c20a260a8b..39dd4ef53c77 100644 --- a/drivers/uwb/uwbd.c +++ b/drivers/uwb/uwbd.c @@ -302,18 +302,22 @@ static int uwbd(void *param) /** Start the UWB daemon */ void uwbd_start(struct uwb_rc *rc) { - rc->uwbd.task = kthread_run(uwbd, rc, "uwbd"); - if (rc->uwbd.task == NULL) + struct task_struct *task = kthread_run(uwbd, rc, "uwbd"); + if (IS_ERR(task)) { + rc->uwbd.task = NULL; printk(KERN_ERR "UWB: Cannot start management daemon; " "UWB won't work\n"); - else + } else { + rc->uwbd.task = task; rc->uwbd.pid = rc->uwbd.task->pid; + } } /* Stop the UWB daemon and free any unprocessed events */ void uwbd_stop(struct uwb_rc *rc) { - kthread_stop(rc->uwbd.task); + if (rc->uwbd.task) + kthread_stop(rc->uwbd.task); uwbd_flush(rc); } |