locking/lockdep/selftests: Fix mixed read-write ABBA tests
authorPeter Zijlstra <peterz@infradead.org>
Mon, 28 Aug 2017 12:42:45 +0000 (14:42 +0200)
committerIngo Molnar <mingo@kernel.org>
Tue, 29 Aug 2017 13:15:17 +0000 (15:15 +0200)
Commit:

  e91498589746 ("locking/lockdep/selftests: Add mixed read-write ABBA tests")

adds an explicit FAILURE to the locking selftest but overlooked the
fact that this kills lockdep. Fudge the test to avoid this.

Signed-off-by: Peter Zijlstra (Intel) <peterz@infradead.org>
Cc: Linus Torvalds <torvalds@linux-foundation.org>
Cc: Peter Zijlstra <peterz@infradead.org>
Cc: Thomas Gleixner <tglx@linutronix.de>
Cc: hpa@zytor.com
Link: http://lkml.kernel.org/r/20170828124245.xlo2yshxq2btgmuf@hirez.programming.kicks-ass.net
Signed-off-by: Ingo Molnar <mingo@kernel.org>
lib/locking-selftest.c

index 3c7151a6cd983c7edae9b48e3e951ba780299cb6..cd0b5c964bd041853a74116780c4446c4dc355f9 100644 (file)
@@ -2031,6 +2031,12 @@ void locking_selftest(void)
        print_testname("mixed read-lock/lock-write ABBA");
        pr_cont("             |");
        dotest(rlock_ABBA1, FAILURE, LOCKTYPE_RWLOCK);
+       /*
+        * Lockdep does indeed fail here, but there's nothing we can do about
+        * that now.  Don't kill lockdep for it.
+        */
+       unexpected_testcase_failures--;
+
        pr_cont("             |");
        dotest(rwsem_ABBA1, FAILURE, LOCKTYPE_RWSEM);