X-Git-Url: http://git.onelab.eu/?a=blobdiff_plain;f=fs%2Fbinfmt_som.c;h=7ce202f004c448913efed9251c6a63ad7f62cd3b;hb=6a77f38946aaee1cd85eeec6cf4229b204c15071;hp=cabf3ccc09e28eac2a0f5a79ffa087a0f5a4d414;hpb=5273a3df6485dc2ad6aa7ddd441b9a21970f003b;p=linux-2.6.git diff --git a/fs/binfmt_som.c b/fs/binfmt_som.c index cabf3ccc0..7ce202f00 100644 --- a/fs/binfmt_som.c +++ b/fs/binfmt_som.c @@ -28,6 +28,7 @@ #include #include #include +#include #include #include @@ -254,12 +255,13 @@ load_som_binary(struct linux_binprm * bprm, struct pt_regs * regs) set_binfmt(&som_format); compute_creds(bprm); - setup_arg_pages(bprm, EXSTACK_DEFAULT); + setup_arg_pages(bprm, STACK_TOP, EXSTACK_DEFAULT); create_som_tables(bprm); current->mm->start_stack = bprm->p; - current->mm->rss = 0; + // current->mm->rss = 0; + vx_rsspages_sub(current->mm, current->mm->rss); #if 0 printk("(start_brk) %08lx\n" , (unsigned long) current->mm->start_brk); @@ -305,5 +307,5 @@ static void __exit exit_som_binfmt(void) unregister_binfmt(&som_format); } -module_init(init_som_binfmt); +core_initcall(init_som_binfmt); module_exit(exit_som_binfmt);