@@ -36,6 +36,7 @@ config ARM
select GENERIC_ALLOCATOR
select GENERIC_ARCH_TOPOLOGY if ARM_CPU_TOPOLOGY
select GENERIC_ATOMIC64 if CPU_V7M || CPU_V6 || !CPU_32v6K || !AEABI
+ select GENERIC_BUG if BUG
select GENERIC_CALIBRATE_DELAY
select GENERIC_CLOCKEVENTS_BROADCAST if SMP
select GENERIC_CPU_AUTOPROBE
@@ -256,10 +257,6 @@ config PHYS_OFFSET
Please provide the physical address corresponding to the
location of main memory in your system.
-config GENERIC_BUG
- def_bool y
- depends on BUG
-
config PGTABLE_LEVELS
int
default 3 if ARM_LPAE
@@ -85,6 +85,8 @@ config ARM64
select FRAME_POINTER
select GENERIC_ALLOCATOR
select GENERIC_ARCH_TOPOLOGY
+ select GENERIC_BUG if BUG
+ select GENERIC_BUG_RELATIVE_POINTERS
select GENERIC_CALIBRATE_DELAY
select GENERIC_CLOCKEVENTS
select GENERIC_CLOCKEVENTS_BROADCAST
@@ -234,14 +236,6 @@ config ILLEGAL_POINTER_VALUE
hex
default 0xdead000000000000
-config GENERIC_BUG
- def_bool y
- depends on BUG
-
-config GENERIC_BUG_RELATIVE_POINTERS
- def_bool y
- depends on GENERIC_BUG
-
config GENERIC_HWEIGHT
def_bool y
@@ -10,6 +10,7 @@ config C6X
select ARCH_HAS_SYNC_DMA_FOR_DEVICE
select CLKDEV_LOOKUP
select GENERIC_ATOMIC64
+ select GENERIC_BUG if BUG
select GENERIC_CALIBRATE_DELAY
select GENERIC_IRQ_SHOW
select HAVE_ARCH_TRACEHOOK
@@ -30,10 +31,6 @@ config FPU
config GENERIC_HWEIGHT
def_bool y
-config GENERIC_BUG
- def_bool y
- depends on BUG
-
config C6X_BIG_KERNEL
bool "Build a big kernel"
help
@@ -14,6 +14,7 @@ config HEXAGON
# select GPIOLIB
# select HAVE_CLK
# select GENERIC_PENDING_IRQ if SMP
+ select GENERIC_BUG if BUG
select GENERIC_ATOMIC64
select HAVE_PERF_EVENTS
# GENERIC_ALLOCATOR is used by dma_alloc_coherent()
@@ -65,10 +66,6 @@ config GENERIC_IRQ_PROBE
config GENERIC_HWEIGHT
def_bool y
-config GENERIC_BUG
- def_bool y
- depends on BUG
-
menu "Machine selection"
choice
@@ -27,6 +27,7 @@ config PARISC
select HAVE_KERNEL_LZO
select HAVE_KERNEL_XZ
select GENERIC_ATOMIC64 if !64BIT
+ select GENERIC_BUG if BUG
select GENERIC_CALIBRATE_DELAY
select GENERIC_IRQ_PROBE
select GENERIC_PCI_IOMAP
@@ -85,11 +86,6 @@ config ARCH_HAS_ILOG2_U64
bool
default n
-config GENERIC_BUG
- bool
- default y
- depends on BUG
-
config GENERIC_HWEIGHT
bool
default y
@@ -142,6 +142,7 @@ config PPC
select EDAC_ATOMIC_SCRUB
select EDAC_SUPPORT
select GENERIC_ATOMIC64 if PPC32
+ select GENERIC_BUG if BUG
select GENERIC_CLOCKEVENTS
select GENERIC_CLOCKEVENTS_BROADCAST if SMP
select GENERIC_CMOS_UPDATE
@@ -283,11 +284,6 @@ config AUDIT_ARCH
bool
default y
-config GENERIC_BUG
- bool
- default y
- depends on BUG
-
config SYS_SUPPORTS_APM_EMULATION
default y if PMAC_APM_EMU
bool
@@ -19,6 +19,8 @@ config RISCV
select ARCH_WANT_FRAME_POINTERS
select CLONE_BACKWARDS
select COMMON_CLK
+ select GENERIC_BUG if BUG
+ select GENERIC_BUG_RELATIVE_POINTERS if 64BIT
select GENERIC_CALIBRATE_DELAY
select GENERIC_CLOCKEVENTS
select GENERIC_CPU_DEVICES
@@ -66,14 +68,6 @@ config PAGE_OFFSET
default 0xffffffff80000000 if 64BIT && MAXPHYSMEM_2GB
default 0xffffffe000000000 if 64BIT && MAXPHYSMEM_128GB
-config GENERIC_BUG
- def_bool y
- depends on BUG
- select GENERIC_BUG_RELATIVE_POINTERS if 64BIT
-
-config GENERIC_BUG_RELATIVE_POINTERS
- bool
-
config GENERIC_CSUM
def_bool y
@@ -17,12 +17,6 @@ config ARCH_HAS_ILOG2_U64
config GENERIC_HWEIGHT
def_bool y
-config GENERIC_BUG
- def_bool y if BUG
-
-config GENERIC_BUG_RELATIVE_POINTERS
- def_bool y
-
config GENERIC_LOCKBREAK
def_bool y if SMP && PREEMPT
@@ -103,6 +97,8 @@ config S390
select BUILDTIME_EXTABLE_SORT
select CLONE_BACKWARDS2
select DYNAMIC_FTRACE if FUNCTION_TRACER
+ select GENERIC_BUG if BUG
+ select GENERIC_BUG_RELATIVE_POINTERS
select GENERIC_CLOCKEVENTS
select GENERIC_CPU_AUTOPROBE
select GENERIC_CPU_DEVICES if !SMP
@@ -35,6 +35,7 @@ config SUPERH
select LOCKDEP_SUPPORT
select RTC_LIB
select GENERIC_ATOMIC64
+ select GENERIC_BUG if BUG && SUPERH32
select GENERIC_IRQ_SHOW
select GENERIC_SMP_IDLE_THREAD
select GENERIC_IDLE_POLL_SETUP
@@ -92,10 +93,6 @@ config ARCH_DEFCONFIG
default "arch/sh/configs/shx3_defconfig" if SUPERH32
default "arch/sh/configs/cayman_defconfig" if SUPERH64
-config GENERIC_BUG
- def_bool y
- depends on BUG && SUPERH32
-
config GENERIC_CSUM
def_bool y
depends on SUPERH64
@@ -91,6 +91,8 @@ config X86
select DCACHE_WORD_ACCESS
select EDAC_ATOMIC_SCRUB
select EDAC_SUPPORT
+ select GENERIC_BUG if BUG
+ select GENERIC_BUG_RELATIVE_POINTERS if X86_64
select GENERIC_CALIBRATE_DELAY
select GENERIC_CLOCKEVENTS
select GENERIC_CLOCKEVENTS_BROADCAST if X86_64 || (X86_32 && X86_LOCAL_APIC)
@@ -253,14 +255,6 @@ config GENERIC_ISA_DMA
def_bool y
depends on ISA_DMA_API
-config GENERIC_BUG
- def_bool y
- depends on BUG
- select GENERIC_BUG_RELATIVE_POINTERS if X86_64
-
-config GENERIC_BUG_RELATIVE_POINTERS
- bool
-
config GENERIC_HWEIGHT
def_bool y
@@ -615,6 +615,12 @@ config STRING_SELFTEST
endmenu
+config GENERIC_BUG
+ bool
+
+config GENERIC_BUG_RELATIVE_POINTERS
+ bool
+
config GENERIC_LIB_ASHLDI3
bool
And just let the architectures that want it select the symbol. Same for GENERIC_BUG_RELATIVE_POINTERS. Signed-off-by: Christoph Hellwig <hch@lst.de> --- arch/arm/Kconfig | 5 +---- arch/arm64/Kconfig | 10 ++-------- arch/c6x/Kconfig | 5 +---- arch/hexagon/Kconfig | 5 +---- arch/parisc/Kconfig | 6 +----- arch/powerpc/Kconfig | 6 +----- arch/riscv/Kconfig | 10 ++-------- arch/s390/Kconfig | 8 ++------ arch/sh/Kconfig | 5 +---- arch/x86/Kconfig | 10 ++-------- lib/Kconfig | 6 ++++++ 11 files changed, 20 insertions(+), 56 deletions(-)