summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAkinobu Mita2017-07-14 23:50:00 +0200
committerLinus Torvalds2017-07-15 00:05:13 +0200
commit168c42bc56d8d47f67f2a5206506cd4ba3c18475 (patch)
tree7e82690179b0b796505e493452f04c60df3613d9
parentfault-inject: simplify access check for fail-nth (diff)
downloadkernel-qcow2-linux-168c42bc56d8d47f67f2a5206506cd4ba3c18475.tar.gz
kernel-qcow2-linux-168c42bc56d8d47f67f2a5206506cd4ba3c18475.tar.xz
kernel-qcow2-linux-168c42bc56d8d47f67f2a5206506cd4ba3c18475.zip
fault-inject: add /proc/<pid>/fail-nth
fail-nth interface is only created in /proc/self/task/<current-tid>/. This change also adds it in /proc/<pid>/. This makes shell based tool a bit simpler. $ bash -c "builtin echo 100 > /proc/self/fail-nth && exec ls /" Link: http://lkml.kernel.org/r/1491490561-10485-6-git-send-email-akinobu.mita@gmail.com Signed-off-by: Akinobu Mita <akinobu.mita@gmail.com> Cc: Dmitry Vyukov <dvyukov@google.com> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
-rw-r--r--Documentation/fault-injection/fault-injection.txt3
-rw-r--r--fs/proc/base.c1
2 files changed, 3 insertions, 1 deletions
diff --git a/Documentation/fault-injection/fault-injection.txt b/Documentation/fault-injection/fault-injection.txt
index 370ddcbc2b44..918972babcd8 100644
--- a/Documentation/fault-injection/fault-injection.txt
+++ b/Documentation/fault-injection/fault-injection.txt
@@ -136,7 +136,8 @@ use the boot option:
o proc entries
-- /proc/self/task/<current-tid>/fail-nth:
+- /proc/<pid>/fail-nth:
+- /proc/self/task/<tid>/fail-nth:
Write to this file of integer N makes N-th call in the task fail.
Read from this file returns a integer value. A value of '0' indicates
diff --git a/fs/proc/base.c b/fs/proc/base.c
index 872a3f28bfe4..719c2e943ea1 100644
--- a/fs/proc/base.c
+++ b/fs/proc/base.c
@@ -2962,6 +2962,7 @@ static const struct pid_entry tgid_base_stuff[] = {
#endif
#ifdef CONFIG_FAULT_INJECTION
REG("make-it-fail", S_IRUGO|S_IWUSR, proc_fault_inject_operations),
+ REG("fail-nth", 0644, proc_fail_nth_operations),
#endif
#ifdef CONFIG_ELF_CORE
REG("coredump_filter", S_IRUGO|S_IWUSR, proc_coredump_filter_operations),