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

Use scalable wait_q implementation

Type: bool

Help

When selected, the wait_q will be implemented with a balanced tree. Choose this if you expect to have many threads waiting on individual primitives. There is a ~2kb code size increase over WAITQ_DUMB (which may be shared with SCHED_SCALABLE) if the rbtree is not used elsewhere in the application, and pend/unpend operations on “small” queues will be somewhat slower (though this is not generally a performance path).

Direct dependencies

<choice WAITQ_ALGORITHM: Wait queue priority algorithm>

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

Kconfig definition

At kernel/Kconfig:274

Included via Kconfig:10Kconfig.zephyr:31

Menu path: (top menu) → General Kernel Options → Wait queue priority algorithm

config WAITQ_SCALABLE
    bool
    prompt "Use scalable wait_q implementation" if <choice WAITQ_ALGORITHM: Wait queue priority algorithm>
    depends on <choice WAITQ_ALGORITHM: Wait queue priority algorithm>
    help
      When selected, the wait_q will be implemented with a
      balanced tree.  Choose this if you expect to have many
      threads waiting on individual primitives.  There is a ~2kb
      code size increase over WAITQ_DUMB (which may be shared with
      SCHED_SCALABLE) if the rbtree is not used elsewhere in the
      application, and pend/unpend operations on "small" queues
      will be somewhat slower (though this is not generally a
      performance path).

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