Unverified Commit a4df2071 authored by Johan Hovold's avatar Johan Hovold Committed by Nathan Chancellor
Browse files

modpost: drop '*_probe' from section check whitelist

Several symbol patterns used to be whitelisted to allow drivers to refer
to functions annotated with __devinit and __devexit, which have since
been removed.

Commit e1dc1bfe ("modpost: remove more symbol patterns from the
section check whitelist") removed most of these patterns but left
'*_probe' after a reported warning in an irqchip driver.

Turns out that was indeed an incorrect reference which has now been
fixed by commit 9b685058 ("irqchip/qcom-irq-combiner: Fix section
mismatch").

A recently added clocksource driver also relies on this suffix to
suppress another valid warning, and that is being fixed separately. [1]

Note that drivers with valid reasons for suppressing the warnings can
use the __ref macros.

Link: https://lore.kernel.org/lkml/20251017054943.7195-1-johan@kernel.org/

 [1]
Signed-off-by: default avatarJohan Hovold <johan@kernel.org>
Reviewed-by: default avatarThomas Gleixner <tglx@linutronix.de>
Reviewed-by: default avatarNathan Chancellor <nathan@kernel.org>
Link: https://patch.msgid.link/20251020091613.22562-1-johan@kernel.org


Signed-off-by: default avatarNathan Chancellor <nathan@kernel.org>
parent 8f0b4cce
Loading
Loading
Loading
Loading
+1 −1
Original line number Diff line number Diff line
@@ -958,7 +958,7 @@ static int secref_whitelist(const char *fromsec, const char *fromsym,
	/* symbols in data sections that may refer to any init/exit sections */
	if (match(fromsec, PATTERNS(DATA_SECTIONS)) &&
	    match(tosec, PATTERNS(ALL_INIT_SECTIONS, ALL_EXIT_SECTIONS)) &&
	    match(fromsym, PATTERNS("*_ops", "*_probe", "*_console")))
	    match(fromsym, PATTERNS("*_ops", "*_console")))
		return 0;

	/* Check for pattern 3 */