initialize_acct_integrals

From: Jay Lan
Date: Fri Feb 18 2005 - 09:16:53 EST


Hi Andrew,

The new "move-accounting-function-calls-out-of-critical-vm-code-paths"
patch in 2.6.11-rc3-mm2 was different from the code i tested.

In particular, it mistakenly dropped the accounting routine calls
in fs/exec.c. The calls in do_execve() are needed to properly
initialize accounting fields. Specifically, the tsk->acct_stimexpd
needs to be initialized to tsk->stime.

I have discussed this with Christoph Lameter and he gave me full
blessings to bring the calls back.

This initialize_acct_integrals patch was generated against
2.6.11-rc3-mm2 to fix the problem. Thanks!

Signed-off-by: Jay Lan <jlan@xxxxxxx>

Index: linux/fs/exec.c
===================================================================
--- linux.orig/fs/exec.c 2005-02-17 19:24:45.785343748 -0800
+++ linux/fs/exec.c 2005-02-18 05:45:19.868493728 -0800
@@ -1193,6 +1193,8 @@ int do_execve(char * filename,

/* execve success */
security_bprm_free(bprm);
+ acct_update_integrals(current);
+ update_mem_hiwater(current);
kfree(bprm);
return retval;
}