<feed xmlns='http://www.w3.org/2005/Atom'>
<title>kernel.git/tools/testing/selftests/rcutorture, branch linux-6.10.y</title>
<subtitle>Hosts the 0x221E linux distro kernel.
</subtitle>
<id>https://git.0xinfinity.dev/distro/kernel.git/atom?h=linux-6.10.y</id>
<link rel='self' href='https://git.0xinfinity.dev/distro/kernel.git/atom?h=linux-6.10.y'/>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/'/>
<updated>2024-04-16T09:16:36Z</updated>
<entry>
<title>torture: Scale --do-kvfree test time</title>
<updated>2024-04-16T09:16:36Z</updated>
<author>
<name>Paul E. McKenney</name>
</author>
<published>2024-03-29T02:51:34Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=39988fdc126b5148f102fc2afbc9fd92d8249f53'/>
<id>urn:sha1:39988fdc126b5148f102fc2afbc9fd92d8249f53</id>
<content type='text'>
Currently, the torture.sh --do-kvfree testing is hard-coded to ten
minutes, ignoring the --duration argument.  This commit therefore scales
this test duration the same as for the rcutorture tests.

Signed-off-by: Paul E. McKenney &lt;paulmck@kernel.org&gt;
Signed-off-by: Uladzislau Rezki (Sony) &lt;urezki@gmail.com&gt;
</content>
</entry>
<entry>
<title>rcutorture: Enable RCU priority boosting for TREE09</title>
<updated>2024-04-09T13:10:13Z</updated>
<author>
<name>Paul E. McKenney</name>
</author>
<published>2024-02-18T01:57:35Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=1a140b46da8f3be8e55fbd0950653c9a235b6ce9'/>
<id>urn:sha1:1a140b46da8f3be8e55fbd0950653c9a235b6ce9</id>
<content type='text'>
The TREE09 rcutorture scenario exhausts memory from time to time, and
this is due to a reader being preempted and blocking grace periods,
thus preventing recycling of the memory used in callback-flooding tests.
This commit therefore enables RCU priority boosting and sets the boosting
delay to 100 milliseconds after grace-period start.

Signed-off-by: Paul E. McKenney &lt;paulmck@kernel.org&gt;
Signed-off-by: Uladzislau Rezki (Sony) &lt;urezki@gmail.com&gt;
</content>
</entry>
<entry>
<title>rcutorture: Disable tracing to permit Tasks Rude RCU testing</title>
<updated>2024-04-04T14:24:34Z</updated>
<author>
<name>Paul E. McKenney</name>
</author>
<published>2024-02-09T11:11:25Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=9e97ea7796412e23b8ecc946fd0488a2de39ea76'/>
<id>urn:sha1:9e97ea7796412e23b8ecc946fd0488a2de39ea76</id>
<content type='text'>
Now that the KPROBES, TRACING, BLK_DEV_IO_TRACE, and UPROBE_EVENTS
Kconfig options select the TASKS_TRACE_RCU option, the torture.sh tests
of enabling exactly one of the RCU Tasks flavors fail.  This commit
therefore disables these options to allow this testing to succeed.

Signed-off-by: Paul E. McKenney &lt;paulmck@kernel.org&gt;
Signed-off-by: Uladzislau Rezki (Sony) &lt;urezki@gmail.com&gt;
</content>
</entry>
<entry>
<title>scftorture: Increase memory provided to guest OS</title>
<updated>2024-04-04T14:22:10Z</updated>
<author>
<name>Paul E. McKenney</name>
</author>
<published>2024-01-31T12:15:42Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=fe09d2e314e5501e4673018270e6e1ed92e6e446'/>
<id>urn:sha1:fe09d2e314e5501e4673018270e6e1ed92e6e446</id>
<content type='text'>
The tradition, extending back almost a full year, has been 2GB plus an
additional number of GBs equal to the number of CPUs divided by sixteen.
This tradition has served scftorture well, even the CONFIG_PREEMPT=y
version running KASAN within guest OSes having 40 CPUs.  However, this
test recently started OOMing on larger systems, and this commit therefore
gives this test an additional GB of memory.

It is quite possible that further testing on larger systems will show
a need to decrease the divisor from 16 to (say) 8, but that is a change
to make once it has been demonstrated to be required.

Signed-off-by: Paul E. McKenney &lt;paulmck@kernel.org&gt;
Signed-off-by: Uladzislau Rezki (Sony) &lt;urezki@gmail.com&gt;
</content>
</entry>
<entry>
<title>clocksource: Scale the watchdog read retries automatically</title>
<updated>2024-02-21T11:00:42Z</updated>
<author>
<name>Feng Tang</name>
</author>
<published>2024-02-21T06:08:59Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=2ed08e4bc53298db3f87b528cd804cb0cce066a9'/>
<id>urn:sha1:2ed08e4bc53298db3f87b528cd804cb0cce066a9</id>
<content type='text'>
On a 8-socket server the TSC is wrongly marked as 'unstable' and disabled
during boot time on about one out of 120 boot attempts:

    clocksource: timekeeping watchdog on CPU227: wd-tsc-wd excessive read-back delay of 153560ns vs. limit of 125000ns,
    wd-wd read-back delay only 11440ns, attempt 3, marking tsc unstable
    tsc: Marking TSC unstable due to clocksource watchdog
    TSC found unstable after boot, most likely due to broken BIOS. Use 'tsc=unstable'.
    sched_clock: Marking unstable (119294969739, 159204297)&lt;-(125446229205, -5992055152)
    clocksource: Checking clocksource tsc synchronization from CPU 319 to CPUs 0,99,136,180,210,542,601,896.
    clocksource: Switched to clocksource hpet

The reason is that for platform with a large number of CPUs, there are
sporadic big or huge read latencies while reading the watchog/clocksource
during boot or when system is under stress work load, and the frequency and
maximum value of the latency goes up with the number of online CPUs.

The cCurrent code already has logic to detect and filter such high latency
case by reading the watchdog twice and checking the two deltas. Due to the
randomness of the latency, there is a low probabilty that the first delta
(latency) is big, but the second delta is small and looks valid. The
watchdog code retries the readouts by default twice, which is not
necessarily sufficient for systems with a large number of CPUs.

There is a command line parameter 'max_cswd_read_retries' which allows to
increase the number of retries, but that's not user friendly as it needs to
be tweaked per system. As the number of required retries is proportional to
the number of online CPUs, this parameter can be calculated at runtime.

Scale and enlarge the number of retries according to the number of online
CPUs and remove the command line parameter completely.

[ tglx: Massaged change log and comments ]

Signed-off-by: Feng Tang &lt;feng.tang@intel.com&gt;
Signed-off-by: Thomas Gleixner &lt;tglx@linutronix.de&gt;
Tested-by: Jin Wang &lt;jin1.wang@intel.com&gt;
Tested-by: Paul E. McKenney &lt;paulmck@kernel.org&gt;
Reviewed-by: Waiman Long &lt;longman@redhat.com&gt;
Reviewed-by: Paul E. McKenney &lt;paulmck@kernel.org&gt;
Link: https://lore.kernel.org/r/20240221060859.1027450-1-feng.tang@intel.com
</content>
</entry>
<entry>
<title>rcutorture: Add mid-sized stall to TREE07</title>
<updated>2023-11-23T06:28:18Z</updated>
<author>
<name>Paul E. McKenney</name>
</author>
<published>2023-11-01T17:30:56Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=af19a2526cba92082723b98fcf191a595054a952'/>
<id>urn:sha1:af19a2526cba92082723b98fcf191a595054a952</id>
<content type='text'>
There is code in rcu_implicit_dynticks_qs() that checks for the current
grace period being halfway to the RCU CPU stall timeout, but rcutorture
currently does not test this code.  This commit therefore adds a 14-second
stall to the TREE07 scenario in order to test this code given the default
RCU CPU stall warning timeout of 21 seconds.

Signed-off-by: Paul E. McKenney &lt;paulmck@kernel.org&gt;
Signed-off-by: Neeraj Upadhyay (AMD) &lt;neeraj.iitr10@gmail.com&gt;
</content>
</entry>
<entry>
<title>rcutorture: add nolibc init support for mips, ppc and rv64</title>
<updated>2023-11-23T06:28:18Z</updated>
<author>
<name>Thomas Weißschuh</name>
</author>
<published>2023-10-15T22:25:14Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=454723b1615f7423fcba0b8f722cef4992a1846f'/>
<id>urn:sha1:454723b1615f7423fcba0b8f722cef4992a1846f</id>
<content type='text'>
Use nolibc for all support architectures.

Signed-off-by: Thomas Weißschuh &lt;linux@weissschuh.net&gt;
Signed-off-by: Paul E. McKenney &lt;paulmck@kernel.org&gt;
Signed-off-by: Neeraj Upadhyay (AMD) &lt;neeraj.iitr10@gmail.com&gt;
</content>
</entry>
<entry>
<title>torture: Convert parse-console.sh to mktemp</title>
<updated>2023-09-24T15:24:02Z</updated>
<author>
<name>Paul E. McKenney</name>
</author>
<published>2023-09-08T12:13:18Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=3e9b009c168e2448ab16f98f10045360b5b41816'/>
<id>urn:sha1:3e9b009c168e2448ab16f98f10045360b5b41816</id>
<content type='text'>
This commit does the long-overdue conversion of the parse-console.sh
file to use mktemp to create its temporary directory.

Signed-off-by: Paul E. McKenney &lt;paulmck@kernel.org&gt;
Signed-off-by: Frederic Weisbecker &lt;frederic@kernel.org&gt;
</content>
</entry>
<entry>
<title>torture: Add kvm.sh --debug-info argument</title>
<updated>2023-09-24T15:24:02Z</updated>
<author>
<name>Paul E. McKenney</name>
</author>
<published>2023-08-23T19:50:10Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=30639bfdac3e7a7383b6133d8ea9a55e397715d8'/>
<id>urn:sha1:30639bfdac3e7a7383b6133d8ea9a55e397715d8</id>
<content type='text'>
This commit adds a --debug-info argument to kvm.sh in order to ease
interpretation of addresses printed on the console and the like.
This argument also disables KASLR.

Signed-off-by: Paul E. McKenney &lt;paulmck@kernel.org&gt;
Signed-off-by: Frederic Weisbecker &lt;frederic@kernel.org&gt;
</content>
</entry>
<entry>
<title>torture: Make torture.sh refscale testing qualify verbose_batched</title>
<updated>2023-09-24T15:24:02Z</updated>
<author>
<name>Paul E. McKenney</name>
</author>
<published>2023-08-16T21:20:49Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=92776c62408f354d254495ea61b3377b450dc69f'/>
<id>urn:sha1:92776c62408f354d254495ea61b3377b450dc69f</id>
<content type='text'>
In torture.sh, the testing of refscale incorrectly used verbose_batched
as a kernel boot parameter, which causes this parameter to be passed
to the init process.  This commit therefore prefixes it with refscale,
so that refscale.verbose_batched is passed to the kernel.

Signed-off-by: Paul E. McKenney &lt;paulmck@kernel.org&gt;
Signed-off-by: Frederic Weisbecker &lt;frederic@kernel.org&gt;
</content>
</entry>
</feed>
