-
CONFIG_QEMU_TICKLESS_WORKAROUND
¶
Disable tickless on qemu due to asynchrony bug
Type: bool
Help¶
Qemu (without -icount) has trouble keeping time when the host process needs to timeshare. The host OS will routinely schedule out a process at timescales equivalent to the guest tick rate. With traditional ticks delivered regularly by the hardware, that’s mostly OK as it looks like a late interrupt. But in tickless mode, the driver needs some CPU in order to schedule the tick in the first place. If that gets delayed across a tick boundary, time gets wonky. This tunable is a hint to the driver to disable tickless accounting on qemu. Use it only on tests that are known to have problems.
Defaults¶
No defaults. Implicitly defaults to n
.
Kconfig definition¶
At drivers/timer/Kconfig:287
Included via Kconfig:8
→ Kconfig.zephyr:40
→ drivers/Kconfig:24
Menu path: (Top) → Device Drivers → Timer Drivers
config QEMU_TICKLESS_WORKAROUND bool "Disable tickless on qemu due to asynchrony bug" depends onQEMU_TARGET
&&TICKLESS_KERNEL
help Qemu (without -icount) has trouble keeping time when the host process needs to timeshare. The host OS will routinely schedule out a process at timescales equivalent to the guest tick rate. With traditional ticks delivered regularly by the hardware, that's mostly OK as it looks like a late interrupt. But in tickless mode, the driver needs some CPU in order to schedule the tick in the first place. If that gets delayed across a tick boundary, time gets wonky. This tunable is a hint to the driver to disable tickless accounting on qemu. Use it only on tests that are known to have problems.
(The ‘depends on’ condition includes propagated dependencies from ifs and menus.)