From: Ingo Molnar Date: Fri, 11 Apr 2025 05:40:38 +0000 (+0200) Subject: x86/alternatives: Assert input parameters in smp_text_poke_batch_process() X-Git-Url: https://www.infradead.org/git/?a=commitdiff_plain;h=37725b64a9912292841cea7e9aebfd0f084ed8c0;p=users%2Fdwmw2%2Flinux.git x86/alternatives: Assert input parameters in smp_text_poke_batch_process() At this point the 'tp' input parameter must always be the global 'tp_vec' array, and 'nr_entries' must always be equal to 'tp_vec_nr'. Assert these conditions - which will allow the removal of a layer of indirection between these values. Signed-off-by: Ingo Molnar Cc: Juergen Gross Cc: "H . Peter Anvin" Cc: Linus Torvalds Cc: Peter Zijlstra Link: https://lore.kernel.org/r/20250411054105.2341982-27-mingo@kernel.org --- diff --git a/arch/x86/kernel/alternative.c b/arch/x86/kernel/alternative.c index 329f6ee6b3bc2..4fa26a4351a64 100644 --- a/arch/x86/kernel/alternative.c +++ b/arch/x86/kernel/alternative.c @@ -2627,6 +2627,9 @@ static void smp_text_poke_batch_process(struct smp_text_poke_loc *tp, unsigned i lockdep_assert_held(&text_mutex); + WARN_ON_ONCE(tp != tp_vec); + WARN_ON_ONCE(nr_entries != tp_vec_nr); + int3_vec.vec = tp; int3_vec.nr_entries = nr_entries;