irq_work: allow building non-SMP again

Message ID 20240216163535.1997122-1-arnd@kernel.org
State New
Headers
Series irq_work: allow building non-SMP again |

Commit Message

Arnd Bergmann Feb. 16, 2024, 4:35 p.m. UTC
  From: Arnd Bergmann <arnd@arndb.de>

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@arndb.de>
---
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(-)
  

Comments

Tejun Heo Feb. 16, 2024, 4:42 p.m. UTC | #1
Hello, Arnd.

On Fri, Feb 16, 2024 at 05:35:07PM +0100, Arnd Bergmann wrote:
> I assume this has already been reported by others, but I didn't immediately
> see another patch for it.

Oh, I just replaced the broken one with the following:

 https://git.kernel.org/pub/scm/linux/kernel/git/tj/wq.git/commit/?h=for-6.9&id=fd0a68a2337b79a7bd4dad5e7d9dc726828527af

Sorry about the hassle. Thanks.
  

Patch

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