aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorChuck Lever <chuck.lever@oracle.com>2021-09-08 10:51:56 -0400
committerChuck Lever <chuck.lever@oracle.com>2022-05-17 11:33:04 -0400
commit813e2aeba3c59b3bc0137652af48800923addbdb (patch)
treecc66642ee3e8bfa6615952cf0d46162dcaee31e6
parentdc6446963ee4e733a0bf173f2352959e634f9715 (diff)
docs: Add notes about new RDMA core fault injection attributestopic-rdma-fault-injection
Signed-off-by: Chuck Lever <chuck.lever@oracle.com>
-rw-r--r--Documentation/fault-injection/fault-injection.rst69
1 files changed, 69 insertions, 0 deletions
diff --git a/Documentation/fault-injection/fault-injection.rst b/Documentation/fault-injection/fault-injection.rst
index 4a25c5eb6f0726..b23d90e6393aa3 100644
--- a/Documentation/fault-injection/fault-injection.rst
+++ b/Documentation/fault-injection/fault-injection.rst
@@ -52,6 +52,12 @@ Available fault injection capabilities
status code is NVME_SC_INVALID_OPCODE with no retry. The status code and
retry flag can be set via the debugfs.
+- fail_rdma_verbs
+
+ injects flushed completions or immediate errors when posting Work
+ Requests, or triggers failures of QP state modification or when
+ creating MRs.
+
Configure fault-injection capabilities behavior
-----------------------------------------------
@@ -169,6 +175,69 @@ configuration of fault-injection capabilities.
default is 'N', setting it to 'Y' will disable disconnect
injection on the RPC server.
+- /sys/kernel/debug/fail_rdma_verbs/opcode-filter:
+
+ specifies a particular Send WR opcode to target when
+ injecting errors. The opcode is set by echoing an integer
+ into this file. The filtered opcode is displayed
+ symbolically when catting the file.
+
+ Default is to inject flush errors only on Send WRs.
+
+- /sys/kernel/debug/fail_rdma_verbs/ignore-post-send:
+
+ Format: { 'Y' | 'N' }
+
+ default is 'N', setting it to 'Y' prevents errors from
+ being injected on Send Queues.
+
+- /sys/kernel/debug/fail_rdma_verbs/ignore-post-recv:
+
+ Format: { 'Y' | 'N' }
+
+ default is 'N', setting it to 'Y' prevents errors from
+ being injected on Receive Queues.
+
+- /sys/kernel/debug/fail_rdma_verbs/ignore-immediate:
+
+ Format: { 'Y' | 'N' }
+
+ default is 'N', setting it to 'Y' prevents the injection
+ of immediate errors.
+
+- /sys/kernel/debug/fail_rdma_verbs/ignore-flush:
+
+ Format: { 'Y' | 'N' }
+
+ default is 'N', setting it to 'Y' prevents the injection
+ of flushed completions.
+
+ Note that Receive WRs that are corrupted via fault injection
+ remain until they complete or are drained. Receive completion
+ can occur long _after_ fault injection for ib_post_recv() has
+ been disabled.
+
+- /sys/kernel/debug/fail_rdma_verbs/ignore-alloc-mr:
+
+ Format: { 'Y' | 'N' }
+
+ default is 'N', setting it to 'Y' prevents the injection
+ of errors when allocating MRs.
+
+- /sys/kernel/debug/fail_rdma_verbs/ignore-modify-qp:
+
+ Format: { 'Y' | 'N' }
+
+ default is 'N', setting it to 'Y' prevents the injection
+ of errors when modifying QP state.
+
+- /sys/kernel/debug/fail_rdma_verbs/ignore-cq-errors:
+
+ Format: { 'Y' | 'N' }
+
+ default is 'N', setting it to 'Y' prevents the injection
+ of CQ errors when posting Send and Receive WRs.
+
- /sys/kernel/debug/fail_function/inject:
Format: { 'function-name' | '!function-name' | '' }