summaryrefslogtreecommitdiffstats
path: root/include
diff options
context:
space:
mode:
authorPetr Mladek <pmladek@suse.com>2016-10-11 13:55:33 -0700
committerLinus Torvalds <torvalds@linux-foundation.org>2016-10-11 15:06:33 -0700
commit35033fe9cbbf18415dfeb7e27f0d4228dfc7458a (patch)
tree8f7f5456f8ec120624d7a8c3a250e5972249d30f /include
parentfbae2d44aa1df72d0154be77eb4d71e1e34c0f8f (diff)
downloadlinux-stable-35033fe9cbbf18415dfeb7e27f0d4228dfc7458a.tar.gz
linux-stable-35033fe9cbbf18415dfeb7e27f0d4228dfc7458a.tar.bz2
linux-stable-35033fe9cbbf18415dfeb7e27f0d4228dfc7458a.zip
kthread: add kthread_destroy_worker()
The current kthread worker users call flush() and stop() explicitly. This function does the same plus it frees the kthread_worker struct in one call. It is supposed to be used together with kthread_create_worker*() that allocates struct kthread_worker. Link: http://lkml.kernel.org/r/1470754545-17632-7-git-send-email-pmladek@suse.com Signed-off-by: Petr Mladek <pmladek@suse.com> Cc: Oleg Nesterov <oleg@redhat.com> Cc: Tejun Heo <tj@kernel.org> Cc: Ingo Molnar <mingo@redhat.com> Cc: Peter Zijlstra <peterz@infradead.org> Cc: Steven Rostedt <rostedt@goodmis.org> Cc: "Paul E. McKenney" <paulmck@linux.vnet.ibm.com> Cc: Josh Triplett <josh@joshtriplett.org> Cc: Thomas Gleixner <tglx@linutronix.de> Cc: Jiri Kosina <jkosina@suse.cz> Cc: Borislav Petkov <bp@suse.de> Cc: Michal Hocko <mhocko@suse.cz> Cc: Vlastimil Babka <vbabka@suse.cz> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Diffstat (limited to 'include')
-rw-r--r--include/linux/kthread.h2
1 files changed, 2 insertions, 0 deletions
diff --git a/include/linux/kthread.h b/include/linux/kthread.h
index daeb2befbabf..afc8939da861 100644
--- a/include/linux/kthread.h
+++ b/include/linux/kthread.h
@@ -136,4 +136,6 @@ bool kthread_queue_work(struct kthread_worker *worker,
void kthread_flush_work(struct kthread_work *work);
void kthread_flush_worker(struct kthread_worker *worker);
+void kthread_destroy_worker(struct kthread_worker *worker);
+
#endif /* _LINUX_KTHREAD_H */