Loading Documentation/ABI/stable/sysfs-driver-ib_srp +19 −6 Original line number Original line Diff line number Diff line Loading @@ -55,12 +55,12 @@ Description: Interface for making ib_srp connect to a new target. only safe with partial memory descriptor list support enabled only safe with partial memory descriptor list support enabled (allow_ext_sg=1). (allow_ext_sg=1). * comp_vector, a number in the range 0..n-1 specifying the * comp_vector, a number in the range 0..n-1 specifying the MSI-X completion vector. Some HCA's allocate multiple (n) MSI-X completion vector of the first RDMA channel. Some MSI-X vectors per HCA port. If the IRQ affinity masks of HCA's allocate multiple (n) MSI-X vectors per HCA port. If these interrupts have been configured such that each MSI-X the IRQ affinity masks of these interrupts have been interrupt is handled by a different CPU then the comp_vector configured such that each MSI-X interrupt is handled by a parameter can be used to spread the SRP completion workload different CPU then the comp_vector parameter can be used to over multiple CPU's. spread the SRP completion workload over multiple CPU's. * tl_retry_count, a number in the range 2..7 specifying the * tl_retry_count, a number in the range 2..7 specifying the IB RC retry count. IB RC retry count. * queue_size, the maximum number of commands that the * queue_size, the maximum number of commands that the Loading Loading @@ -88,6 +88,13 @@ Description: Whether ib_srp is allowed to include a partial memory descriptor list in an SRP_CMD when communicating with an SRP descriptor list in an SRP_CMD when communicating with an SRP target. target. What: /sys/class/scsi_host/host<n>/ch_count Date: April 1, 2015 KernelVersion: 3.19 Contact: linux-rdma@vger.kernel.org Description: Number of RDMA channels used for communication with the SRP target. What: /sys/class/scsi_host/host<n>/cmd_sg_entries What: /sys/class/scsi_host/host<n>/cmd_sg_entries Date: May 19, 2011 Date: May 19, 2011 KernelVersion: 2.6.39 KernelVersion: 2.6.39 Loading @@ -95,6 +102,12 @@ Contact: linux-rdma@vger.kernel.org Description: Maximum number of data buffer descriptors that may be sent to Description: Maximum number of data buffer descriptors that may be sent to the target in a single SRP_CMD request. the target in a single SRP_CMD request. What: /sys/class/scsi_host/host<n>/comp_vector Date: September 2, 2013 KernelVersion: 3.11 Contact: linux-rdma@vger.kernel.org Description: Completion vector used for the first RDMA channel. What: /sys/class/scsi_host/host<n>/dgid What: /sys/class/scsi_host/host<n>/dgid Date: June 17, 2006 Date: June 17, 2006 KernelVersion: 2.6.17 KernelVersion: 2.6.17 Loading Documentation/RCU/rcu.txt +2 −2 Original line number Original line Diff line number Diff line Loading @@ -36,7 +36,7 @@ o How can the updater tell when a grace period has completed executed in user mode, or executed in the idle loop, we can executed in user mode, or executed in the idle loop, we can safely free up that item. safely free up that item. Preemptible variants of RCU (CONFIG_TREE_PREEMPT_RCU) get the Preemptible variants of RCU (CONFIG_PREEMPT_RCU) get the same effect, but require that the readers manipulate CPU-local same effect, but require that the readers manipulate CPU-local counters. These counters allow limited types of blocking within counters. These counters allow limited types of blocking within RCU read-side critical sections. SRCU also uses CPU-local RCU read-side critical sections. SRCU also uses CPU-local Loading Loading @@ -81,7 +81,7 @@ o I hear that RCU is patented? What is with that? o I hear that RCU needs work in order to support realtime kernels? o I hear that RCU needs work in order to support realtime kernels? This work is largely completed. Realtime-friendly RCU can be This work is largely completed. Realtime-friendly RCU can be enabled via the CONFIG_TREE_PREEMPT_RCU kernel configuration enabled via the CONFIG_PREEMPT_RCU kernel configuration parameter. However, work is in progress for enabling priority parameter. However, work is in progress for enabling priority boosting of preempted RCU read-side critical sections. This is boosting of preempted RCU read-side critical sections. This is needed if you have CPU-bound realtime threads. needed if you have CPU-bound realtime threads. Loading Documentation/RCU/stallwarn.txt +4 −10 Original line number Original line Diff line number Diff line Loading @@ -26,12 +26,6 @@ CONFIG_RCU_CPU_STALL_TIMEOUT Stall-warning messages may be enabled and disabled completely via Stall-warning messages may be enabled and disabled completely via /sys/module/rcupdate/parameters/rcu_cpu_stall_suppress. /sys/module/rcupdate/parameters/rcu_cpu_stall_suppress. CONFIG_RCU_CPU_STALL_VERBOSE This kernel configuration parameter causes the stall warning to also dump the stacks of any tasks that are blocking the current RCU-preempt grace period. CONFIG_RCU_CPU_STALL_INFO CONFIG_RCU_CPU_STALL_INFO This kernel configuration parameter causes the stall warning to This kernel configuration parameter causes the stall warning to Loading Loading @@ -77,7 +71,7 @@ This message indicates that CPU 5 detected that it was causing a stall, and that the stall was affecting RCU-sched. This message will normally be and that the stall was affecting RCU-sched. This message will normally be followed by a stack dump of the offending CPU. On TREE_RCU kernel builds, followed by a stack dump of the offending CPU. On TREE_RCU kernel builds, RCU and RCU-sched are implemented by the same underlying mechanism, RCU and RCU-sched are implemented by the same underlying mechanism, while on TREE_PREEMPT_RCU kernel builds, RCU is instead implemented while on PREEMPT_RCU kernel builds, RCU is instead implemented by rcu_preempt_state. by rcu_preempt_state. On the other hand, if the offending CPU fails to print out a stall-warning On the other hand, if the offending CPU fails to print out a stall-warning Loading @@ -89,7 +83,7 @@ INFO: rcu_bh_state detected stalls on CPUs/tasks: { 3 5 } (detected by 2, 2502 j This message indicates that CPU 2 detected that CPUs 3 and 5 were both This message indicates that CPU 2 detected that CPUs 3 and 5 were both causing stalls, and that the stall was affecting RCU-bh. This message causing stalls, and that the stall was affecting RCU-bh. This message will normally be followed by stack dumps for each CPU. Please note that will normally be followed by stack dumps for each CPU. Please note that TREE_PREEMPT_RCU builds can be stalled by tasks as well as by CPUs, PREEMPT_RCU builds can be stalled by tasks as well as by CPUs, and that the tasks will be indicated by PID, for example, "P3421". and that the tasks will be indicated by PID, for example, "P3421". It is even possible for a rcu_preempt_state stall to be caused by both It is even possible for a rcu_preempt_state stall to be caused by both CPUs -and- tasks, in which case the offending CPUs and tasks will all CPUs -and- tasks, in which case the offending CPUs and tasks will all Loading Loading @@ -205,10 +199,10 @@ o A CPU-bound real-time task in a CONFIG_PREEMPT kernel, which might o A CPU-bound real-time task in a CONFIG_PREEMPT_RT kernel that o A CPU-bound real-time task in a CONFIG_PREEMPT_RT kernel that is running at a higher priority than the RCU softirq threads. is running at a higher priority than the RCU softirq threads. This will prevent RCU callbacks from ever being invoked, This will prevent RCU callbacks from ever being invoked, and in a CONFIG_TREE_PREEMPT_RCU kernel will further prevent and in a CONFIG_PREEMPT_RCU kernel will further prevent RCU grace periods from ever completing. Either way, the RCU grace periods from ever completing. Either way, the system will eventually run out of memory and hang. In the system will eventually run out of memory and hang. In the CONFIG_TREE_PREEMPT_RCU case, you might see stall-warning CONFIG_PREEMPT_RCU case, you might see stall-warning messages. messages. o A hardware or software issue shuts off the scheduler-clock o A hardware or software issue shuts off the scheduler-clock Loading Documentation/RCU/trace.txt +2 −2 Original line number Original line Diff line number Diff line Loading @@ -8,7 +8,7 @@ The following sections describe the debugfs files and formats, first for rcutree and next for rcutiny. for rcutree and next for rcutiny. CONFIG_TREE_RCU and CONFIG_TREE_PREEMPT_RCU debugfs Files and Formats CONFIG_TREE_RCU and CONFIG_PREEMPT_RCU debugfs Files and Formats These implementations of RCU provide several debugfs directories under the These implementations of RCU provide several debugfs directories under the top-level directory "rcu": top-level directory "rcu": Loading @@ -18,7 +18,7 @@ rcu/rcu_preempt rcu/rcu_sched rcu/rcu_sched Each directory contains files for the corresponding flavor of RCU. Each directory contains files for the corresponding flavor of RCU. Note that rcu/rcu_preempt is only present for CONFIG_TREE_PREEMPT_RCU. Note that rcu/rcu_preempt is only present for CONFIG_PREEMPT_RCU. For CONFIG_TREE_RCU, the RCU flavor maps onto the RCU-sched flavor, For CONFIG_TREE_RCU, the RCU flavor maps onto the RCU-sched flavor, so that activity for both appears in rcu/rcu_sched. so that activity for both appears in rcu/rcu_sched. Loading Documentation/RCU/whatisRCU.txt +1 −1 Original line number Original line Diff line number Diff line Loading @@ -137,7 +137,7 @@ rcu_read_lock() Used by a reader to inform the reclaimer that the reader is Used by a reader to inform the reclaimer that the reader is entering an RCU read-side critical section. It is illegal entering an RCU read-side critical section. It is illegal to block while in an RCU read-side critical section, though to block while in an RCU read-side critical section, though kernels built with CONFIG_TREE_PREEMPT_RCU can preempt RCU kernels built with CONFIG_PREEMPT_RCU can preempt RCU read-side critical sections. Any RCU-protected data structure read-side critical sections. Any RCU-protected data structure accessed during an RCU read-side critical section is guaranteed to accessed during an RCU read-side critical section is guaranteed to remain unreclaimed for the full duration of that critical section. remain unreclaimed for the full duration of that critical section. Loading Loading
Documentation/ABI/stable/sysfs-driver-ib_srp +19 −6 Original line number Original line Diff line number Diff line Loading @@ -55,12 +55,12 @@ Description: Interface for making ib_srp connect to a new target. only safe with partial memory descriptor list support enabled only safe with partial memory descriptor list support enabled (allow_ext_sg=1). (allow_ext_sg=1). * comp_vector, a number in the range 0..n-1 specifying the * comp_vector, a number in the range 0..n-1 specifying the MSI-X completion vector. Some HCA's allocate multiple (n) MSI-X completion vector of the first RDMA channel. Some MSI-X vectors per HCA port. If the IRQ affinity masks of HCA's allocate multiple (n) MSI-X vectors per HCA port. If these interrupts have been configured such that each MSI-X the IRQ affinity masks of these interrupts have been interrupt is handled by a different CPU then the comp_vector configured such that each MSI-X interrupt is handled by a parameter can be used to spread the SRP completion workload different CPU then the comp_vector parameter can be used to over multiple CPU's. spread the SRP completion workload over multiple CPU's. * tl_retry_count, a number in the range 2..7 specifying the * tl_retry_count, a number in the range 2..7 specifying the IB RC retry count. IB RC retry count. * queue_size, the maximum number of commands that the * queue_size, the maximum number of commands that the Loading Loading @@ -88,6 +88,13 @@ Description: Whether ib_srp is allowed to include a partial memory descriptor list in an SRP_CMD when communicating with an SRP descriptor list in an SRP_CMD when communicating with an SRP target. target. What: /sys/class/scsi_host/host<n>/ch_count Date: April 1, 2015 KernelVersion: 3.19 Contact: linux-rdma@vger.kernel.org Description: Number of RDMA channels used for communication with the SRP target. What: /sys/class/scsi_host/host<n>/cmd_sg_entries What: /sys/class/scsi_host/host<n>/cmd_sg_entries Date: May 19, 2011 Date: May 19, 2011 KernelVersion: 2.6.39 KernelVersion: 2.6.39 Loading @@ -95,6 +102,12 @@ Contact: linux-rdma@vger.kernel.org Description: Maximum number of data buffer descriptors that may be sent to Description: Maximum number of data buffer descriptors that may be sent to the target in a single SRP_CMD request. the target in a single SRP_CMD request. What: /sys/class/scsi_host/host<n>/comp_vector Date: September 2, 2013 KernelVersion: 3.11 Contact: linux-rdma@vger.kernel.org Description: Completion vector used for the first RDMA channel. What: /sys/class/scsi_host/host<n>/dgid What: /sys/class/scsi_host/host<n>/dgid Date: June 17, 2006 Date: June 17, 2006 KernelVersion: 2.6.17 KernelVersion: 2.6.17 Loading
Documentation/RCU/rcu.txt +2 −2 Original line number Original line Diff line number Diff line Loading @@ -36,7 +36,7 @@ o How can the updater tell when a grace period has completed executed in user mode, or executed in the idle loop, we can executed in user mode, or executed in the idle loop, we can safely free up that item. safely free up that item. Preemptible variants of RCU (CONFIG_TREE_PREEMPT_RCU) get the Preemptible variants of RCU (CONFIG_PREEMPT_RCU) get the same effect, but require that the readers manipulate CPU-local same effect, but require that the readers manipulate CPU-local counters. These counters allow limited types of blocking within counters. These counters allow limited types of blocking within RCU read-side critical sections. SRCU also uses CPU-local RCU read-side critical sections. SRCU also uses CPU-local Loading Loading @@ -81,7 +81,7 @@ o I hear that RCU is patented? What is with that? o I hear that RCU needs work in order to support realtime kernels? o I hear that RCU needs work in order to support realtime kernels? This work is largely completed. Realtime-friendly RCU can be This work is largely completed. Realtime-friendly RCU can be enabled via the CONFIG_TREE_PREEMPT_RCU kernel configuration enabled via the CONFIG_PREEMPT_RCU kernel configuration parameter. However, work is in progress for enabling priority parameter. However, work is in progress for enabling priority boosting of preempted RCU read-side critical sections. This is boosting of preempted RCU read-side critical sections. This is needed if you have CPU-bound realtime threads. needed if you have CPU-bound realtime threads. Loading
Documentation/RCU/stallwarn.txt +4 −10 Original line number Original line Diff line number Diff line Loading @@ -26,12 +26,6 @@ CONFIG_RCU_CPU_STALL_TIMEOUT Stall-warning messages may be enabled and disabled completely via Stall-warning messages may be enabled and disabled completely via /sys/module/rcupdate/parameters/rcu_cpu_stall_suppress. /sys/module/rcupdate/parameters/rcu_cpu_stall_suppress. CONFIG_RCU_CPU_STALL_VERBOSE This kernel configuration parameter causes the stall warning to also dump the stacks of any tasks that are blocking the current RCU-preempt grace period. CONFIG_RCU_CPU_STALL_INFO CONFIG_RCU_CPU_STALL_INFO This kernel configuration parameter causes the stall warning to This kernel configuration parameter causes the stall warning to Loading Loading @@ -77,7 +71,7 @@ This message indicates that CPU 5 detected that it was causing a stall, and that the stall was affecting RCU-sched. This message will normally be and that the stall was affecting RCU-sched. This message will normally be followed by a stack dump of the offending CPU. On TREE_RCU kernel builds, followed by a stack dump of the offending CPU. On TREE_RCU kernel builds, RCU and RCU-sched are implemented by the same underlying mechanism, RCU and RCU-sched are implemented by the same underlying mechanism, while on TREE_PREEMPT_RCU kernel builds, RCU is instead implemented while on PREEMPT_RCU kernel builds, RCU is instead implemented by rcu_preempt_state. by rcu_preempt_state. On the other hand, if the offending CPU fails to print out a stall-warning On the other hand, if the offending CPU fails to print out a stall-warning Loading @@ -89,7 +83,7 @@ INFO: rcu_bh_state detected stalls on CPUs/tasks: { 3 5 } (detected by 2, 2502 j This message indicates that CPU 2 detected that CPUs 3 and 5 were both This message indicates that CPU 2 detected that CPUs 3 and 5 were both causing stalls, and that the stall was affecting RCU-bh. This message causing stalls, and that the stall was affecting RCU-bh. This message will normally be followed by stack dumps for each CPU. Please note that will normally be followed by stack dumps for each CPU. Please note that TREE_PREEMPT_RCU builds can be stalled by tasks as well as by CPUs, PREEMPT_RCU builds can be stalled by tasks as well as by CPUs, and that the tasks will be indicated by PID, for example, "P3421". and that the tasks will be indicated by PID, for example, "P3421". It is even possible for a rcu_preempt_state stall to be caused by both It is even possible for a rcu_preempt_state stall to be caused by both CPUs -and- tasks, in which case the offending CPUs and tasks will all CPUs -and- tasks, in which case the offending CPUs and tasks will all Loading Loading @@ -205,10 +199,10 @@ o A CPU-bound real-time task in a CONFIG_PREEMPT kernel, which might o A CPU-bound real-time task in a CONFIG_PREEMPT_RT kernel that o A CPU-bound real-time task in a CONFIG_PREEMPT_RT kernel that is running at a higher priority than the RCU softirq threads. is running at a higher priority than the RCU softirq threads. This will prevent RCU callbacks from ever being invoked, This will prevent RCU callbacks from ever being invoked, and in a CONFIG_TREE_PREEMPT_RCU kernel will further prevent and in a CONFIG_PREEMPT_RCU kernel will further prevent RCU grace periods from ever completing. Either way, the RCU grace periods from ever completing. Either way, the system will eventually run out of memory and hang. In the system will eventually run out of memory and hang. In the CONFIG_TREE_PREEMPT_RCU case, you might see stall-warning CONFIG_PREEMPT_RCU case, you might see stall-warning messages. messages. o A hardware or software issue shuts off the scheduler-clock o A hardware or software issue shuts off the scheduler-clock Loading
Documentation/RCU/trace.txt +2 −2 Original line number Original line Diff line number Diff line Loading @@ -8,7 +8,7 @@ The following sections describe the debugfs files and formats, first for rcutree and next for rcutiny. for rcutree and next for rcutiny. CONFIG_TREE_RCU and CONFIG_TREE_PREEMPT_RCU debugfs Files and Formats CONFIG_TREE_RCU and CONFIG_PREEMPT_RCU debugfs Files and Formats These implementations of RCU provide several debugfs directories under the These implementations of RCU provide several debugfs directories under the top-level directory "rcu": top-level directory "rcu": Loading @@ -18,7 +18,7 @@ rcu/rcu_preempt rcu/rcu_sched rcu/rcu_sched Each directory contains files for the corresponding flavor of RCU. Each directory contains files for the corresponding flavor of RCU. Note that rcu/rcu_preempt is only present for CONFIG_TREE_PREEMPT_RCU. Note that rcu/rcu_preempt is only present for CONFIG_PREEMPT_RCU. For CONFIG_TREE_RCU, the RCU flavor maps onto the RCU-sched flavor, For CONFIG_TREE_RCU, the RCU flavor maps onto the RCU-sched flavor, so that activity for both appears in rcu/rcu_sched. so that activity for both appears in rcu/rcu_sched. Loading
Documentation/RCU/whatisRCU.txt +1 −1 Original line number Original line Diff line number Diff line Loading @@ -137,7 +137,7 @@ rcu_read_lock() Used by a reader to inform the reclaimer that the reader is Used by a reader to inform the reclaimer that the reader is entering an RCU read-side critical section. It is illegal entering an RCU read-side critical section. It is illegal to block while in an RCU read-side critical section, though to block while in an RCU read-side critical section, though kernels built with CONFIG_TREE_PREEMPT_RCU can preempt RCU kernels built with CONFIG_PREEMPT_RCU can preempt RCU read-side critical sections. Any RCU-protected data structure read-side critical sections. Any RCU-protected data structure accessed during an RCU read-side critical section is guaranteed to accessed during an RCU read-side critical section is guaranteed to remain unreclaimed for the full duration of that critical section. remain unreclaimed for the full duration of that critical section. Loading