<feed xmlns='http://www.w3.org/2005/Atom'>
<title>kernel.git/kernel/rcu/rcuperf.c, branch linux-4.8.y</title>
<subtitle>Hosts the 0x221E linux distro kernel.
</subtitle>
<id>https://git.0xinfinity.dev/distro/kernel.git/atom?h=linux-4.8.y</id>
<link rel='self' href='https://git.0xinfinity.dev/distro/kernel.git/atom?h=linux-4.8.y'/>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/'/>
<updated>2016-06-14T23:03:32Z</updated>
<entry>
<title>rcutorture: Fix error return code in rcu_perf_init()</title>
<updated>2016-06-14T23:03:32Z</updated>
<author>
<name>Wei Yongjun</name>
</author>
<published>2016-06-13T15:20:39Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=05dbbfe753792dcebb6b85d84fa5926f09723cfe'/>
<id>urn:sha1:05dbbfe753792dcebb6b85d84fa5926f09723cfe</id>
<content type='text'>
Fix to return a negative error code -ENOMEM from kcalloc() error
handling case instead of 0, as done elsewhere in this function.

Signed-off-by: Wei Yongjun &lt;yongjun_wei@trendmicro.com.cn&gt;
Signed-off-by: Paul E. McKenney &lt;paulmck@linux.vnet.ibm.com&gt;
</content>
</entry>
<entry>
<title>rcuperf: Don't treat gp_exp mis-setting as a WARN</title>
<updated>2016-06-14T23:03:31Z</updated>
<author>
<name>Boqun Feng</name>
</author>
<published>2016-05-25T01:25:33Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=af06d4f74a7d2132c805339bfd5ab771b5706f42'/>
<id>urn:sha1:af06d4f74a7d2132c805339bfd5ab771b5706f42</id>
<content type='text'>
0day found a boot warning triggered in rcu_perf_writer() on !SMP kernel:

	WARN_ON(rcu_gp_is_normal() &amp;&amp; gp_exp);

, the root cause of which is trying to measure expedited grace
periods(by setting gp_exp to true by default) when all the grace periods
are normal(TINY RCU only has normal grace periods).

However, such a mis-setting would only result in failing to measure the
performance for a specific kind of grace periods, therefore using a
WARN_ON to check this is a little overkilling. We could handle this
inside rcuperf module via some error messages to tell users about the
mis-settings.

Therefore this patch removes the WARN_ON in rcu_perf_writer() and
handles those checkings in rcu_perf_init() with plain if() code.

Moreover, this patch changes the default value of gp_exp to 1) align
with rcutorture tests and 2) make the default setting work for all RCU
implementations by default.

Suggested-by: Paul E. McKenney &lt;paulmck@linux.vnet.ibm.com&gt;
Signed-off-by: Boqun Feng &lt;boqun.feng@gmail.com&gt;
Fixes: http://lkml.kernel.org/r/57411b10.mFvG0+AgcrMXGtcj%fengguang.wu@intel.com
Signed-off-by: Paul E. McKenney &lt;paulmck@linux.vnet.ibm.com&gt;
</content>
</entry>
<entry>
<title>torture: Simplify code, eliminate RCU_PERF_TEST_RUNNABLE</title>
<updated>2016-06-14T23:02:15Z</updated>
<author>
<name>Paul E. McKenney</name>
</author>
<published>2016-04-19T20:03:18Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=f8cbdee99b161cb08c3fb55200941028c5fe25c8'/>
<id>urn:sha1:f8cbdee99b161cb08c3fb55200941028c5fe25c8</id>
<content type='text'>
This commit applies the infamous IS_ENABLED() macro to eliminate a #ifdef.
It also eliminates the RCU_PERF_TEST_RUNNABLE Kconfig option in favor
of the already-existing rcuperf.perf_runnable kernel boot parameter.

Signed-off-by: Paul E. McKenney &lt;paulmck@linux.vnet.ibm.com&gt;
</content>
</entry>
<entry>
<title>rcuperf: Do not wake up shutdown wait queue if "shutdown" is false.</title>
<updated>2016-03-31T20:39:51Z</updated>
<author>
<name>Artem Savkov</name>
</author>
<published>2016-02-07T12:31:39Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=e6fb1fc1085e5b5155bc8f3d3385c48b8bdde95e'/>
<id>urn:sha1:e6fb1fc1085e5b5155bc8f3d3385c48b8bdde95e</id>
<content type='text'>
After finishing its tests rcuperf tries to wake up shutdown_wq even if
"shutdown" param is set to false, resulting in a wake_up() call on an
unitialized wait_queue_head_t which leads to "BUG: spinlock bad magic" and
"BUG: unable to handle kernel NULL pointer dereference".

Fix by checking "shutdown" param before waking up the queue.

Signed-off-by: Artem Savkov &lt;artem.savkov@gmail.com&gt;
</content>
</entry>
<entry>
<title>rcutorture: Avoid RCU CPU stall warning and RT throttling</title>
<updated>2016-03-31T20:39:47Z</updated>
<author>
<name>Paul E. McKenney</name>
</author>
<published>2016-01-31T05:32:09Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=620316e52a923811fe9a77ceb43eebf5f507d375'/>
<id>urn:sha1:620316e52a923811fe9a77ceb43eebf5f507d375</id>
<content type='text'>
Running rcuperf can result in RCU CPU stall warnings and RT throttling.
These occur because on of the real-time writer processes does
ftrace_dump() while still running at real-time priority.  This commit
therefore prevents these problems by setting the writer thread back to
SCHED_NORMAL (AKA SCHED_OTHER) before doing ftrace_dump().

In addition, this commit adds a small fixed delay before dumping ftrace
buffer in order to decrease the probability that this dumping will
interfere with other writers' grace periods.

Signed-off-by: Paul E. McKenney &lt;paulmck@linux.vnet.ibm.com&gt;
</content>
</entry>
<entry>
<title>rcutorture: Add rcuperf holdoff boot parameter to reduce interference</title>
<updated>2016-03-31T20:38:58Z</updated>
<author>
<name>Paul E. McKenney</name>
</author>
<published>2016-01-31T04:56:38Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=df37e66bfdbb57e8cae7dbf39a0c66b1b8701338'/>
<id>urn:sha1:df37e66bfdbb57e8cae7dbf39a0c66b1b8701338</id>
<content type='text'>
Boot-time activity can legitimately grab CPUs for extended time periods,
so the commit adds a boot parameter to delay the start of the performance
test until boot has completed.  Defaults to 10 seconds.

Signed-off-by: Paul E. McKenney &lt;paulmck@linux.vnet.ibm.com&gt;
</content>
</entry>
<entry>
<title>rcutorture: Make rcuperf collect expedited event-trace data</title>
<updated>2016-03-31T20:38:53Z</updated>
<author>
<name>Paul E. McKenney</name>
</author>
<published>2016-01-29T22:58:17Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=ac2bb275e8e5abddb0815ff2b7aa383ed6d007a4'/>
<id>urn:sha1:ac2bb275e8e5abddb0815ff2b7aa383ed6d007a4</id>
<content type='text'>
This commit enables ftrace in the rcuperf TREE kernel build and adds
an ftrace_dump() at the end of rcuperf processing.  This data will be
used to measure the actual durations of the expedited grace periods
without the added delays inherent in the kernel-module measurements.

Signed-off-by: Paul E. McKenney &lt;paulmck@linux.vnet.ibm.com&gt;
</content>
</entry>
<entry>
<title>rcutorture: Set rcuperf writer kthreads to real-time priority</title>
<updated>2016-03-31T20:37:39Z</updated>
<author>
<name>Paul E. McKenney</name>
</author>
<published>2016-01-12T23:17:21Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=2094c99558d9e9374210898f65f5862f7a2e8bed'/>
<id>urn:sha1:2094c99558d9e9374210898f65f5862f7a2e8bed</id>
<content type='text'>
This commit forces more deterministic update-side behavior by setting
rcuperf's rcu_perf_writer() kthreads to real-time priority.

Signed-off-by: Paul E. McKenney &lt;paulmck@linux.vnet.ibm.com&gt;
</content>
</entry>
<entry>
<title>rcutorture: Bind rcuperf reader/writer kthreads to CPUs</title>
<updated>2016-03-31T20:37:39Z</updated>
<author>
<name>Paul E. McKenney</name>
</author>
<published>2016-01-12T22:15:40Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=6b558c4c7a4ba410e39dbcb9d4c2b6e928c09308'/>
<id>urn:sha1:6b558c4c7a4ba410e39dbcb9d4c2b6e928c09308</id>
<content type='text'>
This commit forces more deterministic behavior by binding rcuperf's
rcu_perf_reader() and rcu_perf_writer() kthreads to their respective
CPUs.

Signed-off-by: Paul E. McKenney &lt;paulmck@linux.vnet.ibm.com&gt;
</content>
</entry>
<entry>
<title>rcutorture: Add RCU grace-period performance tests</title>
<updated>2016-03-31T20:37:38Z</updated>
<author>
<name>Paul E. McKenney</name>
</author>
<published>2016-01-01T02:33:22Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=8704baab9bc848b58c129fed6b591bb84ec02f41'/>
<id>urn:sha1:8704baab9bc848b58c129fed6b591bb84ec02f41</id>
<content type='text'>
This commit adds a new rcuperf module that carries out simple performance
tests of RCU grace periods.

Signed-off-by: Paul E. McKenney &lt;paulmck@linux.vnet.ibm.com&gt;
</content>
</entry>
</feed>
