source "arch/um/Kconfig.common"

menu "UML-specific options"

menu "Host processor type and features"

config CMPXCHG_LOCAL
	bool
	default n

source "arch/x86/Kconfig.cpu"

endmenu

config UML_X86
	def_bool y
	select GENERIC_FIND_FIRST_BIT

config 64BIT
	bool
	default SUBARCH = "x86_64"

config X86_32
	def_bool !64BIT
	select HAVE_AOUT

config X86_64
	def_bool 64BIT

config RWSEM_XCHGADD_ALGORITHM
	def_bool X86_XADD && 64BIT

config RWSEM_GENERIC_SPINLOCK
	def_bool !RWSEM_XCHGADD_ALGORITHM

config 3_LEVEL_PGTABLES
	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
	memory.  All the memory that can't be mapped directly will be treated
	as high memory.

	However, this it experimental on 32-bit architectures, so if unsure say
	N (on x86-64 it's automatically enabled, instead, as it's safe there).

config ARCH_HAS_SC_SIGNALS
	def_bool !64BIT

config ARCH_REUSE_HOST_VSYSCALL_AREA
	def_bool !64BIT

config SMP_BROKEN
	def_bool 64BIT

config GENERIC_HWEIGHT
	def_bool y

source "arch/um/Kconfig.um"

endmenu

source "arch/um/Kconfig.rest"
