On Mon, Feb 8, 2010 at 2:05 PM, KOSAKI Motohiro <kosaki.motohiro@xxxxxxxxxxxxxx> wrote: >> --- linux-2.6-ozlabs.orig/fs/exec.c >> +++ linux-2.6-ozlabs/fs/exec.c >> @@ -627,10 +627,13 @@ int setup_arg_pages(struct linux_binprm >> goto out_unlock; >> } >> >> + stack_base = min(EXTRA_STACK_VM_PAGES * PAGE_SIZE, >> + current->signal->rlim[RLIMIT_STACK].rlim_cur - >> + PAGE_SIZE); > > This line is a bit unclear why "- PAGE_SIZE" is necessary. > personally, I like following likes explicit comments. > > stack_expand = EXTRA_STACK_VM_PAGES * PAGE_SIZE; > stack_lim = ACCESS_ONCE(rlim[RLIMIT_STACK].rlim_cur); > > /* Initial stack must not cause stack overflow. */ > if (stack_expand + PAGE_SIZE > stack_lim) > stack_expand = stack_lim - PAGE_SIZE; > > note: accessing rlim_cur require ACCESS_ONCE. > > > Thought? It's better to use the helper function: rlimit(). -- To unsubscribe from this list: send the line "unsubscribe linux-fsdevel" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html