Re: [PATCH] locktorture: Fix Oops when reader/writer count is 0

From: Jeremy Linton
Date: Wed Nov 08 2017 - 11:57:15 EST


On 11/08/2017 10:48 AM, Paul E. McKenney wrote:
On Wed, Nov 08, 2017 at 06:45:23AM -0800, Davidlohr Bueso wrote:
On Tue, 07 Nov 2017, Paul E. McKenney wrote:

On Tue, Nov 07, 2017 at 10:07:48PM +0100, Peter Zijlstra wrote:
On Tue, Nov 07, 2017 at 02:01:58PM -0600, Jeremy Linton wrote:
Hi,

On 10/10/2017 10:52 AM, Jeremy Linton wrote:
If nwriters_stress=0 is passed to the lock torture test
it will panic in:

Ping?

Has anyone had a chance to look at this?

Helps if you Cc the people actually working on this stuff of course...

Thank you for the forward, Peter, I have queued Jeremy's patch for
testing and review.

fyi I had proposed the following a while back, which I think is more
complete than this patch:

https://lkml.org/lkml/2017/5/15/201

Ah, there's also this (unrelated) fix:
https://lkml.org/lkml/2017/5/15/203

But Jeremy's list of email addresses is what you would expect from
looking at MAINTAINERS, so how about the following patch?

And it looks like Jeremy was not alone -- I was not CCed on either
of those patches, either.

Dave's patch does look more complete, and it certainly was submitted
first. Let's see if it still applies... And they both do.

Yes, avoiding the zero length allocations is probably a good plan, and complaining if both the reader and writer are zero is doesn't hurt either.

So, I'm good with that patch too..

Reviewed-by: Jeremy Linton <jeremy.linton@xxxxxxx>


Jeremy, could you please test Dave's patches and make sure that they
work for you? That way I can apply your Tested-by. Dave, any objection
to my adding Jeremy's Reported-by to your /201 patch?

I will give it a spin..


Thanx, Paul

------------------------------------------------------------------------

commit 58322063498c8f5a3cc88f95bee237a0ce81f70a
Author: Paul E. McKenney <paulmck@xxxxxxxxxxxxxxxxxx>
Date: Tue Nov 7 14:10:03 2017 -0800

torture: Place all torture-test modules in one MAINTAINERS group

There is some confusion about where patches to kernel/torture.c
and kernel/locking/locktorture.c should be sent. This commit
therefore updates MAINTAINERS appropriately.

Reported-by: Peter Zijlstra <peterz@xxxxxxxxxxxxx>
Signed-off-by: Paul E. McKenney <paulmck@xxxxxxxxxxxxxxxxxx>

diff --git a/MAINTAINERS b/MAINTAINERS
index 2d3d750b19c0..eab868adedc6 100644
--- a/MAINTAINERS
+++ b/MAINTAINERS
@@ -8091,6 +8091,7 @@ F: arch/*/include/asm/rwsem.h
F: include/linux/seqlock.h
F: lib/locking*.[ch]
F: kernel/locking/
+X: kernel/locking/locktorture.c

LOGICAL DISK MANAGER SUPPORT (LDM, Windows 2000/XP/Vista Dynamic Disks)
M: "Richard Russon (FlatCap)" <ldm@xxxxxxxxxxx>
@@ -11318,15 +11319,6 @@ L: linux-wireless@xxxxxxxxxxxxxxx
S: Orphan
F: drivers/net/wireless/ray*

-RCUTORTURE MODULE
-M: Josh Triplett <josh@xxxxxxxxxxxxxxxx>
-M: "Paul E. McKenney" <paulmck@xxxxxxxxxxxxxxxxxx>
-L: linux-kernel@xxxxxxxxxxxxxxx
-S: Supported
-T: git git://git.kernel.org/pub/scm/linux/kernel/git/paulmck/linux-rcu.git
-F: Documentation/RCU/torture.txt
-F: kernel/rcu/rcutorture.c
-
RCUTORTURE TEST FRAMEWORK
M: "Paul E. McKenney" <paulmck@xxxxxxxxxxxxxxxxxx>
M: Josh Triplett <josh@xxxxxxxxxxxxxxxx>
@@ -13558,6 +13550,18 @@ L: platform-driver-x86@xxxxxxxxxxxxxxx
S: Maintained
F: drivers/platform/x86/topstar-laptop.c

+TORTURE-TEST MODULES
+M: Davidlohr Bueso <dave@xxxxxxxxxxxx>
+M: "Paul E. McKenney" <paulmck@xxxxxxxxxxxxxxxxxx>
+M: Josh Triplett <josh@xxxxxxxxxxxxxxxx>
+L: linux-kernel@xxxxxxxxxxxxxxx
+S: Supported
+T: git git://git.kernel.org/pub/scm/linux/kernel/git/paulmck/linux-rcu.git
+F: Documentation/RCU/torture.txt
+F: kernel/torture.c
+F: kernel/rcu/rcutorture.c
+F: kernel/locking/locktorture.c

Sure, if you think this is the best way to go, I have no problem.

Thanks,
Davidlohr