Define the softirq vectors through macros so that we can later include them in the automated definition of lockdep usage states.
Reviewed-by: David S. Miller <[email protected]> Signed-off-by: Frederic Weisbecker <[email protected]> Cc: Mauro Carvalho Chehab <[email protected]> Cc: Joel Fernandes <[email protected]> Cc: Thomas Gleixner <[email protected]> Cc: Pavan Kondeti <[email protected]> Cc: Paul E . McKenney <[email protected]> Cc: David S . Miller <[email protected]> Cc: Ingo Molnar <[email protected]> Cc: Sebastian Andrzej Siewior <[email protected]> Cc: Linus Torvalds <[email protected]> Cc: Peter Zijlstra <[email protected]> --- include/linux/interrupt.h | 17 ++++------------- include/linux/softirq_vector.h | 12 ++++++++++++ 2 files changed, 16 insertions(+), 13 deletions(-) create mode 100644 include/linux/softirq_vector.h diff --git a/include/linux/interrupt.h b/include/linux/interrupt.h index c672f34235e7..e871f361f1f1 100644 --- a/include/linux/interrupt.h +++ b/include/linux/interrupt.h @@ -474,21 +474,12 @@ extern bool force_irqthreads; tasklets are more than enough. F.e. all serial device BHs et al. should be converted to tasklets, not to softirqs. */ - enum { - HI_SOFTIRQ=0, - TIMER_SOFTIRQ, - NET_TX_SOFTIRQ, - NET_RX_SOFTIRQ, - BLOCK_SOFTIRQ, - IRQ_POLL_SOFTIRQ, - TASKLET_SOFTIRQ, - SCHED_SOFTIRQ, - HRTIMER_SOFTIRQ, /* Unused, but kept as tools rely on the - numbering. Sigh! */ - RCU_SOFTIRQ, /* Preferable RCU should always be the last softirq */ - +#define SOFTIRQ_VECTOR(__SVEC) \ + __SVEC##_SOFTIRQ, +#include <linux/softirq_vector.h> +#undef SOFTIRQ_VECTOR NR_SOFTIRQS }; diff --git a/include/linux/softirq_vector.h b/include/linux/softirq_vector.h new file mode 100644 index 000000000000..c0308cbc916f --- /dev/null +++ b/include/linux/softirq_vector.h @@ -0,0 +1,12 @@ +/* SPDX-License-Identifier: GPL-2.0 */ + +SOFTIRQ_VECTOR(HI) +SOFTIRQ_VECTOR(TIMER) +SOFTIRQ_VECTOR(NET_TX) +SOFTIRQ_VECTOR(NET_RX) +SOFTIRQ_VECTOR(BLOCK) +SOFTIRQ_VECTOR(IRQ_POLL) +SOFTIRQ_VECTOR(TASKLET) +SOFTIRQ_VECTOR(SCHED) +SOFTIRQ_VECTOR(HRTIMER) +SOFTIRQ_VECTOR(RCU) /* Preferable RCU should always be the last softirq */ -- 2.21.0

