[PATCH] irq_work: allow building non-SMP again

Arnd Bergmann posted 1 patch 1 year, 11 months ago
init/Kconfig | 4 +---
1 file changed, 1 insertion(+), 3 deletions(-)
[PATCH] irq_work: allow building non-SMP again
Posted by Arnd Bergmann 1 year, 11 months ago
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(-)

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
Re: [PATCH] irq_work: allow building non-SMP again
Posted by Tejun Heo 1 year, 11 months ago
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.

-- 
tejun