Re: [PATCH 7/8] taskstats: fix stats->ac_exitcode to work on threads and use group_exit_code
Le Wed, 26 Sep 2007 22:47:54 +0200, roel <[EMAIL PROTECTED]> a écrit : > > + if (thread_group_leader(tsk) && ((tsk->flags & PF_FORKNOEXEC))) > > if (thread_group_leader(tsk) && (tsk->flags & PF_FORKNOEXEC)) Yeah, right, good catch. > > + group_exit_code = tg_stats ? tsk->signal->group_exit_code : 0; > > + stats->ac_exitcode = group_exit_code ? : tsk->exit_code; > > Isn't this just confusing? why not > > if (tg_stats) { > group_exit_code = tsk->signal->group_exit_code; > stats->ac_exitcode = group_exit_code; Because in this case if group_exit_code is null, we want tsk->exit_code, not 0. > > } else { > group_exit_code = 0; > stats->ac_exitcode = tsk->exit_code; > } Andrew is not interested at the moment in this series (that replaces all my previous patches on taskstats, for info), but thank you for the review. -- Guillaume - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
Re: [PATCH 7/8] taskstats: fix stats->ac_exitcode to work on threads and use group_exit_code
Guillaume Chazarain wrote: [...] > @@ -65,13 +65,15 @@ void bacct_add_tsk(struct taskstats *stats, struct > task_struct *tsk) > void bacct_fill_threadgroup(struct taskstats *stats, struct task_struct *tsk, > bool tg_stats) > { > + int group_exit_code; > + > fill_wall_times(stats, tsk); > > - if (thread_group_leader(tsk)) { > - stats->ac_exitcode = tsk->exit_code; > - if (tsk->flags & PF_FORKNOEXEC) > - stats->ac_flag |= AFORK; > - } > + if (thread_group_leader(tsk) && ((tsk->flags & PF_FORKNOEXEC))) if (thread_group_leader(tsk) && (tsk->flags & PF_FORKNOEXEC)) > + stats->ac_flag |= AFORK; > + > + group_exit_code = tg_stats ? tsk->signal->group_exit_code : 0; > + stats->ac_exitcode = group_exit_code ? : tsk->exit_code; Isn't this just confusing? why not if (tg_stats) { group_exit_code = tsk->signal->group_exit_code; stats->ac_exitcode = group_exit_code; } else { group_exit_code = 0; stats->ac_exitcode = tsk->exit_code; } - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
Re: [PATCH 7/8] taskstats: fix stats-ac_exitcode to work on threads and use group_exit_code
Guillaume Chazarain wrote: [...] @@ -65,13 +65,15 @@ void bacct_add_tsk(struct taskstats *stats, struct task_struct *tsk) void bacct_fill_threadgroup(struct taskstats *stats, struct task_struct *tsk, bool tg_stats) { + int group_exit_code; + fill_wall_times(stats, tsk); - if (thread_group_leader(tsk)) { - stats-ac_exitcode = tsk-exit_code; - if (tsk-flags PF_FORKNOEXEC) - stats-ac_flag |= AFORK; - } + if (thread_group_leader(tsk) ((tsk-flags PF_FORKNOEXEC))) if (thread_group_leader(tsk) (tsk-flags PF_FORKNOEXEC)) + stats-ac_flag |= AFORK; + + group_exit_code = tg_stats ? tsk-signal-group_exit_code : 0; + stats-ac_exitcode = group_exit_code ? : tsk-exit_code; Isn't this just confusing? why not if (tg_stats) { group_exit_code = tsk-signal-group_exit_code; stats-ac_exitcode = group_exit_code; } else { group_exit_code = 0; stats-ac_exitcode = tsk-exit_code; } - To unsubscribe from this list: send the line unsubscribe linux-kernel in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
Re: [PATCH 7/8] taskstats: fix stats-ac_exitcode to work on threads and use group_exit_code
Le Wed, 26 Sep 2007 22:47:54 +0200, roel [EMAIL PROTECTED] a écrit : + if (thread_group_leader(tsk) ((tsk-flags PF_FORKNOEXEC))) if (thread_group_leader(tsk) (tsk-flags PF_FORKNOEXEC)) Yeah, right, good catch. + group_exit_code = tg_stats ? tsk-signal-group_exit_code : 0; + stats-ac_exitcode = group_exit_code ? : tsk-exit_code; Isn't this just confusing? why not if (tg_stats) { group_exit_code = tsk-signal-group_exit_code; stats-ac_exitcode = group_exit_code; Because in this case if group_exit_code is null, we want tsk-exit_code, not 0. } else { group_exit_code = 0; stats-ac_exitcode = tsk-exit_code; } Andrew is not interested at the moment in this series (that replaces all my previous patches on taskstats, for info), but thank you for the review. -- Guillaume - To unsubscribe from this list: send the line unsubscribe linux-kernel in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/