> On Mon Aug 20 20:44:13 2007,
balbir@linux.vnet.ibm.com wrote:
>> Jonathan Lim wrote:
>>> taskstats.ac_exitcode is assigned to task_struct.exit_code in
>>> bacct_add_tsk() through the following kernel function calls:
>>>
>>> do_exit()
>>> taskstats_exit_send()
>>> fill_pid()
>>> bacct_add_tsk()
>>>
>>> The problem is that in do_exit(), task_struct.exit_code is set to 'code'
>>> only after taskstats_exit_send() has been called. So we need to send
>>> 'code' through to bacct_add_tsk().
>> Hi, Jonathan,
>>
>> The patches look like a step in the right direction, I would suggest an
>> alternate implementation
>>
>> Why can't we assign tsk->exit_code to code earlier? Can we not move up the
>> assignment to before taskstats_exit()? Wouldn't that be much simpler?
>
> Hi Balbir,
>
> That was what I wanted to do at first, but there was some concern over whether
> it would affect any of the intervening function calls. If there's no
> particular reason why the tsk->exit_code assignment is placed where it's at
> now, then yes, I would much rather move it to before taskstats_exit().
>
> I looked at the following functions involving tsk:
>
> exit_mm
> mm_release
> deactivate_mm
> exit_sem
> __exit_files
> __exit_fs
> cpuset_exit
> exit_keys
>
> and don't see anything that setting exit_code would affect. What do you think?
>