diff options
-rw-r--r-- | arch/um/Kconfig | 4 | ||||
-rw-r--r-- | arch/um/Kconfig.x86 (renamed from arch/um/Kconfig.i386) | 33 | ||||
-rw-r--r-- | arch/um/Kconfig.x86_64 | 39 | ||||
-rw-r--r-- | arch/um/Makefile | 4 |
4 files changed, 23 insertions, 57 deletions
diff --git a/arch/um/Kconfig b/arch/um/Kconfig index 393bccfe1785..a0801fda0be4 100644 --- a/arch/um/Kconfig +++ b/arch/um/Kconfig @@ -85,6 +85,10 @@ config STATIC_LINK Additionally, this option enables using higher memory spaces (up to 2.75G) for UML. +config SUBARCH + string + option env="SUBARCH" + source "arch/um/Kconfig.arch" source "mm/Kconfig" source "kernel/time/Kconfig" diff --git a/arch/um/Kconfig.i386 b/arch/um/Kconfig.x86 index 1f57c113df6d..76200c9f454a 100644 --- a/arch/um/Kconfig.i386 +++ b/arch/um/Kconfig.x86 @@ -5,24 +5,25 @@ source "arch/x86/Kconfig.cpu" endmenu config UML_X86 + def_bool y + +config 64BIT bool - default y + default SUBARCH = "x86_64" config X86_32 - bool - default y - select HAVE_AOUT + def_bool !64BIT + select HAVE_AOUT config RWSEM_XCHGADD_ALGORITHM - def_bool y + def_bool X86_XADD -config 64BIT - bool - default n +config RWSEM_GENERIC_SPINLOCK + def_bool !X86_XADD config 3_LEVEL_PGTABLES - bool "Three-level pagetables (EXPERIMENTAL)" - default n + bool "Three-level pagetables (EXPERIMENTAL)" if !64BIT + default 64BIT depends on EXPERIMENTAL help Three-level pagetables will let UML have more than 4G of physical @@ -33,13 +34,13 @@ config 3_LEVEL_PGTABLES N (on x86-64 it's automatically enabled, instead, as it's safe there). config ARCH_HAS_SC_SIGNALS - bool - default y + def_bool !64BIT config ARCH_REUSE_HOST_VSYSCALL_AREA - bool - default y + def_bool !64BIT + +config SMP_BROKEN + def_bool 64BIT config GENERIC_HWEIGHT - bool - default y + def_bool y diff --git a/arch/um/Kconfig.x86_64 b/arch/um/Kconfig.x86_64 deleted file mode 100644 index 40b3407cfe16..000000000000 --- a/arch/um/Kconfig.x86_64 +++ /dev/null @@ -1,39 +0,0 @@ - -menu "Host processor type and features" - -source "arch/x86/Kconfig.cpu" - -endmenu - -config UML_X86 - bool - default y - -config 64BIT - bool - default y - -#XXX: this is so in the underlying arch, but it's wrong!!! -config RWSEM_GENERIC_SPINLOCK - bool - default y - -config 3_LEVEL_PGTABLES - bool - default y - -config ARCH_HAS_SC_SIGNALS - bool - default n - -config ARCH_REUSE_HOST_VSYSCALL_AREA - bool - default n - -config SMP_BROKEN - bool - default y - -config GENERIC_HWEIGHT - bool - default y diff --git a/arch/um/Makefile b/arch/um/Makefile index 2e042b0e3b8a..bc070cef3ceb 100644 --- a/arch/um/Makefile +++ b/arch/um/Makefile @@ -96,9 +96,9 @@ define archhelp endef ifneq ($(KBUILD_SRC),) -$(shell mkdir -p $(ARCH_DIR) && ln -fsn $(srctree)/$(ARCH_DIR)/Kconfig.$(SUBARCH) $(ARCH_DIR)/Kconfig.arch) +$(shell mkdir -p $(ARCH_DIR) && ln -fsn $(srctree)/$(ARCH_DIR)/Kconfig.$(HEADER_ARCH) $(ARCH_DIR)/Kconfig.arch) else -$(shell ln -fsn Kconfig.$(SUBARCH) $(ARCH_DIR)/Kconfig.arch) +$(shell ln -fsn Kconfig.$(HEADER_ARCH) $(ARCH_DIR)/Kconfig.arch) endif archprepare: $(ARCH_SYMLINKS) $(ARCH_DIR)/include/shared/user_constants.h |