Boot Linux faster!

Check our new training course

Boot Linux faster!

Check our new training course
and Creative Commons CC-BY-SA
lecture and lab materials

Bootlin logo

Elixir Cross Referencer

# Intel64-specific X86 subarchitecture options

# Copyright (c) 2019 Intel Corp.
# SPDX-License-Identifier: Apache-2.0

if X86_64

config MAIN_STACK_SIZE
	default 8192

config IDLE_STACK_SIZE
	default 4096

config ISR_STACK_SIZE
	default 16384

config TEST_EXTRA_STACKSIZE
	default 4096

config SYSTEM_WORKQUEUE_STACK_SIZE
	default 8192

config OFFLOAD_WORKQUEUE_STACK_SIZE
	default 8192

config EXCEPTION_STACK_SIZE
	int "Size of the exception stack(s)"
	default 1024
	help
	  The exception stack(s) (one per CPU) are used both for exception
	  processing and early kernel/CPU initialization. They need only
	  support limited call-tree depth and must fit into the low core,
	  so they are typically smaller than the ISR stacks.

config SCHED_IPI_VECTOR
	int "IDT vector to use for scheduler IPI"
	default 33
	range 33 255
	depends on SMP

# We should really only have to provide one of the following two values,
# but a bug in the Zephyr SDK for x86 precludes the use of division in
# the assembler. For now, we require that these values be specified manually,
# and we check to be sure they're a valid combination in arch.h. yes, ugh.

config ISR_DEPTH
	int "Maximum IRQ nesting depth"
	default 4
	help
	  The more nesting allowed, the more room is required for IRQ stacks.

config ISR_SUBSTACK_SIZE
	int "Size of ISR substacks"
	default 4096
	help
	  Number of bytes from the ISR stack to reserve for each nested IRQ
	  level. Must be a multiple of 16 to main stack alignment. Note that
	  CONFIG_ISR_SUBSTACK_SIZE * CONFIG_ISR_DEPTH must be equal to
	  CONFIG_ISR_STACK_SIZE.

config X86_STACK_PROTECTION
	bool
	default y if HW_STACK_PROTECTION
	select THREAD_STACK_INFO
	help
	  This option leverages the MMU to cause a system fatal error if the
	  bounds of the current process stack are overflowed. This is done
	  by preceding all stack areas with a 4K guard page.

endif # X86_64