Skip to content

Commit 83d12a3

Browse files
Josh CartwrightJulia Cartwright
authored andcommitted
lockdep: selftest: fix warnings due to missing PREEMPT_RT conditionals
"lockdep: Selftest: Only do hardirq context test for raw spinlock" disabled the execution of certain tests with PREEMPT_RT_FULL, but did not prevent the tests from still being defined. This leads to warnings like: ./linux/lib/locking-selftest.c:574:1: warning: 'irqsafe1_hard_rlock_12' defined but not used [-Wunused-function] ./linux/lib/locking-selftest.c:574:1: warning: 'irqsafe1_hard_rlock_21' defined but not used [-Wunused-function] ./linux/lib/locking-selftest.c:577:1: warning: 'irqsafe1_hard_wlock_12' defined but not used [-Wunused-function] ./linux/lib/locking-selftest.c:577:1: warning: 'irqsafe1_hard_wlock_21' defined but not used [-Wunused-function] ./linux/lib/locking-selftest.c:580:1: warning: 'irqsafe1_soft_spin_12' defined but not used [-Wunused-function] ... Fixed by wrapping the test definitions in #ifndef CONFIG_PREEMPT_RT_FULL conditionals. Signed-off-by: Josh Cartwright <[email protected]> Signed-off-by: Xander Huff <[email protected]> Acked-by: Gratian Crisan <[email protected]> Signed-off-by: Sebastian Andrzej Siewior <[email protected]>
1 parent 5577b31 commit 83d12a3

File tree

1 file changed

+27
-0
lines changed

1 file changed

+27
-0
lines changed

lib/locking-selftest.c

Lines changed: 27 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -590,6 +590,8 @@ GENERATE_TESTCASE(init_held_rsem)
590590
#include "locking-selftest-spin-hardirq.h"
591591
GENERATE_PERMUTATIONS_2_EVENTS(irqsafe1_hard_spin)
592592

593+
#ifndef CONFIG_PREEMPT_RT_FULL
594+
593595
#include "locking-selftest-rlock-hardirq.h"
594596
GENERATE_PERMUTATIONS_2_EVENTS(irqsafe1_hard_rlock)
595597

@@ -605,9 +607,12 @@ GENERATE_PERMUTATIONS_2_EVENTS(irqsafe1_soft_rlock)
605607
#include "locking-selftest-wlock-softirq.h"
606608
GENERATE_PERMUTATIONS_2_EVENTS(irqsafe1_soft_wlock)
607609

610+
#endif
611+
608612
#undef E1
609613
#undef E2
610614

615+
#ifndef CONFIG_PREEMPT_RT_FULL
611616
/*
612617
* Enabling hardirqs with a softirq-safe lock held:
613618
*/
@@ -640,6 +645,8 @@ GENERATE_PERMUTATIONS_2_EVENTS(irqsafe2A_rlock)
640645
#undef E1
641646
#undef E2
642647

648+
#endif
649+
643650
/*
644651
* Enabling irqs with an irq-safe lock held:
645652
*/
@@ -663,6 +670,8 @@ GENERATE_PERMUTATIONS_2_EVENTS(irqsafe2A_rlock)
663670
#include "locking-selftest-spin-hardirq.h"
664671
GENERATE_PERMUTATIONS_2_EVENTS(irqsafe2B_hard_spin)
665672

673+
#ifndef CONFIG_PREEMPT_RT_FULL
674+
666675
#include "locking-selftest-rlock-hardirq.h"
667676
GENERATE_PERMUTATIONS_2_EVENTS(irqsafe2B_hard_rlock)
668677

@@ -678,6 +687,8 @@ GENERATE_PERMUTATIONS_2_EVENTS(irqsafe2B_soft_rlock)
678687
#include "locking-selftest-wlock-softirq.h"
679688
GENERATE_PERMUTATIONS_2_EVENTS(irqsafe2B_soft_wlock)
680689

690+
#endif
691+
681692
#undef E1
682693
#undef E2
683694

@@ -709,6 +720,8 @@ GENERATE_PERMUTATIONS_2_EVENTS(irqsafe2B_soft_wlock)
709720
#include "locking-selftest-spin-hardirq.h"
710721
GENERATE_PERMUTATIONS_3_EVENTS(irqsafe3_hard_spin)
711722

723+
#ifndef CONFIG_PREEMPT_RT_FULL
724+
712725
#include "locking-selftest-rlock-hardirq.h"
713726
GENERATE_PERMUTATIONS_3_EVENTS(irqsafe3_hard_rlock)
714727

@@ -724,6 +737,8 @@ GENERATE_PERMUTATIONS_3_EVENTS(irqsafe3_soft_rlock)
724737
#include "locking-selftest-wlock-softirq.h"
725738
GENERATE_PERMUTATIONS_3_EVENTS(irqsafe3_soft_wlock)
726739

740+
#endif
741+
727742
#undef E1
728743
#undef E2
729744
#undef E3
@@ -757,6 +772,8 @@ GENERATE_PERMUTATIONS_3_EVENTS(irqsafe3_soft_wlock)
757772
#include "locking-selftest-spin-hardirq.h"
758773
GENERATE_PERMUTATIONS_3_EVENTS(irqsafe4_hard_spin)
759774

775+
#ifndef CONFIG_PREEMPT_RT_FULL
776+
760777
#include "locking-selftest-rlock-hardirq.h"
761778
GENERATE_PERMUTATIONS_3_EVENTS(irqsafe4_hard_rlock)
762779

@@ -772,10 +789,14 @@ GENERATE_PERMUTATIONS_3_EVENTS(irqsafe4_soft_rlock)
772789
#include "locking-selftest-wlock-softirq.h"
773790
GENERATE_PERMUTATIONS_3_EVENTS(irqsafe4_soft_wlock)
774791

792+
#endif
793+
775794
#undef E1
776795
#undef E2
777796
#undef E3
778797

798+
#ifndef CONFIG_PREEMPT_RT_FULL
799+
779800
/*
780801
* read-lock / write-lock irq inversion.
781802
*
@@ -838,6 +859,10 @@ GENERATE_PERMUTATIONS_3_EVENTS(irq_inversion_soft_wlock)
838859
#undef E2
839860
#undef E3
840861

862+
#endif
863+
864+
#ifndef CONFIG_PREEMPT_RT_FULL
865+
841866
/*
842867
* read-lock / write-lock recursion that is actually safe.
843868
*/
@@ -876,6 +901,8 @@ GENERATE_PERMUTATIONS_3_EVENTS(irq_read_recursion_soft)
876901
#undef E2
877902
#undef E3
878903

904+
#endif
905+
879906
/*
880907
* read-lock / write-lock recursion that is unsafe.
881908
*/

0 commit comments

Comments
 (0)