diff options
author | Konstantin Khlebnikov | 2019-07-12 06:00:03 +0200 |
---|---|---|
committer | Linus Torvalds | 2019-07-12 20:05:47 +0200 |
commit | cd9e2bb8271c971d9f37c722be2616c7f8ba0664 (patch) | |
tree | 41ea398dcd5f98cc8dedabc651fec3932d08578e /drivers/atm/lanai.c | |
parent | proc: use down_read_killable mmap_sem for /proc/pid/clear_refs (diff) | |
download | kernel-qcow2-linux-cd9e2bb8271c971d9f37c722be2616c7f8ba0664.tar.gz kernel-qcow2-linux-cd9e2bb8271c971d9f37c722be2616c7f8ba0664.tar.xz kernel-qcow2-linux-cd9e2bb8271c971d9f37c722be2616c7f8ba0664.zip |
proc: use down_read_killable mmap_sem for /proc/pid/map_files
Do not remain stuck forever if something goes wrong. Using a killable
lock permits cleanup of stuck tasks and simplifies investigation.
It seems ->d_revalidate() could return any error (except ECHILD) to abort
validation and pass error as result of lookup sequence.
[akpm@linux-foundation.org: fix proc_map_files_lookup() return value, per Andrei]
Link: http://lkml.kernel.org/r/156007493995.3335.9595044802115356911.stgit@buzz
Signed-off-by: Konstantin Khlebnikov <khlebnikov@yandex-team.ru>
Reviewed-by: Roman Gushchin <guro@fb.com>
Reviewed-by: Cyrill Gorcunov <gorcunov@gmail.com>
Reviewed-by: Kirill Tkhai <ktkhai@virtuozzo.com>
Acked-by: Michal Hocko <mhocko@suse.com>
Cc: Alexey Dobriyan <adobriyan@gmail.com>
Cc: Al Viro <viro@zeniv.linux.org.uk>
Cc: Matthew Wilcox <willy@infradead.org>
Cc: Michal Koutný <mkoutny@suse.com>
Cc: Oleg Nesterov <oleg@redhat.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Diffstat (limited to 'drivers/atm/lanai.c')
0 files changed, 0 insertions, 0 deletions