Hello Oleg, On Wed, 2010-12-08 at 21:23 +0100, Oleg Nesterov wrote: > Oh, sorry for the delay. Again ;) No problem, I know this can be exhausting ;-) > On 12/02, Michael Holzheu wrote: > > When the last thread exits and the process/thread group dies, > > taskstats_exit() sends an additional taskstats struct to userspace that > > aggregates the thread accounting data. Currently only the delay > > accounting data is aggregated (see > > taskstats_exit->fill_tgid_exit->delayacct_add_tsk). Not sure, why the > > other information is not aggregated. We perhaps also should include > > ac_cXtime in the aggregated taskstats. > > Not sure I understand... Do you mean > > if (is_thread_group) > fill_tgid_exit(tsk); > > ? Afaics, this is not "When the last thread exits", this is > "this program is multithreaded, it has (or had) other threads". fill_tgid_exit() adds the data of the dying thread to the thread group data (tsk->signal->stats). Currently only for delay accounting. But the accumulated data is sent to userspace only after the last thread has died: if (!is_thread_group || >>>!group_dead<<<) goto send; stats = mk_reply(rep_skb, TASKSTATS_TYPE_TGID, tsk->tgid); if (!stats) goto err; Michael -- To unsubscribe from this list: send the line "unsubscribe linux-s390" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html