summaryrefslogtreecommitdiffstats
path: root/mm/filemap.c
diff options
context:
space:
mode:
authorKOSAKI Motohiro <kosaki.motohiro@jp.fujitsu.com>2009-05-28 14:34:21 -0700
committerLinus Torvalds <torvalds@linux-foundation.org>2009-05-29 08:40:02 -0700
commitbd6daba909d8484bd2ccf6017db4028d7a420927 (patch)
treee5c5fa2ddb9b3658a24c15ca4050c71f68dc634f /mm/filemap.c
parentb2e1feaf0af6b8a826b86748a19ddc2013ab7dbd (diff)
downloadlinux-bd6daba909d8484bd2ccf6017db4028d7a420927.tar.gz
linux-bd6daba909d8484bd2ccf6017db4028d7a420927.tar.bz2
linux-bd6daba909d8484bd2ccf6017db4028d7a420927.zip
procfs: make errno values consistent when open pident vs exit(2) race occurs
proc_pident_instantiate() has following call flow. proc_pident_lookup() proc_pident_instantiate() proc_pid_make_inode() And, proc_pident_lookup() has following error handling. const struct pid_entry *p, *last; error = ERR_PTR(-ENOENT); if (!task) goto out_no_task; Then, proc_pident_instantiate should return ENOENT too when racing against exit(2) occur. EINAL has two bad reason. - it implies caller is wrong. bad the race isn't caller's mistake. - man 2 open don't explain EINVAL. user often don't handle it. Note: Other proc_pid_make_inode() caller already use ENOENT properly. Acked-by: Eric W. Biederman <ebiederm@xmission.com> Cc: Alexey Dobriyan <adobriyan@gmail.com> Signed-off-by: KOSAKI Motohiro <kosaki.motohiro@jp.fujitsu.com> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Diffstat (limited to 'mm/filemap.c')
0 files changed, 0 insertions, 0 deletions