summaryrefslogtreecommitdiffstats
path: root/kernel/cpu.c
diff options
context:
space:
mode:
authorAl Viro2014-08-07 13:51:03 +0200
committerAl Viro2014-08-07 20:40:08 +0200
commitb8f00e6be46f4c9a112e05fd692712873c4c4048 (patch)
treef37aaef1d0fdfd9649f3ab14ee09de5f7100030d /kernel/cpu.c
parentacct: serialize acct_on() (diff)
downloadkernel-qcow2-linux-b8f00e6be46f4c9a112e05fd692712873c4c4048.tar.gz
kernel-qcow2-linux-b8f00e6be46f4c9a112e05fd692712873c4c4048.tar.xz
kernel-qcow2-linux-b8f00e6be46f4c9a112e05fd692712873c4c4048.zip
acct: new lifetime rules
Do not reuse bsd_acct_struct after closing the damn thing. Structure lifetime is controlled by refcount now. We also have a mutex in there, held over closing and writing (the file is O_APPEND, so we are not losing any concurrency). As the result, we do not need to bother with get_file()/fput() on log write anymore. Moreover, do_acct_process() only needs acct itself; file and pidns are picked from it. Killed instances are distinguished by having NULL ->ns. Refcount is protected by acct_lock; anybody taking the mutex needs to grab a reference first. The things will get a lot simpler in the next commits - this is just the minimal chunk switching to the new lifetime rules. Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Diffstat (limited to 'kernel/cpu.c')
0 files changed, 0 insertions, 0 deletions