[PATCH] irq_work: allow building non-SMP again

From: Arnd Bergmann
Date: Fri Feb 16 2024 - 11:35:53 EST


From: Arnd Bergmann <arnd@xxxxxxxx>

A lot of important features rely on CONFIG_IRQ_WORK but can be enabled
for non-SMP kernels, which now causes a Kconfig warning:

WARNING: unmet direct dependencies detected for IRQ_WORK
Depends on [n]: SMP [=n]
Selected by [y]:
- PRINTK [=y]
- IRQ_SIM [=y]
- BPF_SYSCALL [=y]
- TASKS_RCU [=y]
- TASKS_RUDE_RCU [=y]
- TASKS_TRACE_RCU [=y]
- PERF_EVENTS [=y] && HAVE_PERF_EVENTS [=y]
- CPU_FREQ_GOV_COMMON [=y] && CPU_FREQ [=y]
- DMA_SHARED_BUFFER [=y]
- ATLAS_PH_SENSOR [=y] && IIO [=y] && I2C [=y]
- GP2AP020A00F [=y] && IIO [=y] && I2C [=y]
- IIO_SYSFS_TRIGGER [=y] && IIO [=y] && IIO_TRIGGER [=y] && SYSFS [=y]
- RING_BUFFER [=y]

Change it so that IRQ_WORK remains default-enabled for SMP kernels
and disabled for UP but can still be selected by other subsystems.

Fixes: 9d6efa8d0dd0 ("workqueue, irq_work: Build fix for !CONFIG_IRQ_WORK")
Signed-off-by: Arnd Bergmann <arnd@xxxxxxxx>
---
I assume this has already been reported by others, but I didn't immediately
see another patch for it.
---
init/Kconfig | 4 +---
1 file changed, 1 insertion(+), 3 deletions(-)

diff --git a/init/Kconfig b/init/Kconfig
index 694891231bd6..68024f5e8f02 100644
--- a/init/Kconfig
+++ b/init/Kconfig
@@ -115,9 +115,7 @@ config CONSTRUCTORS
bool

config IRQ_WORK
- bool
- depends on SMP
- default y
+ def_bool SMP

config BUILDTIME_TABLE_SORT
bool
--
2.39.2