Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit c7e2f69d authored by Peter Zijlstra's avatar Peter Zijlstra Committed by Ingo Molnar
Browse files

locking/selftest: Avoid false BUG report



The work-around for the expected failure is providing another failure :/

Only when CONFIG_PROVE_LOCKING=y do we increment unexpected_testcase_failures,
so only then do we need to decrement, otherwise we'll end up with a negative
number and that will again trigger a BUG (printout, not crash).

Reported-by: default avatarFengguang Wu <fengguang.wu@intel.com>
Tested-by: default avatarFengguang Wu <fengguang.wu@intel.com>
Signed-off-by: default avatarPeter Zijlstra (Intel) <peterz@infradead.org>
Cc: Linus Torvalds <torvalds@linux-foundation.org>
Cc: Peter Zijlstra <peterz@infradead.org>
Cc: Thomas Gleixner <tglx@linutronix.de>
Fixes: d82fed75 ("locking/lockdep/selftests: Fix mixed read-write ABBA tests")
Signed-off-by: default avatarIngo Molnar <mingo@kernel.org>
parent 8b405d5c
Loading
Loading
Loading
Loading
+2 −0
Original line number Diff line number Diff line
@@ -2031,11 +2031,13 @@ void locking_selftest(void)
	print_testname("mixed read-lock/lock-write ABBA");
	pr_cont("             |");
	dotest(rlock_ABBA1, FAILURE, LOCKTYPE_RWLOCK);
#ifdef CONFIG_PROVE_LOCKING
	/*
	 * Lockdep does indeed fail here, but there's nothing we can do about
	 * that now.  Don't kill lockdep for it.
	 */
	unexpected_testcase_failures--;
#endif

	pr_cont("             |");
	dotest(rwsem_ABBA1, FAILURE, LOCKTYPE_RWSEM);