tty: Move the leader test in disassociate
There are two call points, both want to check that tty->signal->leader is set. Move the test into disassociate_ctty() as that will make locking changes easier in a bit Signed-off-by: Alan Cox <alan@linux.intel.com> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
This commit is contained in:
parent
38c70b27f9
commit
5ec93d1154
2 changed files with 4 additions and 3 deletions
|
@ -707,6 +707,8 @@ void disassociate_ctty(int on_exit)
|
|||
struct tty_struct *tty;
|
||||
struct pid *tty_pgrp = NULL;
|
||||
|
||||
if (!current->signal->leader)
|
||||
return;
|
||||
|
||||
tty = get_current_tty();
|
||||
if (tty) {
|
||||
|
@ -772,8 +774,7 @@ void no_tty(void)
|
|||
{
|
||||
struct task_struct *tsk = current;
|
||||
lock_kernel();
|
||||
if (tsk->signal->leader)
|
||||
disassociate_ctty(0);
|
||||
disassociate_ctty(0);
|
||||
unlock_kernel();
|
||||
proc_clear_tty(tsk);
|
||||
}
|
||||
|
|
|
@ -971,7 +971,7 @@ NORET_TYPE void do_exit(long code)
|
|||
exit_thread();
|
||||
cgroup_exit(tsk, 1);
|
||||
|
||||
if (group_dead && tsk->signal->leader)
|
||||
if (group_dead)
|
||||
disassociate_ctty(1);
|
||||
|
||||
module_put(task_thread_info(tsk)->exec_domain->module);
|
||||
|
|
Loading…
Reference in a new issue