On 10/20, Leon Yu wrote: > > --- a/fs/proc/base.c > +++ b/fs/proc/base.c > @@ -1014,6 +1014,9 @@ static ssize_t auxv_read(struct file *file, char __user > *buf, > { > struct mm_struct *mm = file->private_data; > unsigned int nwords = 0; > + > + if (!mm) > + return 0; > do { > nwords += 2; > } while (mm->saved_auxv[nwords - 2] != 0); /* AT_NULL */
Michal disagrees and I won't argue with his patch which makes __mem_open() fail if ->mm == NULL. Even if I don't really understand why should we change the old behaviour, this _can_ break or at least confuse something/someone. However, even if we do the change above, personally I do think we should fix the trivial bug first, then surprise the user-space. Acked-by: Oleg Nesterov <o...@redhat.com>