Randy Dunlap <rdunlap@xxxxxxxxxxxxx> writes: > In linux-next, IA64_MCA_RECOVERY uses the (new) function make_task_dead(), > which is not exported for use by modules. Instead of exporting it for > one user, convert IA64_MCA_RECOVERY to be a bool Kconfig symbol. > > In a config file from "kernel test robot <lkp@xxxxxxxxx>" for a > different problem, this linker error was exposed when > CONFIG_IA64_MCA_RECOVERY=m. > > Fixes this build error: > > ERROR: modpost: "make_task_dead" [arch/ia64/kernel/mca_recovery.ko] undefined! Reviewed-by: "Eric W. Biederman" <ebiederm@xxxxxxxxxxxx> I looked and ia64_unreg_MCA_extension has no synchronization so I don't think it has ever been safe to this code when built as a module. > Fixes: 0e25498f8cd4 ("exit: Add and use make_task_dead.") > Signed-off-by: Randy Dunlap <rdunlap@xxxxxxxxxxxxx> > Cc: "Eric W. Biederman" <ebiederm@xxxxxxxxxxxx> > Cc: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx> > Cc: linux-ia64@xxxxxxxxxxxxxxx > Cc: Tony Luck <tony.luck@xxxxxxxxx> > Cc: kernel test robot <lkp@xxxxxxxxx> > Suggested-by: Christoph Hellwig <hch@xxxxxxxxxxxxx> > --- > v1 was [PATCH -next] exit: export make_task_dead(). > Christoph suggests and prefers that IA64 MCA recovery code just be > forced to be builtin if it is enabled. > > arch/ia64/Kconfig | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > --- linux-next-20220121.orig/arch/ia64/Kconfig > +++ linux-next-20220121/arch/ia64/Kconfig > @@ -318,7 +318,7 @@ config ARCH_PROC_KCORE_TEXT > depends on PROC_KCORE > > config IA64_MCA_RECOVERY > - tristate "MCA recovery from errors other than TLB." > + bool "MCA recovery from errors other than TLB." > > config IA64_PALINFO > tristate "/proc/pal support"