diff options
Diffstat (limited to 'kernel/kmod.c')
-rw-r--r-- | kernel/kmod.c | 6 |
1 files changed, 0 insertions, 6 deletions
diff --git a/kernel/kmod.c b/kernel/kmod.c index 49cc4b9c1a8d..4d32eb077179 100644 --- a/kernel/kmod.c +++ b/kernel/kmod.c | |||
@@ -135,7 +135,6 @@ static int ____call_usermodehelper(void *data) | |||
135 | 135 | ||
136 | /* Unblock all signals and set the session keyring. */ | 136 | /* Unblock all signals and set the session keyring. */ |
137 | new_session = key_get(sub_info->ring); | 137 | new_session = key_get(sub_info->ring); |
138 | flush_signals(current); | ||
139 | spin_lock_irq(¤t->sighand->siglock); | 138 | spin_lock_irq(¤t->sighand->siglock); |
140 | old_session = __install_session_keyring(current, new_session); | 139 | old_session = __install_session_keyring(current, new_session); |
141 | flush_signal_handlers(current, 1); | 140 | flush_signal_handlers(current, 1); |
@@ -186,14 +185,9 @@ static int wait_for_helper(void *data) | |||
186 | { | 185 | { |
187 | struct subprocess_info *sub_info = data; | 186 | struct subprocess_info *sub_info = data; |
188 | pid_t pid; | 187 | pid_t pid; |
189 | struct k_sigaction sa; | ||
190 | 188 | ||
191 | /* Install a handler: if SIGCLD isn't handled sys_wait4 won't | 189 | /* Install a handler: if SIGCLD isn't handled sys_wait4 won't |
192 | * populate the status, but will return -ECHILD. */ | 190 | * populate the status, but will return -ECHILD. */ |
193 | sa.sa.sa_handler = SIG_IGN; | ||
194 | sa.sa.sa_flags = 0; | ||
195 | siginitset(&sa.sa.sa_mask, sigmask(SIGCHLD)); | ||
196 | do_sigaction(SIGCHLD, &sa, NULL); | ||
197 | allow_signal(SIGCHLD); | 191 | allow_signal(SIGCHLD); |
198 | 192 | ||
199 | pid = kernel_thread(____call_usermodehelper, sub_info, SIGCHLD); | 193 | pid = kernel_thread(____call_usermodehelper, sub_info, SIGCHLD); |