kernel: reorganize CONFIG_USERSPACE

This now depends on a capability Kconfig.

Signed-off-by: Andrew Boie <andrew.p.boie@intel.com>
This commit is contained in:
Andrew Boie 2017-09-11 10:34:49 -07:00 committed by Andrew Boie
commit 9f70c7b281
2 changed files with 23 additions and 19 deletions

View file

@ -44,6 +44,26 @@ config HW_STACK_PROTECTION
help
Select this option to enable hardware stack protection.
config USERSPACE
bool "User mode threads"
depends on ARCH_HAS_USERSPACE
depends on HW_STACK_PROTECTION
help
When enabled, threads may be created or dropped down to user mode,
which has significantly restricted permissions and must interact
with the kernel via system calls. See Zephyr documentation for more
details about this feature.
config MAX_THREAD_BYTES
int "Bytes to use when tracking object thread permissions"
default 2
depends on USERSPACE
help
Every kernel object will have an associated bitfield to store
thread permissions for that object. This controls the size of the
bitfield (in bytes) and imposes a limit on how many threads can
be created in the system.
config SIMPLE_FATAL_ERROR_HANDLER
prompt "Simple system fatal error handler"
bool
@ -114,6 +134,9 @@ endmenu
config ARCH_HAS_STACK_PROTECTION
bool
config ARCH_HAS_USERSPACE
bool
#
# Hidden PM feature configs which are to be selected by
# individual SoC.

View file

@ -355,25 +355,6 @@ config NUM_PIPE_ASYNC_MSGS
Setting this option to 0 disables support for asynchronous
pipe messages.
config USERSPACE
bool "Enable user-level threads"
default n
help
When enabled, threads may be created or dropped down to user mode,
which has significantly restricted permissions and must interact
with the kernel via system calls. See Zephyr documentation for more
details about this feature.
config MAX_THREAD_BYTES
int "Bytes to use when tracking object thread permissions"
default 2
depends on USERSPACE
help
Every kernel object will have an associated bitfield to store
thread permissions for that object. This controls the size of the
bitfield (in bytes) and imposes a limit on how many threads can
be created in the system.
endmenu
menu "Memory Pool Options"