Commit 3459f0d7 authored by Ingo Molnar's avatar Ingo Molnar
Browse files

Merge branch 'linus' into perf/urgent, to pick up the upstream merged bits



Signed-off-by: default avatarIngo Molnar <mingo@kernel.org>
parents 9fc81d87 bee2782f
Loading
Loading
Loading
Loading
+19 −6
Original line number Original line Diff line number Diff line
@@ -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
@@ -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
@@ -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
+2 −2
Original line number Original line Diff line number Diff line
@@ -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
@@ -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.
+4 −10
Original line number Original line Diff line number Diff line
@@ -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
@@ -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
@@ -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
@@ -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
+2 −2
Original line number Original line Diff line number Diff line
@@ -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":
@@ -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.


+1 −1
Original line number Original line Diff line number Diff line
@@ -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