diff options
author | KaiGai Kohei <kaigai@ak.jp.nec.com> | 2006-06-25 05:49:25 -0700 |
---|---|---|
committer | Linus Torvalds <torvalds@g5.osdl.org> | 2006-06-25 10:01:25 -0700 |
commit | f6ec29a42d7ac3b309a9cef179b686d23986ab98 (patch) | |
tree | 5150d4f403833ac18b468bd0e0e0a9a7cdd9f4be /include/linux/sched.h | |
parent | 0e4648141af02331f21aabcd34940c70f09a2d04 (diff) | |
download | kernel_goldelico_gta04-f6ec29a42d7ac3b309a9cef179b686d23986ab98.zip kernel_goldelico_gta04-f6ec29a42d7ac3b309a9cef179b686d23986ab98.tar.gz kernel_goldelico_gta04-f6ec29a42d7ac3b309a9cef179b686d23986ab98.tar.bz2 |
[PATCH] pacct: avoidance to refer the last thread as a representation of the process
When pacct facility generate an 'ac_flag' field in accounting record, it
refers a task_struct of the thread which died last in the process. But any
other task_structs are ignored.
Therefore, pacct facility drops ASU flag even if root-privilege operations are
used by any other threads except the last one. In addition, AFORK flag is
always set when the thread of group-leader didn't die last, although this
process has called execve() after fork().
We have a same matter in ac_exitcode. The recorded ac_exitcode is an exit
code of the last thread in the process. There is a possibility this exitcode
is not the group leader's one.
Diffstat (limited to 'include/linux/sched.h')
-rw-r--r-- | include/linux/sched.h | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/include/linux/sched.h b/include/linux/sched.h index abada7c..d8429dc 100644 --- a/include/linux/sched.h +++ b/include/linux/sched.h @@ -359,6 +359,8 @@ struct sighand_struct { }; struct pacct_struct { + int ac_flag; + long ac_exitcode; unsigned long ac_mem; }; |