The latest development version of this page may be more current than this released 1.14.0 version.
CONFIG_USE_SWITCH

Use new-style _arch_switch instead of __swap

Type: bool

Help

The _arch_switch() API is a lower level context switching primitive than the original __swap mechanism. It is required for an SMP-aware scheduler, or if the architecture does not provide __swap. In uniprocess situations where the architecture provides both, _arch_switch incurs more somewhat overhead and may be slower.

Direct dependencies

SOC_X86_64 || USE_SWITCH_SUPPORTED

(Includes any dependencies from if’s and menus.)

Defaults

Symbols that select this symbol

Kconfig definitions

At soc/x86_64/x86_64/Kconfig.defconfig:8

Included via Kconfig:10Kconfig.zephyr:23

Menu path: (top menu)

config USE_SWITCH
    bool
    default "y" if SOC_X86_64
    depends on SOC_X86_64

At kernel/Kconfig:687

Included via Kconfig:10Kconfig.zephyr:31

Menu path: (top menu) → General Kernel Options → SMP Options

config USE_SWITCH
    bool
    prompt "Use new-style _arch_switch instead of __swap" if USE_SWITCH_SUPPORTED
    depends on USE_SWITCH_SUPPORTED
    help
      The _arch_switch() API is a lower level context switching
      primitive than the original __swap mechanism.  It is required
      for an SMP-aware scheduler, or if the architecture does not
      provide __swap.  In uniprocess situations where the
      architecture provides both, _arch_switch incurs more somewhat
      overhead and may be slower.

(Definitions include propagated dependencies, including from if’s and menus.)