diff --git a/[refs] b/[refs] index 55546d9e2027..6d63aa964316 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: bb188d7e64deb0e9cf13a99f44ae0065de5352d6 +refs/heads/master: 961c4675c75112717705fa5c0c53cb9664051479 diff --git a/trunk/kernel/exit.c b/trunk/kernel/exit.c index b8d3b47bb881..6c7fbbe7d86f 100644 --- a/trunk/kernel/exit.c +++ b/trunk/kernel/exit.c @@ -266,18 +266,16 @@ int is_current_pgrp_orphaned(void) return retval; } -static int has_stopped_jobs(struct pid *pgrp) +static bool has_stopped_jobs(struct pid *pgrp) { - int retval = 0; struct task_struct *p; do_each_pid_task(pgrp, PIDTYPE_PGID, p) { - if (!task_is_stopped(p)) - continue; - retval = 1; - break; + if (p->signal->flags & SIGNAL_STOP_STOPPED) + return true; } while_each_pid_task(pgrp, PIDTYPE_PGID, p); - return retval; + + return false; } /*