|
Line
Link Here
|
| 0 |
-- a/fs/exec.c |
0 |
++ b/fs/exec.c |
|
Lines 649-654
static inline int de_thread(struct task_
Link Here
|
| 649 |
} |
649 |
} |
| 650 |
sig->group_exit_task = NULL; |
650 |
sig->group_exit_task = NULL; |
| 651 |
sig->notify_count = 0; |
651 |
sig->notify_count = 0; |
|
|
652 |
sig->real_timer.data = (unsigned long)current; |
| 652 |
spin_unlock_irq(lock); |
653 |
spin_unlock_irq(lock); |
| 653 |
|
654 |
|
| 654 |
/* |
655 |
/* |
|
Lines 675-684
static inline int de_thread(struct task_
Link Here
|
| 675 |
proc_dentry2 = proc_pid_unhash(leader); |
676 |
proc_dentry2 = proc_pid_unhash(leader); |
| 676 |
write_lock_irq(&tasklist_lock); |
677 |
write_lock_irq(&tasklist_lock); |
| 677 |
|
678 |
|
| 678 |
if (leader->tgid != current->tgid) |
679 |
BUG_ON(leader->tgid != current->tgid); |
| 679 |
BUG(); |
680 |
BUG_ON(current->pid == current->tgid); |
| 680 |
if (current->pid == current->tgid) |
|
|
| 681 |
BUG(); |
| 682 |
/* |
681 |
/* |
| 683 |
* An exec() starts a new thread group with the |
682 |
* An exec() starts a new thread group with the |
| 684 |
* TGID of the previous thread group. Rehash the |
683 |
* TGID of the previous thread group. Rehash the |
|
Lines 726-733
static inline int de_thread(struct task_
Link Here
|
| 726 |
proc_pid_flush(proc_dentry1); |
725 |
proc_pid_flush(proc_dentry1); |
| 727 |
proc_pid_flush(proc_dentry2); |
726 |
proc_pid_flush(proc_dentry2); |
| 728 |
|
727 |
|
| 729 |
if (exit_state != EXIT_ZOMBIE) |
728 |
BUG_ON(exit_state != EXIT_ZOMBIE); |
| 730 |
BUG(); |
|
|
| 731 |
release_task(leader); |
729 |
release_task(leader); |
| 732 |
} |
730 |
} |
| 733 |
|
731 |
|
|
Lines 772-781
no_thread_group:
Link Here
|
| 772 |
kmem_cache_free(sighand_cachep, oldsighand); |
770 |
kmem_cache_free(sighand_cachep, oldsighand); |
| 773 |
} |
771 |
} |
| 774 |
|
772 |
|
| 775 |
if (!thread_group_empty(current)) |
773 |
BUG_ON(!thread_group_empty(current)); |
| 776 |
BUG(); |
774 |
BUG_ON(!thread_group_leader(current)); |
| 777 |
if (!thread_group_leader(current)) |
|
|
| 778 |
BUG(); |
| 779 |
return 0; |
775 |
return 0; |
| 780 |
} |
776 |
} |
| 781 |
|
777 |
|