aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAl Viro <viro@zeniv.linux.org.uk>2012-10-10 20:09:44 -0400
committerAl Viro <viro@zeniv.linux.org.uk>2012-10-11 21:42:36 -0400
commitfb45550d76bb584857cf0ea3be79fa78207a3cff (patch)
treec141122f0aa7f1b5cea4ad52d36228a40b79b2fc
parentd6b2123802d2b7eee8c62cd0ebd73e8636cbb068 (diff)
make sure that kernel_thread() callbacks call do_exit() themselves
Most of them never returned anyway - only two functions had to be changed. That allows to simplify their callers a whole lot. Note that this does *not* apply to kthread_run() callbacks - all of those had been called from the same kernel_thread() callback, which did do_exit() already. This is strictly about very few low-level kernel_thread() callbacks (there are only 6 of those, mostly as part of kthread.h and kmod.h exported mechanisms, plus kernel_init() itself). Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
-rw-r--r--kernel/kmod.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/kernel/kmod.c b/kernel/kmod.c
index 6f99aead66c6..b6e5ca9c758a 100644
--- a/kernel/kmod.c
+++ b/kernel/kmod.c
@@ -225,7 +225,7 @@ static int ____call_usermodehelper(void *data)
225 /* Exec failed? */ 225 /* Exec failed? */
226fail: 226fail:
227 sub_info->retval = retval; 227 sub_info->retval = retval;
228 return 0; 228 do_exit(0);
229} 229}
230 230
231static int call_helper(void *data) 231static int call_helper(void *data)
@@ -292,7 +292,7 @@ static int wait_for_helper(void *data)
292 } 292 }
293 293
294 umh_complete(sub_info); 294 umh_complete(sub_info);
295 return 0; 295 do_exit(0);
296} 296}
297 297
298/* This is run by khelper thread */ 298/* This is run by khelper thread */