mirror of
https://github.com/FEX-Emu/linux.git
synced 2025-01-10 03:20:49 +00:00
um: cleanup Kconfig files
We can handle all not architecture specific UM configuration directly in the newly added arch/um/Kconfig. Do so by merging the Kconfig.common, Kconfig.rest and Kconfig.um files into arch/um/Kconfig, and move the main UML menu as well. Signed-off-by: Christoph Hellwig <hch@lst.de> Acked-by: Richard Weinberger <richard@nod.at> Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com>
This commit is contained in:
parent
79b05c1f31
commit
f163977d21
210
arch/um/Kconfig
210
arch/um/Kconfig
@ -1,3 +1,213 @@
|
|||||||
# SPDX-License-Identifier: GPL-2.0
|
# SPDX-License-Identifier: GPL-2.0
|
||||||
|
|
||||||
|
menu "UML-specific options"
|
||||||
|
|
||||||
|
config UML
|
||||||
|
bool
|
||||||
|
default y
|
||||||
|
select ARCH_HAS_KCOV
|
||||||
|
select HAVE_ARCH_AUDITSYSCALL
|
||||||
|
select HAVE_ARCH_SECCOMP_FILTER
|
||||||
|
select HAVE_UID16
|
||||||
|
select HAVE_FUTEX_CMPXCHG if FUTEX
|
||||||
|
select HAVE_DEBUG_KMEMLEAK
|
||||||
|
select GENERIC_IRQ_SHOW
|
||||||
|
select GENERIC_CPU_DEVICES
|
||||||
|
select GENERIC_CLOCKEVENTS
|
||||||
|
select HAVE_GCC_PLUGINS
|
||||||
|
select TTY # Needed for line.c
|
||||||
|
|
||||||
|
config MMU
|
||||||
|
bool
|
||||||
|
default y
|
||||||
|
|
||||||
|
config NO_IOMEM
|
||||||
|
def_bool y
|
||||||
|
|
||||||
|
config ISA
|
||||||
|
bool
|
||||||
|
|
||||||
|
config SBUS
|
||||||
|
bool
|
||||||
|
|
||||||
|
config PCI
|
||||||
|
bool
|
||||||
|
|
||||||
|
config PCMCIA
|
||||||
|
bool
|
||||||
|
|
||||||
|
config TRACE_IRQFLAGS_SUPPORT
|
||||||
|
bool
|
||||||
|
default y
|
||||||
|
|
||||||
|
config LOCKDEP_SUPPORT
|
||||||
|
bool
|
||||||
|
default y
|
||||||
|
|
||||||
|
config STACKTRACE_SUPPORT
|
||||||
|
bool
|
||||||
|
default y
|
||||||
|
select STACKTRACE
|
||||||
|
|
||||||
|
config GENERIC_CALIBRATE_DELAY
|
||||||
|
bool
|
||||||
|
default y
|
||||||
|
|
||||||
|
config HZ
|
||||||
|
int
|
||||||
|
default 100
|
||||||
|
|
||||||
|
config NR_CPUS
|
||||||
|
int
|
||||||
|
range 1 1
|
||||||
|
default 1
|
||||||
|
|
||||||
source "arch/$(HEADER_ARCH)/um/Kconfig"
|
source "arch/$(HEADER_ARCH)/um/Kconfig"
|
||||||
|
|
||||||
|
config STATIC_LINK
|
||||||
|
bool "Force a static link"
|
||||||
|
default n
|
||||||
|
help
|
||||||
|
This option gives you the ability to force a static link of UML.
|
||||||
|
Normally, UML is linked as a shared binary. This is inconvenient for
|
||||||
|
use in a chroot jail. So, if you intend to run UML inside a chroot,
|
||||||
|
you probably want to say Y here.
|
||||||
|
Additionally, this option enables using higher memory spaces (up to
|
||||||
|
2.75G) for UML.
|
||||||
|
|
||||||
|
source "mm/Kconfig"
|
||||||
|
|
||||||
|
config LD_SCRIPT_STATIC
|
||||||
|
bool
|
||||||
|
default y
|
||||||
|
depends on STATIC_LINK
|
||||||
|
|
||||||
|
config LD_SCRIPT_DYN
|
||||||
|
bool
|
||||||
|
default y
|
||||||
|
depends on !LD_SCRIPT_STATIC
|
||||||
|
select MODULE_REL_CRCS if MODVERSIONS
|
||||||
|
|
||||||
|
source "fs/Kconfig.binfmt"
|
||||||
|
|
||||||
|
config HOSTFS
|
||||||
|
tristate "Host filesystem"
|
||||||
|
help
|
||||||
|
While the User-Mode Linux port uses its own root file system for
|
||||||
|
booting and normal file access, this module lets the UML user
|
||||||
|
access files stored on the host. It does not require any
|
||||||
|
network connection between the Host and UML. An example use of
|
||||||
|
this might be:
|
||||||
|
|
||||||
|
mount none /tmp/fromhost -t hostfs -o /tmp/umlshare
|
||||||
|
|
||||||
|
where /tmp/fromhost is an empty directory inside UML and
|
||||||
|
/tmp/umlshare is a directory on the host with files the UML user
|
||||||
|
wishes to access.
|
||||||
|
|
||||||
|
For more information, see
|
||||||
|
<http://user-mode-linux.sourceforge.net/hostfs.html>.
|
||||||
|
|
||||||
|
If you'd like to be able to work with files stored on the host,
|
||||||
|
say Y or M here; otherwise say N.
|
||||||
|
|
||||||
|
config MCONSOLE
|
||||||
|
bool "Management console"
|
||||||
|
depends on PROC_FS
|
||||||
|
default y
|
||||||
|
help
|
||||||
|
The user mode linux management console is a low-level interface to
|
||||||
|
the kernel, somewhat like the i386 SysRq interface. Since there is
|
||||||
|
a full-blown operating system running under every user mode linux
|
||||||
|
instance, there is much greater flexibility possible than with the
|
||||||
|
SysRq mechanism.
|
||||||
|
|
||||||
|
If you answer 'Y' to this option, to use this feature, you need the
|
||||||
|
mconsole client (called uml_mconsole) which is present in CVS in
|
||||||
|
2.4.5-9um and later (path /tools/mconsole), and is also in the
|
||||||
|
distribution RPM package in 2.4.6 and later.
|
||||||
|
|
||||||
|
It is safe to say 'Y' here.
|
||||||
|
|
||||||
|
config MAGIC_SYSRQ
|
||||||
|
bool "Magic SysRq key"
|
||||||
|
depends on MCONSOLE
|
||||||
|
help
|
||||||
|
If you say Y here, you will have some control over the system even
|
||||||
|
if the system crashes for example during kernel debugging (e.g., you
|
||||||
|
will be able to flush the buffer cache to disk, reboot the system
|
||||||
|
immediately or dump some status information). A key for each of the
|
||||||
|
possible requests is provided.
|
||||||
|
|
||||||
|
This is the feature normally accomplished by pressing a key
|
||||||
|
while holding SysRq (Alt+PrintScreen).
|
||||||
|
|
||||||
|
On UML, this is accomplished by sending a "sysrq" command with
|
||||||
|
mconsole, followed by the letter for the requested command.
|
||||||
|
|
||||||
|
The keys are documented in <file:Documentation/admin-guide/sysrq.rst>. Don't say Y
|
||||||
|
unless you really know what this hack does.
|
||||||
|
|
||||||
|
config KERNEL_STACK_ORDER
|
||||||
|
int "Kernel stack size order"
|
||||||
|
default 1 if 64BIT
|
||||||
|
range 1 10 if 64BIT
|
||||||
|
default 0 if !64BIT
|
||||||
|
help
|
||||||
|
This option determines the size of UML kernel stacks. They will
|
||||||
|
be 1 << order pages. The default is OK unless you're running Valgrind
|
||||||
|
on UML, in which case, set this to 3.
|
||||||
|
|
||||||
|
config MMAPPER
|
||||||
|
tristate "iomem emulation driver"
|
||||||
|
help
|
||||||
|
This driver allows a host file to be used as emulated IO memory inside
|
||||||
|
UML.
|
||||||
|
|
||||||
|
config NO_DMA
|
||||||
|
def_bool y
|
||||||
|
|
||||||
|
config PGTABLE_LEVELS
|
||||||
|
int
|
||||||
|
default 3 if 3_LEVEL_PGTABLES
|
||||||
|
default 2
|
||||||
|
|
||||||
|
config SECCOMP
|
||||||
|
def_bool y
|
||||||
|
prompt "Enable seccomp to safely compute untrusted bytecode"
|
||||||
|
---help---
|
||||||
|
This kernel feature is useful for number crunching applications
|
||||||
|
that may need to compute untrusted bytecode during their
|
||||||
|
execution. By using pipes or other transports made available to
|
||||||
|
the process as file descriptors supporting the read/write
|
||||||
|
syscalls, it's possible to isolate those applications in
|
||||||
|
their own address space using seccomp. Once seccomp is
|
||||||
|
enabled via prctl(PR_SET_SECCOMP), it cannot be disabled
|
||||||
|
and the task is only allowed to execute a few safe syscalls
|
||||||
|
defined by each seccomp mode.
|
||||||
|
|
||||||
|
If unsure, say Y.
|
||||||
|
|
||||||
|
endmenu
|
||||||
|
|
||||||
|
source "init/Kconfig"
|
||||||
|
|
||||||
|
source "kernel/Kconfig.freezer"
|
||||||
|
|
||||||
|
source "arch/um/Kconfig.char"
|
||||||
|
|
||||||
|
source "drivers/Kconfig"
|
||||||
|
|
||||||
|
source "net/Kconfig"
|
||||||
|
|
||||||
|
source "arch/um/Kconfig.net"
|
||||||
|
|
||||||
|
source "fs/Kconfig"
|
||||||
|
|
||||||
|
source "security/Kconfig"
|
||||||
|
|
||||||
|
source "crypto/Kconfig"
|
||||||
|
|
||||||
|
source "lib/Kconfig"
|
||||||
|
|
||||||
|
source "arch/um/Kconfig.debug"
|
||||||
|
@ -1,60 +0,0 @@
|
|||||||
# SPDX-License-Identifier: GPL-2.0
|
|
||||||
config UML
|
|
||||||
bool
|
|
||||||
default y
|
|
||||||
select ARCH_HAS_KCOV
|
|
||||||
select HAVE_ARCH_AUDITSYSCALL
|
|
||||||
select HAVE_ARCH_SECCOMP_FILTER
|
|
||||||
select HAVE_UID16
|
|
||||||
select HAVE_FUTEX_CMPXCHG if FUTEX
|
|
||||||
select HAVE_DEBUG_KMEMLEAK
|
|
||||||
select GENERIC_IRQ_SHOW
|
|
||||||
select GENERIC_CPU_DEVICES
|
|
||||||
select GENERIC_CLOCKEVENTS
|
|
||||||
select HAVE_GCC_PLUGINS
|
|
||||||
select TTY # Needed for line.c
|
|
||||||
|
|
||||||
config MMU
|
|
||||||
bool
|
|
||||||
default y
|
|
||||||
|
|
||||||
config NO_IOMEM
|
|
||||||
def_bool y
|
|
||||||
|
|
||||||
config ISA
|
|
||||||
bool
|
|
||||||
|
|
||||||
config SBUS
|
|
||||||
bool
|
|
||||||
|
|
||||||
config PCI
|
|
||||||
bool
|
|
||||||
|
|
||||||
config PCMCIA
|
|
||||||
bool
|
|
||||||
|
|
||||||
config TRACE_IRQFLAGS_SUPPORT
|
|
||||||
bool
|
|
||||||
default y
|
|
||||||
|
|
||||||
config LOCKDEP_SUPPORT
|
|
||||||
bool
|
|
||||||
default y
|
|
||||||
|
|
||||||
config STACKTRACE_SUPPORT
|
|
||||||
bool
|
|
||||||
default y
|
|
||||||
select STACKTRACE
|
|
||||||
|
|
||||||
config GENERIC_CALIBRATE_DELAY
|
|
||||||
bool
|
|
||||||
default y
|
|
||||||
|
|
||||||
config HZ
|
|
||||||
int
|
|
||||||
default 100
|
|
||||||
|
|
||||||
config NR_CPUS
|
|
||||||
int
|
|
||||||
range 1 1
|
|
||||||
default 1
|
|
@ -1,22 +0,0 @@
|
|||||||
# SPDX-License-Identifier: GPL-2.0
|
|
||||||
source "init/Kconfig"
|
|
||||||
|
|
||||||
source "kernel/Kconfig.freezer"
|
|
||||||
|
|
||||||
source "arch/um/Kconfig.char"
|
|
||||||
|
|
||||||
source "drivers/Kconfig"
|
|
||||||
|
|
||||||
source "net/Kconfig"
|
|
||||||
|
|
||||||
source "arch/um/Kconfig.net"
|
|
||||||
|
|
||||||
source "fs/Kconfig"
|
|
||||||
|
|
||||||
source "security/Kconfig"
|
|
||||||
|
|
||||||
source "crypto/Kconfig"
|
|
||||||
|
|
||||||
source "lib/Kconfig"
|
|
||||||
|
|
||||||
source "arch/um/Kconfig.debug"
|
|
@ -1,124 +0,0 @@
|
|||||||
# SPDX-License-Identifier: GPL-2.0
|
|
||||||
config STATIC_LINK
|
|
||||||
bool "Force a static link"
|
|
||||||
default n
|
|
||||||
help
|
|
||||||
This option gives you the ability to force a static link of UML.
|
|
||||||
Normally, UML is linked as a shared binary. This is inconvenient for
|
|
||||||
use in a chroot jail. So, if you intend to run UML inside a chroot,
|
|
||||||
you probably want to say Y here.
|
|
||||||
Additionally, this option enables using higher memory spaces (up to
|
|
||||||
2.75G) for UML.
|
|
||||||
|
|
||||||
source "mm/Kconfig"
|
|
||||||
|
|
||||||
config LD_SCRIPT_STATIC
|
|
||||||
bool
|
|
||||||
default y
|
|
||||||
depends on STATIC_LINK
|
|
||||||
|
|
||||||
config LD_SCRIPT_DYN
|
|
||||||
bool
|
|
||||||
default y
|
|
||||||
depends on !LD_SCRIPT_STATIC
|
|
||||||
select MODULE_REL_CRCS if MODVERSIONS
|
|
||||||
|
|
||||||
source "fs/Kconfig.binfmt"
|
|
||||||
|
|
||||||
config HOSTFS
|
|
||||||
tristate "Host filesystem"
|
|
||||||
help
|
|
||||||
While the User-Mode Linux port uses its own root file system for
|
|
||||||
booting and normal file access, this module lets the UML user
|
|
||||||
access files stored on the host. It does not require any
|
|
||||||
network connection between the Host and UML. An example use of
|
|
||||||
this might be:
|
|
||||||
|
|
||||||
mount none /tmp/fromhost -t hostfs -o /tmp/umlshare
|
|
||||||
|
|
||||||
where /tmp/fromhost is an empty directory inside UML and
|
|
||||||
/tmp/umlshare is a directory on the host with files the UML user
|
|
||||||
wishes to access.
|
|
||||||
|
|
||||||
For more information, see
|
|
||||||
<http://user-mode-linux.sourceforge.net/hostfs.html>.
|
|
||||||
|
|
||||||
If you'd like to be able to work with files stored on the host,
|
|
||||||
say Y or M here; otherwise say N.
|
|
||||||
|
|
||||||
config MCONSOLE
|
|
||||||
bool "Management console"
|
|
||||||
depends on PROC_FS
|
|
||||||
default y
|
|
||||||
help
|
|
||||||
The user mode linux management console is a low-level interface to
|
|
||||||
the kernel, somewhat like the i386 SysRq interface. Since there is
|
|
||||||
a full-blown operating system running under every user mode linux
|
|
||||||
instance, there is much greater flexibility possible than with the
|
|
||||||
SysRq mechanism.
|
|
||||||
|
|
||||||
If you answer 'Y' to this option, to use this feature, you need the
|
|
||||||
mconsole client (called uml_mconsole) which is present in CVS in
|
|
||||||
2.4.5-9um and later (path /tools/mconsole), and is also in the
|
|
||||||
distribution RPM package in 2.4.6 and later.
|
|
||||||
|
|
||||||
It is safe to say 'Y' here.
|
|
||||||
|
|
||||||
config MAGIC_SYSRQ
|
|
||||||
bool "Magic SysRq key"
|
|
||||||
depends on MCONSOLE
|
|
||||||
help
|
|
||||||
If you say Y here, you will have some control over the system even
|
|
||||||
if the system crashes for example during kernel debugging (e.g., you
|
|
||||||
will be able to flush the buffer cache to disk, reboot the system
|
|
||||||
immediately or dump some status information). A key for each of the
|
|
||||||
possible requests is provided.
|
|
||||||
|
|
||||||
This is the feature normally accomplished by pressing a key
|
|
||||||
while holding SysRq (Alt+PrintScreen).
|
|
||||||
|
|
||||||
On UML, this is accomplished by sending a "sysrq" command with
|
|
||||||
mconsole, followed by the letter for the requested command.
|
|
||||||
|
|
||||||
The keys are documented in <file:Documentation/admin-guide/sysrq.rst>. Don't say Y
|
|
||||||
unless you really know what this hack does.
|
|
||||||
|
|
||||||
config KERNEL_STACK_ORDER
|
|
||||||
int "Kernel stack size order"
|
|
||||||
default 1 if 64BIT
|
|
||||||
range 1 10 if 64BIT
|
|
||||||
default 0 if !64BIT
|
|
||||||
help
|
|
||||||
This option determines the size of UML kernel stacks. They will
|
|
||||||
be 1 << order pages. The default is OK unless you're running Valgrind
|
|
||||||
on UML, in which case, set this to 3.
|
|
||||||
|
|
||||||
config MMAPPER
|
|
||||||
tristate "iomem emulation driver"
|
|
||||||
help
|
|
||||||
This driver allows a host file to be used as emulated IO memory inside
|
|
||||||
UML.
|
|
||||||
|
|
||||||
config NO_DMA
|
|
||||||
def_bool y
|
|
||||||
|
|
||||||
config PGTABLE_LEVELS
|
|
||||||
int
|
|
||||||
default 3 if 3_LEVEL_PGTABLES
|
|
||||||
default 2
|
|
||||||
|
|
||||||
config SECCOMP
|
|
||||||
def_bool y
|
|
||||||
prompt "Enable seccomp to safely compute untrusted bytecode"
|
|
||||||
---help---
|
|
||||||
This kernel feature is useful for number crunching applications
|
|
||||||
that may need to compute untrusted bytecode during their
|
|
||||||
execution. By using pipes or other transports made available to
|
|
||||||
the process as file descriptors supporting the read/write
|
|
||||||
syscalls, it's possible to isolate those applications in
|
|
||||||
their own address space using seccomp. Once seccomp is
|
|
||||||
enabled via prctl(PR_SET_SECCOMP), it cannot be disabled
|
|
||||||
and the task is only allowed to execute a few safe syscalls
|
|
||||||
defined by each seccomp mode.
|
|
||||||
|
|
||||||
If unsure, say Y.
|
|
@ -1,9 +1,5 @@
|
|||||||
# SPDX-License-Identifier: GPL-2.0
|
# SPDX-License-Identifier: GPL-2.0
|
||||||
|
|
||||||
source "arch/um/Kconfig.common"
|
|
||||||
|
|
||||||
menu "UML-specific options"
|
|
||||||
|
|
||||||
menu "Host processor type and features"
|
menu "Host processor type and features"
|
||||||
|
|
||||||
source "arch/x86/Kconfig.cpu"
|
source "arch/x86/Kconfig.cpu"
|
||||||
@ -61,9 +57,3 @@ config ARCH_REUSE_HOST_VSYSCALL_AREA
|
|||||||
|
|
||||||
config GENERIC_HWEIGHT
|
config GENERIC_HWEIGHT
|
||||||
def_bool y
|
def_bool y
|
||||||
|
|
||||||
source "arch/um/Kconfig.um"
|
|
||||||
|
|
||||||
endmenu
|
|
||||||
|
|
||||||
source "arch/um/Kconfig.rest"
|
|
||||||
|
Loading…
Reference in New Issue
Block a user