Skip to content

ostest/hrtimer: Refactor hrtimer test.#3414

Merged
linguini1 merged 9 commits intoapache:masterfrom
Fix-Point:upstream_01_27_hrtimer
Feb 26, 2026
Merged

ostest/hrtimer: Refactor hrtimer test.#3414
linguini1 merged 9 commits intoapache:masterfrom
Fix-Point:upstream_01_27_hrtimer

Conversation

@Fix-Point
Copy link
Contributor

@Fix-Point Fix-Point commented Feb 25, 2026

Summary

The HRTimer test in ostest has been significantly refactored and enhanced to provide comprehensive coverage of high-resolution timer functionality. The previous test was limited in scope and could fail on virtual platforms (e.g., QEMU) due to timing inaccuracies caused by vCPU preemption.

Key improvements include:

  • Expanded test scenarios: Added dedicated test functions for one-shot timers, periodic timers, maximum delay (UINT64_MAX), random delays, and cancellation behavior. For SMP systems, additional tests validate critical section protection and proper cancellation synchronization.
  • Robust latency handling: Replaced strict assertions on timer latency with warnings when latency exceeds a configurable tolerance (now 10 ms). This allows the test to pass on QEMU while still flagging excessive delays.
  • Code clarity and maintainability: Introduced detailed function headers, renamed constants for readability, and replaced a custom assertion macro with standard ASSERT().
  • Build relocation: Moved the HRTimer test under the CONFIG_BUILD_FLAT conditional to align with other flat-mode tests, ensuring it is only built when appropriate.

These changes ensure the HRTimer subsystem is thoroughly validated across different hardware and virtual environments, with clear diagnostics for timing anomalies.

Impact

  • Users: No direct impact on end users; the change only affects the ostest test suite. Developers running the OS test will now see more extensive HRTimer validation.
  • Build process: The HRTimer test is now conditionally built only under CONFIG_BUILD_FLAT (alongside CONFIG_HRTIMER). This may affect builds that previously included the test in non-flat configurations, but such configurations are uncommon.
  • Documentation: Added comprehensive comments for each test function, explaining purpose, inputs, and expected behavior, improving maintainability.
  • Security: No security implications.
  • Compatibility: The test now uses standard ASSERT() instead of a custom macro; any external scripts relying on the old test output may need adjustment, but the overall test structure remains compatible with the OS test harness.

Testing

Tested on rv-virt:smp, ostest passed.

qemu-system-riscv32 -semihosting -M virt,aclint=on -cpu rv32 -smp 8 -bios none -nographic -kernel nuttx -s 
ABC
NuttShell (NSH) NuttX-12.12.0
nsh> 
nsh> ostest
stdio_test: write fd=1
stdio_test: Standard I/O Check: printf
stdio_test: write fd=2
stdio_test: Standard I/O Check: fprintf to stderr
ostest_main: putenv(Variable1=BadValue3)
ostest_main: setenv(Variable1, GoodValue1, TRUE)
ostest_main: setenv(Variable2, BadValue1, FALSE)
ostest_main: setenv(Variable2, GoodValue2, TRUE)
ostest_main: setenv(Variable3, GoodValue3, FALSE)
ostest_main: setenv(Variable3, BadValue2, FALSE)
....
user_main: hrtimer test
hrtimer_test start...
hrtimer_test_oneshot: delay = 0 ns
hrtimer_test_oneshot: delay = 0 ns
hrtimer_test_oneshot: delay = 0 ns
hrtimer_test_oneshot: delay = 1 ns
hrtimer_test_oneshot: delay = 0 ns
hrtimer_test_oneshot: delay = 0 ns
hrtimer_test_oneshot: delay = 0 ns
hrtimer_test_oneshot: delay = 0 ns
hrtimer_test_oneshot: delay = 0 ns
hrtimer_test_oneshot: delay = 0 ns
hrtimer_test_oneshot: delay = 0 ns
hrtimer_test_oneshot: delay = 0 ns
hrtimer_test_oneshot: delay = 0 ns
hrtimer_test_oneshot: delay = 0 ns
hrtimer_test_oneshot: delay = 0 ns
hrtimer_test_oneshot: delay = 1 ns
hrtimer_test_oneshot: delay = 0 ns
hrtimer_test_oneshot: delay = 0 ns
hrtimer_test_oneshot: delay = 0 ns
hrtimer_test_oneshot: delay = 0 ns
hrtimer_test_oneshot: delay = 0 ns
hrtimer_test_oneshot: delay = 0 ns
hrtimer_test_oneshot: delay = 0 ns
hrtimer_test_oneshot: delay = 0 ns
hrtimer_test_oneshot: delay = 0 ns
hrtimer_test_oneshot: delay = 0 ns
hrtimer_test_oneshot: delay = 0 ns
hrtimer_test_oneshot: delay = 0 ns
hrtimer_test_oneshot: delay = 0 ns
hrtimer_test_oneshot: delay = 0 ns
hrtimer_test_oneshot: delay = 0 ns
hrtimer_test_oneshot: delay = 0 ns
hrtimer_test_oneshot: delay = 0 ns
hrtimer_test_oneshot: delay = 1 ns
hrtimer_test_oneshot: delay = 0 ns
hrtimer_test_oneshot: delay = 0 ns
hrtimer_test_oneshot: delay = 0 ns
hrtimer_test_oneshot: delay = 0 ns
hrtimer_test_oneshot: delay = 10 ns
hrtimer_test_oneshot: delay = 0 ns
hrtimer_test_oneshot: delay = 0 ns
hrtimer_test_oneshot: delay = 0 ns
hrtimer_test_oneshot: delay = 0 ns
hrtimer_test_oneshot: delay = 0 ns
hrtimer_test_oneshot: delay = 0 ns
hrtimer_test_oneshot: delay = 0 ns
hrtimer_test_oneshot: delay = 0 ns
hrtimer_test_oneshot: delay = 0 ns
hrtimer_test_oneshot: delay = 1 ns
hrtimer_test_oneshot: delay = 1 ns
hrtimer_test_oneshot: delay = 0 ns
hrtimer_test_oneshot: delay = 0 ns
hrtimer_test_oneshot: delay = 0 ns
hrtimer_test_oneshot: delay = 1 ns
hrtimer_test_oneshot: delay = 0 ns
hrtimer_test_oneshot: delay = 0 ns
hrtimer_test_oneshot: delay = 1 ns
hrtimer_test_oneshot: delay = 0 ns
hrtimer_test_oneshot: delay = 0 ns
hrtimer_test_oneshot: delay = 0 ns
hrtimer_test_oneshot: delay = 1 ns
hrtimer_test_oneshot: delay = 0 ns
hrtimer_test_oneshot: delay = 1 ns
hrtimer_test_oneshot: delay = 0 ns
hrtimer_test_oneshot: delay = 0 ns
hrtimer_test_oneshot: delay = 0 ns
hrtimer_test_oneshot: delay = 1 ns
hrtimer_test_oneshot: delay = 0 ns
hrtimer_test_oneshot: delay = 0 ns
hrtimer_test_oneshot: delay = 0 ns
hrtimer_test_oneshot: delay = 0 ns
hrtimer_test_oneshot: delay = 1 ns
hrtimer_test_oneshot: delay = 0 ns
hrtimer_test_oneshot: delay = 0 ns
hrtimer_test_oneshot: delay = 1 ns
hrtimer_test_oneshot: delay = 0 ns
hrtimer_test_oneshot: delay = 0 ns
hrtimer_test_oneshot: delay = 1 ns
hrtimer_test_oneshot: delay = 1 ns
hrtimer_test_oneshot: delay = 10 ns
hrtimer_test_oneshot: delay = 1 ns
hrtimer_test_oneshot: delay = 1 ns
hrtimer_test_oneshot: delay = 1 ns
hrtimer_test_oneshot: delay = 1 ns
hrtimer_test_oneshot: delay = 1 ns
hrtimer_test_oneshot: delay = 1 ns
hrtimer_test_oneshot: delay = 1 ns
hrtimer_test_oneshot: delay = 1 ns
hrtimer_test_oneshot: delay = 1 ns
hrtimer_test_oneshot: delay = 1 ns
hrtimer_test_oneshot: delay = 1 ns
hrtimer_test_oneshot: delay = 1 ns
hrtimer_test_oneshot: delay = 1 ns
hrtimer_test_oneshot: delay = 1 ns
hrtimer_test_oneshot: delay = 1 ns
hrtimer_test_oneshot: delay = 1 ns
hrtimer_test_oneshot: delay = 1 ns
hrtimer_test_oneshot: delay = 10 ns
hrtimer_test_oneshot: delay = 1 ns
hrtimer_test_oneshot: delay = 1 ns
hrtimer_test_oneshot: delay = 1 ns
hrtimer_test_oneshot: delay = 1 ns
hrtimer_test_oneshot: delay = 100 ns
hrtimer_test_oneshot: delay = 1 ns
hrtimer_test_oneshot: delay = 1 ns
hrtimer_test_oneshot: delay = 1 ns
hrtimer_test_oneshot: delay = 1 ns
hrtimer_test_oneshot: delay = 1 ns
hrtimer_test_oneshot: delay = 1 ns
hrtimer_test_oneshot: delay = 1 ns
hrtimer_test_oneshot: delay = 1 ns
hrtimer_test_oneshot: delay = 1 ns
hrtimer_test_oneshot: delay = 10 ns
hrtimer_test_oneshot: delay = 10 ns
hrtimer_test_oneshot: delay = 1 ns
hrtimer_test_oneshot: delay = 1 ns
hrtimer_test_oneshot: delay = 1 ns
hrtimer_test_oneshot: delay = 10 ns
hrtimer_test_oneshot: delay = 1 ns
hrtimer_test_oneshot: delay = 1 ns
hrtimer_test_oneshot: delay = 10 ns
hrtimer_test_oneshot: delay = 1 ns
hrtimer_test_oneshot: delay = 1 ns
hrtimer_test_oneshot: delay = 1 ns
hrtimer_test_oneshot: delay = 10 ns
hrtimer_test_oneshot: delay = 1 ns
hrtimer_test_oneshot: delay = 10 ns
hrtimer_test_oneshot: delay = 1 ns
hrtimer_test_oneshot: delay = 1 ns
hrtimer_test_oneshot: delay = 1 ns
hrtimer_test_oneshot: delay = 10 ns
hrtimer_test_oneshot: delay = 1 ns
hrtimer_test_oneshot: delay = 1 ns
hrtimer_test_oneshot: delay = 1 ns
hrtimer_test_oneshot: delay = 1 ns
hrtimer_test_oneshot: delay = 10 ns
hrtimer_test_oneshot: delay = 1 ns
hrtimer_test_oneshot: delay = 1 ns
hrtimer_test_oneshot: delay = 10 ns
hrtimer_test_oneshot: delay = 1 ns
hrtimer_test_oneshot: delay = 1 ns
hrtimer_test_oneshot: delay = 10 ns
hrtimer_test_oneshot: delay = 10 ns
hrtimer_test_oneshot: delay = 100 ns
hrtimer_test_oneshot: delay = 10 ns
hrtimer_test_oneshot: delay = 10 ns
hrtimer_test_oneshot: delay = 10 ns
hrtimer_test_oneshot: delay = 10 ns
hrtimer_test_oneshot: delay = 10 ns
hrtimer_test_oneshot: delay = 10 ns
hrtimer_test_oneshot: delay = 10 ns
hrtimer_test_oneshot: delay = 10 ns
hrtimer_test_oneshot: delay = 10 ns
hrtimer_test_oneshot: delay = 10 ns
hrtimer_test_oneshot: delay = 10 ns
hrtimer_test_oneshot: delay = 10 ns
hrtimer_test_oneshot: delay = 10 ns
hrtimer_test_oneshot: delay = 10 ns
hrtimer_test_oneshot: delay = 10 ns
hrtimer_test_oneshot: delay = 10 ns
hrtimer_test_oneshot: delay = 10 ns
hrtimer_test_oneshot: delay = 100 ns
hrtimer_test_oneshot: delay = 10 ns
hrtimer_test_oneshot: delay = 10 ns
hrtimer_test_oneshot: delay = 10 ns
hrtimer_test_oneshot: delay = 10 ns
hrtimer_test_oneshot: delay = 1000 ns
hrtimer_test_oneshot: delay = 10 ns
hrtimer_test_oneshot: delay = 10 ns
hrtimer_test_oneshot: delay = 10 ns
hrtimer_test_oneshot: delay = 10 ns
hrtimer_test_oneshot: delay = 10 ns
hrtimer_test_oneshot: delay = 10 ns
hrtimer_test_oneshot: delay = 10 ns
hrtimer_test_oneshot: delay = 10 ns
hrtimer_test_oneshot: delay = 10 ns
hrtimer_test_oneshot: delay = 100 ns
hrtimer_test_oneshot: delay = 100 ns
hrtimer_test_oneshot: delay = 10 ns
hrtimer_test_oneshot: delay = 10 ns
hrtimer_test_oneshot: delay = 10 ns
hrtimer_test_oneshot: delay = 100 ns
hrtimer_test_oneshot: delay = 10 ns
hrtimer_test_oneshot: delay = 10 ns
hrtimer_test_oneshot: delay = 100 ns
hrtimer_test_oneshot: delay = 10 ns
hrtimer_test_oneshot: delay = 10 ns
hrtimer_test_oneshot: delay = 10 ns
hrtimer_test_oneshot: delay = 100 ns
hrtimer_test_oneshot: delay = 10 ns
hrtimer_test_oneshot: delay = 100 ns
hrtimer_test_oneshot: delay = 10 ns
hrtimer_test_oneshot: delay = 10 ns
hrtimer_test_oneshot: delay = 10 ns
hrtimer_test_oneshot: delay = 100 ns
hrtimer_test_oneshot: delay = 10 ns
hrtimer_test_oneshot: delay = 10 ns
hrtimer_test_oneshot: delay = 10 ns
hrtimer_test_oneshot: delay = 10 ns
hrtimer_test_oneshot: delay = 100 ns
hrtimer_test_oneshot: delay = 10 ns
hrtimer_test_oneshot: delay = 10 ns
hrtimer_test_oneshot: delay = 100 ns
hrtimer_test_oneshot: delay = 10 ns
hrtimer_test_oneshot: delay = 10 ns
hrtimer_test_oneshot: delay = 100 ns
hrtimer_test_oneshot: delay = 100 ns
hrtimer_test_oneshot: delay = 1000 ns
hrtimer_test_oneshot: delay = 100 ns
hrtimer_test_oneshot: delay = 100 ns
hrtimer_test_oneshot: delay = 100 ns
hrtimer_test_oneshot: delay = 100 ns
hrtimer_test_oneshot: delay = 100 ns
hrtimer_test_oneshot: delay = 100 ns
hrtimer_test_oneshot: delay = 100 ns
hrtimer_test_oneshot: delay = 100 ns
hrtimer_test_oneshot: delay = 100 ns
hrtimer_test_oneshot: delay = 100 ns
hrtimer_test_oneshot: delay = 100 ns
hrtimer_test_oneshot: delay = 100 ns
hrtimer_test_oneshot: delay = 100 ns
hrtimer_test_oneshot: delay = 100 ns
hrtimer_test_oneshot: delay = 100 ns
hrtimer_test_oneshot: delay = 100 ns
hrtimer_test_oneshot: delay = 100 ns
hrtimer_test_oneshot: delay = 1000 ns
hrtimer_test_oneshot: delay = 100 ns
hrtimer_test_oneshot: delay = 100 ns
hrtimer_test_oneshot: delay = 100 ns
hrtimer_test_oneshot: delay = 100 ns
hrtimer_test_oneshot: delay = 10000 ns
hrtimer_test_oneshot: delay = 100 ns
hrtimer_test_oneshot: delay = 100 ns
hrtimer_test_oneshot: delay = 100 ns
hrtimer_test_oneshot: delay = 100 ns
hrtimer_test_oneshot: delay = 100 ns
hrtimer_test_oneshot: delay = 100 ns
hrtimer_test_oneshot: delay = 100 ns
hrtimer_test_oneshot: delay = 100 ns
hrtimer_test_oneshot: delay = 100 ns
hrtimer_test_oneshot: delay = 1000 ns
hrtimer_test_oneshot: delay = 1000 ns
hrtimer_test_oneshot: delay = 100 ns
hrtimer_test_oneshot: delay = 100 ns
hrtimer_test_oneshot: delay = 100 ns
hrtimer_test_oneshot: delay = 1000 ns
hrtimer_test_oneshot: delay = 100 ns
hrtimer_test_oneshot: delay = 100 ns
hrtimer_test_oneshot: delay = 1000 ns
hrtimer_test_oneshot: delay = 100 ns
hrtimer_test_oneshot: delay = 100 ns
hrtimer_test_oneshot: delay = 100 ns
hrtimer_test_oneshot: delay = 1000 ns
hrtimer_test_oneshot: delay = 100 ns
hrtimer_test_oneshot: delay = 1000 ns
hrtimer_test_oneshot: delay = 100 ns
hrtimer_test_oneshot: delay = 100 ns
hrtimer_test_oneshot: delay = 100 ns
hrtimer_test_oneshot: delay = 1000 ns
hrtimer_test_oneshot: delay = 100 ns
hrtimer_test_oneshot: delay = 100 ns
hrtimer_test_oneshot: delay = 100 ns
hrtimer_test_oneshot: delay = 100 ns
hrtimer_test_oneshot: delay = 1000 ns
hrtimer_test_oneshot: delay = 100 ns
hrtimer_test_oneshot: delay = 100 ns
hrtimer_test_oneshot: delay = 1000 ns
hrtimer_test_oneshot: delay = 100 ns
hrtimer_test_oneshot: delay = 100 ns
hrtimer_test_oneshot: delay = 1000 ns
hrtimer_test_oneshot: delay = 1000 ns
hrtimer_test_oneshot: delay = 10000 ns
hrtimer_test_oneshot: delay = 1000 ns
hrtimer_test_oneshot: delay = 1000 ns
hrtimer_test_oneshot: delay = 1000 ns
hrtimer_test_oneshot: delay = 1000 ns
hrtimer_test_oneshot: delay = 1000 ns
hrtimer_test_oneshot: delay = 1000 ns
hrtimer_test_oneshot: delay = 1000 ns
hrtimer_test_oneshot: delay = 1000 ns
hrtimer_test_oneshot: delay = 1000 ns
hrtimer_test_oneshot: delay = 1000 ns
hrtimer_test_oneshot: delay = 1000 ns
hrtimer_test_oneshot: delay = 1000 ns
hrtimer_test_oneshot: delay = 1000 ns
hrtimer_test_oneshot: delay = 1000 ns
hrtimer_test_oneshot: delay = 1000 ns
hrtimer_test_oneshot: delay = 1000 ns
hrtimer_test_oneshot: delay = 1000 ns
hrtimer_test_oneshot: delay = 10000 ns
hrtimer_test_oneshot: delay = 1000 ns
hrtimer_test_oneshot: delay = 1000 ns
hrtimer_test_oneshot: delay = 1000 ns
hrtimer_test_oneshot: delay = 1000 ns
hrtimer_test_oneshot: delay = 1000 ns
hrtimer_test_oneshot: delay = 1000 ns
hrtimer_test_oneshot: delay = 1000 ns
hrtimer_test_oneshot: delay = 1000 ns
hrtimer_test_oneshot: delay = 1000 ns
hrtimer_test_oneshot: delay = 1000 ns
hrtimer_test_oneshot: delay = 1000 ns
hrtimer_test_oneshot: delay = 10000 ns
hrtimer_test_oneshot: delay = 10000 ns
hrtimer_test_oneshot: delay = 1000 ns
hrtimer_test_oneshot: delay = 1000 ns
hrtimer_test_oneshot: delay = 100000 ns
hrtimer_test_oneshot: delay = 1000 ns
hrtimer_test_oneshot: delay = 1000 ns
hrtimer_test_oneshot: delay = 1000 ns
hrtimer_test_oneshot: delay = 10000 ns
hrtimer_test_oneshot: delay = 1000 ns
hrtimer_test_oneshot: delay = 1000 ns
hrtimer_test_oneshot: delay = 10000 ns
hrtimer_test_oneshot: delay = 1000 ns
hrtimer_test_oneshot: delay = 1000 ns
hrtimer_test_oneshot: delay = 1000 ns
hrtimer_test_oneshot: delay = 10000 ns
hrtimer_test_oneshot: delay = 1000 ns
hrtimer_test_oneshot: delay = 10000 ns
hrtimer_test_oneshot: delay = 1000 ns
hrtimer_test_oneshot: delay = 1000 ns
hrtimer_test_oneshot: delay = 1000 ns
hrtimer_test_oneshot: delay = 10000 ns
hrtimer_test_oneshot: delay = 1000 ns
hrtimer_test_oneshot: delay = 1000 ns
hrtimer_test_oneshot: delay = 1000 ns
hrtimer_test_oneshot: delay = 1000 ns
hrtimer_test_oneshot: delay = 10000 ns
hrtimer_test_oneshot: delay = 1000 ns
hrtimer_test_oneshot: delay = 1000 ns
hrtimer_test_oneshot: delay = 10000 ns
hrtimer_test_oneshot: delay = 1000 ns
hrtimer_test_oneshot: delay = 1000 ns
hrtimer_test_oneshot: delay = 10000 ns
hrtimer_test_oneshot: delay = 10000 ns
hrtimer_test_oneshot: delay = 10000 ns
hrtimer_test_oneshot: delay = 10000 ns
hrtimer_test_oneshot: delay = 10000 ns
hrtimer_test_oneshot: delay = 10000 ns
hrtimer_test_oneshot: delay = 10000 ns
hrtimer_test_oneshot: delay = 10000 ns
hrtimer_test_oneshot: delay = 10000 ns
hrtimer_test_oneshot: delay = 10000 ns
hrtimer_test_oneshot: delay = 10000 ns
hrtimer_test_oneshot: delay = 10000 ns
hrtimer_test_oneshot: delay = 10000 ns
hrtimer_test_oneshot: delay = 10000 ns
hrtimer_test_oneshot: delay = 100000 ns
hrtimer_test_oneshot: delay = 10000 ns
hrtimer_test_oneshot: delay = 10000 ns
hrtimer_test_oneshot: delay = 10000 ns
hrtimer_test_oneshot: delay = 10000 ns
hrtimer_test_oneshot: delay = 10000 ns
hrtimer_test_oneshot: delay = 10000 ns
hrtimer_test_oneshot: delay = 10000 ns
hrtimer_test_oneshot: delay = 10000 ns
hrtimer_test_oneshot: delay = 10000 ns
hrtimer_test_oneshot: delay = 10000 ns
hrtimer_test_oneshot: delay = 10000 ns
hrtimer_test_oneshot: delay = 10000 ns
hrtimer_test_oneshot: delay = 10000 ns
hrtimer_test_oneshot: delay = 10000 ns
hrtimer_test_oneshot: delay = 10000 ns
hrtimer_test_oneshot: delay = 10000 ns
hrtimer_test_oneshot: delay = 100000 ns
hrtimer_test_oneshot: delay = 10000 ns
hrtimer_test_oneshot: delay = 10000 ns
hrtimer_test_oneshot: delay = 10000 ns
hrtimer_test_oneshot: delay = 10000 ns
hrtimer_test_oneshot: delay = 10000 ns
hrtimer_test_oneshot: delay = 10000 ns
hrtimer_test_oneshot: delay = 10000 ns
hrtimer_test_oneshot: delay = 10000 ns
hrtimer_test_oneshot: delay = 10000 ns
hrtimer_test_oneshot: delay = 10000 ns
hrtimer_test_oneshot: delay = 10000 ns
hrtimer_test_oneshot: delay = 10000 ns
hrtimer_test_oneshot: delay = 10000 ns
hrtimer_test_oneshot: delay = 100000 ns
hrtimer_test_oneshot: delay = 100000 ns
hrtimer_test_oneshot: delay = 1000000 ns
hrtimer_test_oneshot: delay = 10000 ns
hrtimer_test_oneshot: delay = 10000 ns
hrtimer_test_oneshot: delay = 10000 ns
hrtimer_test_oneshot: delay = 10000 ns
hrtimer_test_oneshot: delay = 10000 ns
hrtimer_test_oneshot: delay = 10000 ns
hrtimer_test_oneshot: delay = 10000 ns
hrtimer_test_oneshot: delay = 100000 ns
hrtimer_test_oneshot: delay = 100000 ns
hrtimer_test_oneshot: delay = 100000 ns
hrtimer_test_oneshot: delay = 100000 ns
hrtimer_test_oneshot: delay = 10000 ns
hrtimer_test_oneshot: delay = 10000 ns
hrtimer_test_oneshot: delay = 100000 ns
hrtimer_test_oneshot: delay = 100000 ns
hrtimer_test_oneshot: delay = 100000 ns
hrtimer_test_oneshot: delay = 100000 ns
hrtimer_test_oneshot: delay = 100000 ns
hrtimer_test_oneshot: delay = 100000 ns
hrtimer_test_oneshot: delay = 100000 ns
hrtimer_test_oneshot: delay = 100000 ns
hrtimer_test_oneshot: delay = 100000 ns
hrtimer_test_oneshot: delay = 100000 ns
hrtimer_test_oneshot: delay = 100000 ns
hrtimer_test_oneshot: delay = 100000 ns
hrtimer_test_oneshot: delay = 100000 ns
hrtimer_test_oneshot: delay = 100000 ns
hrtimer_test_oneshot: delay = 100000 ns
hrtimer_test_oneshot: delay = 100000 ns
hrtimer_test_oneshot: delay = 1000000 ns
hrtimer_test_oneshot: delay = 100000 ns
hrtimer_test_oneshot: delay = 100000 ns
hrtimer_test_oneshot: delay = 100000 ns
hrtimer_test_oneshot: delay = 100000 ns
hrtimer_test_oneshot: delay = 100000 ns
hrtimer_test_oneshot: delay = 100000 ns
hrtimer_test_oneshot: delay = 100000 ns
hrtimer_test_oneshot: delay = 100000 ns
hrtimer_test_oneshot: delay = 100000 ns
hrtimer_test_oneshot: delay = 100000 ns
hrtimer_test_oneshot: delay = 100000 ns
hrtimer_test_oneshot: delay = 100000 ns
hrtimer_test_oneshot: delay = 100000 ns
hrtimer_test_oneshot: delay = 100000 ns
hrtimer_test_oneshot: delay = 100000 ns
hrtimer_test_oneshot: delay = 100000 ns
hrtimer_test_oneshot: delay = 100000 ns
hrtimer_test_oneshot: delay = 1000000 ns
hrtimer_test_oneshot: delay = 100000 ns
hrtimer_test_oneshot: delay = 100000 ns
hrtimer_test_oneshot: delay = 100000 ns
hrtimer_test_oneshot: delay = 100000 ns
hrtimer_test_oneshot: delay = 100000 ns
hrtimer_test_oneshot: delay = 100000 ns
hrtimer_test_oneshot: delay = 100000 ns
hrtimer_test_oneshot: delay = 100000 ns
hrtimer_test_oneshot: delay = 100000 ns
hrtimer_test_oneshot: delay = 100000 ns
hrtimer_test_oneshot: delay = 100000 ns
hrtimer_test_oneshot: delay = 100000 ns
hrtimer_test_oneshot: delay = 100000 ns
hrtimer_test_oneshot: delay = 1000000 ns
hrtimer_test_oneshot: delay = 1000000 ns
hrtimer_test_oneshot: delay = 100000 ns
hrtimer_test_oneshot: delay = 100000 ns
hrtimer_test_oneshot: delay = 100000 ns
hrtimer_test_oneshot: delay = 100000 ns
hrtimer_test_oneshot: delay = 10000000 ns
hrtimer_test_oneshot: delay = 100000 ns
hrtimer_test_oneshot: delay = 100000 ns
hrtimer_test_oneshot: delay = 100000 ns
hrtimer_test_oneshot: delay = 1000000 ns
hrtimer_test_oneshot: delay = 1000000 ns
hrtimer_test_oneshot: delay = 1000000 ns
hrtimer_test_oneshot: delay = 100000 ns
hrtimer_test_oneshot: delay = 100000 ns
hrtimer_test_oneshot: delay = 1000000 ns
hrtimer_test_oneshot: delay = 1000000 ns
hrtimer_test_oneshot: delay = 1000000 ns
hrtimer_test_oneshot: delay = 1000000 ns
hrtimer_test_oneshot: delay = 1000000 ns
hrtimer_test_oneshot: delay = 1000000 ns
hrtimer_test_oneshot: delay = 1000000 ns
hrtimer_test_oneshot: delay = 1000000 ns
hrtimer_test_oneshot: delay = 1000000 ns
hrtimer_test_oneshot: delay = 1000000 ns
hrtimer_test_oneshot: delay = 1000000 ns
hrtimer_test_oneshot: delay = 1000000 ns
hrtimer_test_oneshot: delay = 1000000 ns
hrtimer_test_oneshot: delay = 1000000 ns
hrtimer_test_oneshot: delay = 1000000 ns
hrtimer_test_oneshot: delay = 1000000 ns
hrtimer_test_oneshot: delay = 1000000 ns
hrtimer_test_oneshot: delay = 1000000 ns
hrtimer_test_oneshot: delay = 1000000 ns
hrtimer_test_oneshot: delay = 10000000 ns
hrtimer_test_oneshot: delay = 1000000 ns
hrtimer_test_oneshot: delay = 1000000 ns
hrtimer_test_oneshot: delay = 1000000 ns
hrtimer_test_oneshot: delay = 1000000 ns
hrtimer_test_oneshot: delay = 1000000 ns
hrtimer_test_oneshot: delay = 1000000 ns
hrtimer_test_oneshot: delay = 1000000 ns
hrtimer_test_oneshot: delay = 1000000 ns
hrtimer_test_oneshot: delay = 1000000 ns
hrtimer_test_oneshot: delay = 1000000 ns
hrtimer_test_oneshot: delay = 1000000 ns
hrtimer_test_oneshot: delay = 1000000 ns
hrtimer_test_oneshot: delay = 1000000 ns
hrtimer_test_oneshot: delay = 1000000 ns
hrtimer_test_oneshot: delay = 1000000 ns
hrtimer_test_oneshot: delay = 10000000 ns
hrtimer_test_oneshot: delay = 1000000 ns
hrtimer_test_oneshot: delay = 1000000 ns
hrtimer_test_oneshot: delay = 1000000 ns
hrtimer_test_oneshot: delay = 1000000 ns
hrtimer_test_oneshot: delay = 1000000 ns
hrtimer_test_oneshot: delay = 1000000 ns
hrtimer_test_oneshot: delay = 1000000 ns
hrtimer_test_oneshot: delay = 1000000 ns
hrtimer_test_oneshot: delay = 1000000 ns
hrtimer_test_oneshot: delay = 1000000 ns
hrtimer_test_oneshot: delay = 1000000 ns
hrtimer_test_oneshot: delay = 1000000 ns
hrtimer_test_oneshot: delay = 1000000 ns
hrtimer_test_oneshot: delay = 1000000 ns
hrtimer_test_oneshot: delay = 10000000 ns
hrtimer_test_oneshot: delay = 10000000 ns
hrtimer_test_oneshot: delay = 1000000 ns
hrtimer_test_oneshot: delay = 1000000 ns
hrtimer_test_oneshot: delay = 1000000 ns
hrtimer_test_oneshot: delay = 1000000 ns
hrtimer_test_oneshot: delay = 1000000 ns
hrtimer_test_oneshot: delay = 1000000 ns
hrtimer_test_oneshot: delay = 10000000 ns
hrtimer_test_oneshot: delay = 1000000 ns
hrtimer_test_oneshot: delay = 1000000 ns
hrtimer_test_oneshot: delay = 10000000 ns
hrtimer_test_oneshot: delay = 10000000 ns
hrtimer_test_oneshot: delay = 10000000 ns
hrtimer_test_oneshot: delay = 10000000 ns
hrtimer_test_oneshot: delay = 10000000 ns
hrtimer_test_oneshot: delay = 10000000 ns
hrtimer_test_oneshot: delay = 10000000 ns
hrtimer_test_oneshot: delay = 10000000 ns
hrtimer_test_oneshot: delay = 10000000 ns
hrtimer_test_oneshot: delay = 10000000 ns
hrtimer_test_oneshot: delay = 10000000 ns
hrtimer_test_oneshot: delay = 10000000 ns
hrtimer_test_oneshot: delay = 10000000 ns
hrtimer_test_oneshot: delay = 10000000 ns
hrtimer_test_oneshot: delay = 10000000 ns
hrtimer_test_oneshot: delay = 10000000 ns
hrtimer_test_oneshot: delay = 10000000 ns
hrtimer_test_oneshot: delay = 10000000 ns
hrtimer_test_oneshot: delay = 10000000 ns
hrtimer_test_oneshot: delay = 10000000 ns
hrtimer_test_oneshot: delay = 10000000 ns
hrtimer_test_oneshot: delay = 10000000 ns
hrtimer_test_oneshot: delay = 10000000 ns
hrtimer_test_oneshot: delay = 10000000 ns
hrtimer_test_oneshot: delay = 10000000 ns
hrtimer_test_oneshot: delay = 10000000 ns
hrtimer_test_oneshot: delay = 10000000 ns
hrtimer_test_oneshot: delay = 10000000 ns
hrtimer_test_oneshot: delay = 10000000 ns
hrtimer_test_oneshot: delay = 10000000 ns
hrtimer_test_oneshot: delay = 10000000 ns
hrtimer_test_oneshot: delay = 10000000 ns
hrtimer_test_oneshot: delay = 10000000 ns
hrtimer_test_oneshot: delay = 10000000 ns
hrtimer_test_oneshot: delay = 10000000 ns
hrtimer_test_oneshot: delay = 10000000 ns
hrtimer_test_oneshot: delay = 10000000 ns
hrtimer_test_oneshot: delay = 10000000 ns
hrtimer_test_oneshot: delay = 10000000 ns
hrtimer_test_oneshot: delay = 10000000 ns
hrtimer_test_oneshot: delay = 10000000 ns
hrtimer_test_oneshot: delay = 10000000 ns
hrtimer_test_oneshot: delay = 10000000 ns
hrtimer_test_oneshot: delay = 10000000 ns
hrtimer_test_oneshot: delay = 10000000 ns
hrtimer_test_oneshot: delay = 10000000 ns
hrtimer_test_oneshot: delay = 10000000 ns
hrtimer_test_oneshot: delay = 10000000 ns
hrtimer_test_oneshot: delay = 10000000 ns
hrtimer_test_oneshot: delay = 10000000 ns
hrtimer_test_oneshot: delay = 10000000 ns
hrtimer_test_oneshot: delay = 10000000 ns
hrtimer_test_oneshot: delay = 10000000 ns
hrtimer_test_oneshot: delay = 10000000 ns
hrtimer_test_oneshot: delay = 10000000 ns
hrtimer_test_oneshot: delay = 10000000 ns
hrtimer_test_oneshot: delay = 10000000 ns
hrtimer_test_oneshot: delay = 10000000 ns
hrtimer_test_cancel_sync: passed 256 times
hrtimer_test_cancel_sync: passed 256 times
hrtimer_test_cancel_sync: passed 256 times
hrtimer_test_cancel_sync: passed 256 times
hrtimer_test_cancel_sync: passed 256 times
hrtimer_test_cancel_sync: passed 256 times
hrtimer_test_cancel_sync: passed 256 times
hrtimer_test_cancel_sync: passed 256 times
hrtimer_test_cancel_sync: passed 256 times
hrtimer_test_cancel_sync: passed 256 times
hrtimer_test_cancel_sync: passed 256 times
hrtimer_test_cancel_sync: passed 256 times
hrtimer_test_cancel_sync: passed 256 times
hrtimer_test_cancel_sync: passed 256 times
hrtimer_test_cancel_sync: passed 256 times
hrtimer_test_cancel_sync: passed 256 times
hrtimer_test_cancel_sync: passed 256 times
hrtimer_test_cancel_sync: passed 256 times
hrtimer_test_cancel_sync: passed 256 times
hrtimer_test_cancel_sync: passed 256 times
hrtimer_test_cancel_sync: passed 256 times
hrtimer_test_cancel_sync: passed 256 times
hrtimer_test_cancel_sync: passed 256 times
hrtimer_test_cancel_sync: passed 256 times
hrtimer_test_cancel_sync: passed 256 times
hrtimer_test_cancel_sync: passed 256 times
hrtimer_test_cancel_sync: passed 256 times
hrtimer_test_cancel_sync: passed 256 times
hrtimer_test_cancel_sync: passed 256 times
hrtimer_test_cancel_sync: passed 256 times
hrtimer_test_cancel_sync: passed 256 times
hrtimer_test_cancel_sync: passed 256 times
hrtimer_test_cancel_sync: passed 256 times
hrtimer_test_cancel_sync: passed 256 times
hrtimer_test_cancel_sync: passed 512 times
hrtimer_test_cancel_sync: passed 256 times
hrtimer_test_cancel_sync: passed 256 times
hrtimer_test_cancel_sync: passed 256 times
hrtimer_test_cancel_sync: passed 256 times
hrtimer_test_cancel_sync: passed 256 times
hrtimer_test_cancel_sync: passed 256 times
hrtimer_test_cancel_sync: passed 256 times
hrtimer_test_cancel_sync: passed 256 times
hrtimer_test_cancel_sync: passed 256 times
hrtimer_test_cancel_sync: passed 256 times
hrtimer_test_cancel_sync: passed 256 times
hrtimer_test_cancel_sync: passed 256 times
hrtimer_test_cancel_sync: passed 256 times
hrtimer_test_cancel_sync: passed 256 times
hrtimer_test_cancel_sync: passed 256 times
hrtimer_test_cancel_sync: passed 256 times
hrtimer_test_cancel_sync: passed 256 times
hrtimer_test_cancel_sync: passed 256 times
hrtimer_test_cancel_sync: passed 256 times
hrtimer_test_cancel_sync: passed 256 times
hrtimer_test_cancel_sync: passed 256 times
hrtimer_test_cancel_sync: passed 512 times
hrtimer_test_cancel_sync: passed 256 times
hrtimer_test_cancel_sync: passed 256 times
hrtimer_test_cancel_sync: passed 256 times
hrtimer_test_cancel_sync: passed 256 times
hrtimer_test_cancel_sync: passed 256 times
hrtimer_test_cancel_sync: passed 256 times
hrtimer_test_cancel_sync: passed 256 times
hrtimer_test_cancel_sync: passed 256 times
hrtimer_test_cancel_sync: passed 512 times
hrtimer_test_cancel_sync: passed 512 times
hrtimer_test_cancel_sync: passed 256 times
hrtimer_test_cancel_sync: passed 512 times
hrtimer_test_cancel_sync: passed 512 times
hrtimer_test_cancel_sync: passed 512 times
hrtimer_test_cancel_sync: passed 512 times
hrtimer_test_cancel_sync: passed 512 times
hrtimer_test_cancel_sync: passed 512 times
hrtimer_test_cancel_sync: passed 512 times
hrtimer_test_cancel_sync: passed 512 times
hrtimer_test_cancel_sync: passed 512 times
hrtimer_test_cancel_sync: passed 512 times
hrtimer_test_cancel_sync: passed 512 times
hrtimer_test_cancel_sync: passed 512 times
hrtimer_test_cancel_sync: passed 512 times
hrtimer_test_cancel_sync: passed 512 times
hrtimer_test_cancel_sync: passed 512 times
hrtimer_test_cancel_sync: passed 512 times
hrtimer_test_cancel_sync: passed 512 times
hrtimer_test_cancel_sync: passed 512 times
hrtimer_test_cancel_sync: passed 512 times
hrtimer_test_cancel_sync: passed 512 times
hrtimer_test_cancel_sync: passed 512 times
hrtimer_test_cancel_sync: passed 512 times
hrtimer_test_cancel_sync: passed 512 times
hrtimer_test_cancel_sync: passed 512 times
hrtimer_test_cancel_sync: passed 512 times
hrtimer_test_cancel_sync: passed 512 times
hrtimer_test_cancel_sync: passed 512 times
hrtimer_test_cancel_sync: passed 512 times
hrtimer_test_cancel_sync: passed 512 times
hrtimer_test_cancel_sync: passed 512 times
hrtimer_test_cancel_sync: passed 512 times
hrtimer_test_cancel_sync: passed 512 times
hrtimer_test_cancel_sync: passed 512 times
hrtimer_test_cancel_sync: passed 512 times
hrtimer_test_cancel_sync: passed 512 times
hrtimer_test_cancel_sync: passed 512 times
hrtimer_test_cancel_sync: passed 512 times
hrtimer_test_cancel_sync: passed 768 times
hrtimer_test_cancel_sync: passed 512 times
hrtimer_test_cancel_sync: passed 512 times
hrtimer_test_cancel_sync: passed 512 times
hrtimer_test_cancel_sync: passed 512 times
hrtimer_test_cancel_sync: passed 512 times
hrtimer_test_cancel_sync: passed 512 times
hrtimer_test_cancel_sync: passed 512 times
hrtimer_test_cancel_sync: passed 512 times
hrtimer_test_cancel_sync: passed 512 times
hrtimer_test_cancel_sync: passed 512 times
hrtimer_test_cancel_sync: passed 512 times
hrtimer_test_cancel_sync: passed 512 times
hrtimer_test_cancel_sync: passed 768 times
hrtimer_test_cancel_sync: passed 512 times
hrtimer_test_cancel_sync: passed 512 times
hrtimer_test_cancel_sync: passed 512 times
hrtimer_test_cancel_sync: passed 512 times
hrtimer_test_cancel_sync: passed 512 times
hrtimer_test_cancel_sync: passed 768 times
hrtimer_test_cancel_sync: passed 512 times
hrtimer_test_cancel_sync: passed 512 times
hrtimer_test_cancel_sync: passed 512 times
hrtimer_test_cancel_sync: passed 512 times
hrtimer_test_cancel_sync: passed 512 times
hrtimer_test_cancel_sync: passed 768 times
hrtimer_test_cancel_sync: passed 768 times
hrtimer_test_cancel_sync: passed 768 times
hrtimer_test_cancel_sync: passed 768 times
hrtimer_test_cancel_sync: passed 768 times
hrtimer_test_cancel_sync: passed 512 times
hrtimer_test_cancel_sync: passed 768 times
hrtimer_test_cancel_sync: passed 768 times
hrtimer_test_cancel_sync: passed 768 times
hrtimer_test_cancel_sync: passed 768 times
hrtimer_test_cancel_sync: passed 768 times
hrtimer_test_cancel_sync: passed 768 times
hrtimer_test_cancel_sync: passed 768 times
hrtimer_test_cancel_sync: passed 768 times
hrtimer_test_cancel_sync: passed 768 times
hrtimer_test_cancel_sync: passed 768 times
hrtimer_test_cancel_sync: passed 768 times
hrtimer_test_cancel_sync: passed 768 times
hrtimer_test_cancel_sync: passed 768 times
hrtimer_test_cancel_sync: passed 768 times
hrtimer_test_cancel_sync: passed 768 times
hrtimer_test_cancel_sync: passed 768 times
hrtimer_test_cancel_sync: passed 768 times
hrtimer_test_cancel_sync: passed 768 times
hrtimer_test_cancel_sync: passed 768 times
hrtimer_test_cancel_sync: passed 768 times
hrtimer_test_cancel_sync: passed 768 times
hrtimer_test_cancel_sync: passed 1024 times
hrtimer_test_cancel_sync: passed 768 times
hrtimer_test_cancel_sync: passed 768 times
hrtimer_test_cancel_sync: passed 768 times
hrtimer_test_cancel_sync: passed 768 times
hrtimer_test_cancel_sync: passed 768 times
hrtimer_test_cancel_sync: passed 768 times
hrtimer_test_cancel_sync: passed 768 times
hrtimer_test_cancel_sync: passed 768 times
hrtimer_test_cancel_sync: passed 768 times
hrtimer_test_cancel_sync: passed 768 times
hrtimer_test_cancel_sync: passed 768 times
hrtimer_test_cancel_sync: passed 768 times
hrtimer_test_cancel_sync: passed 768 times
hrtimer_test_cancel_sync: passed 768 times
hrtimer_test_cancel_sync: passed 768 times
hrtimer_test_cancel_sync: passed 768 times
hrtimer_test_cancel_sync: passed 768 times
hrtimer_test_cancel_sync: passed 768 times
hrtimer_test_cancel_sync: passed 768 times
hrtimer_test_cancel_sync: passed 768 times
hrtimer_test_cancel_sync: passed 768 times
hrtimer_test_cancel_sync: passed 1024 times
hrtimer_test_cancel_sync: passed 768 times
hrtimer_test_cancel_sync: passed 1024 times
hrtimer_test_cancel_sync: passed 768 times
hrtimer_test_cancel_sync: passed 768 times
hrtimer_test_cancel_sync: passed 768 times
hrtimer_test_cancel_sync: passed 768 times
hrtimer_test_cancel_sync: passed 768 times
hrtimer_test_cancel_sync: passed 768 times
hrtimer_test_cancel_sync: passed 768 times
hrtimer_test_cancel_sync: passed 768 times
hrtimer_test_cancel_sync: passed 768 times
hrtimer_test_cancel_sync: passed 768 times
hrtimer_test_cancel_sync: passed 1024 times
hrtimer_test_cancel_sync: passed 768 times
hrtimer_test_cancel_sync: passed 1024 times
hrtimer_test_cancel_sync: passed 1024 times
hrtimer_test_cancel_sync: passed 1024 times
hrtimer_test_cancel_sync: passed 1024 times
hrtimer_test_cancel_sync: passed 1024 times
hrtimer_test_cancel_sync: passed 1024 times
hrtimer_test_cancel_sync: passed 1024 times
hrtimer_test_cancel_sync: passed 1024 times
hrtimer_test_cancel_sync: passed 1024 times
hrtimer_test_cancel_sync: passed 768 times
hrtimer_test_cancel_sync: passed 1024 times
hrtimer_test_cancel_sync: passed 1024 times
hrtimer_test_cancel_sync: passed 1024 times
hrtimer_test_cancel_sync: passed 1024 times
hrtimer_test_cancel_sync: passed 768 times
hrtimer_test_cancel_sync: passed 1024 times
hrtimer_test_cancel_sync: passed 1024 times
hrtimer_test_cancel_sync: passed 1024 times
hrtimer_test_cancel_sync: passed 1024 times
hrtimer_test_cancel_sync: passed 1024 times
hrtimer_test_cancel_sync: passed 1024 times
hrtimer_test_cancel_sync: passed 1024 times
hrtimer_test_cancel_sync: passed 1024 times
hrtimer_test_cancel_sync: passed 1024 times
hrtimer_test_cancel_sync: passed 1024 times
hrtimer_test_cancel_sync: passed 1024 times
hrtimer_test_cancel_sync: passed 1024 times
hrtimer_test_cancel_sync: passed 1024 times
hrtimer_test_cancel_sync: passed 1024 times
hrtimer_test_cancel_sync: passed 1024 times
hrtimer_test_cancel_sync: passed 1024 times
hrtimer_test_cancel_sync: passed 1024 times
hrtimer_test_cancel_sync: passed 1024 times
hrtimer_test_cancel_sync: passed 1024 times
hrtimer_test_cancel_sync: passed 1024 times
hrtimer_test_cancel_sync: passed 1024 times
hrtimer_test_cancel_sync: passed 1024 times
hrtimer_test_cancel_sync: passed 1024 times
hrtimer_test_cancel_sync: passed 1024 times
hrtimer_test_cancel_sync: passed 1024 times
hrtimer_test_cancel_sync: passed 1024 times
hrtimer_test_cancel_sync: passed 1024 times
hrtimer_test_cancel_sync: passed 1024 times
hrtimer_test_cancel_sync: passed 1024 times
hrtimer_test_cancel_sync: passed 1024 times
hrtimer_test_cancel_sync: passed 1024 times
hrtimer_test_cancel_sync: passed 1024 times
hrtimer_test_cancel_sync: passed 1024 times
hrtimer_test_cancel_sync: passed 1024 times
hrtimer_test_cancel_sync: passed 1024 times
hrtimer_test_cancel_sync: passed 1024 times
hrtimer_test_cancel_sync: passed 1024 times
hrtimer_test_cancel_sync: passed 1024 times
hrtimer_test_cancel_sync: passed 1024 times
hrtimer_test_cancel_sync: passed 1024 times
hrtimer_test_cancel_sync: passed 1024 times
hrtimer_test_cancel_sync: passed 1024 times
hrtimer_test_cancel_sync: passed 1024 times
hrtimer_test_cancel_sync: passed 1024 times
hrtimer_test_cancel_sync: passed 1024 times
hrtimer_test_cancel_sync: passed 1024 times
hrtimer_test_cancel_sync: passed 1024 times
hrtimer_test_maximum: testing with UINT64_MAX delay
hrtimer_test_maximum: remaining time = 4291593995 ns
hrtimer_test_period: period = 1000000 ns, iters = 128
hrtimer_test_maximum: testing with UINT64_MAX delay
hrtimer_test_maximum: remaining time = 4291992895 ns
hrtimer_test_period: period = 1000000 ns, iters = 128
hrtimer_test_maximum: testing with UINT64_MAX delay
hrtimer_test_maximum: testing with UINT64_MAX delay
hrtimer_test_maximum: remaining time = 4291868095 ns
hrtimer_test_period: period = 1000000 ns, iters = 128
hrtimer_test_maximum: testing with UINT64_MAX delay
hrtimer_test_maximum: testing with UINT64_MAX delay
hrtimer_test_maximum: testing with UINT64_MAX delay
hrtimer_test_maximum: remaining time = 4290916895 ns
hrtimer_test_maximum: testing with UINT64_MAX delay
hrtimer_test_maximum: testing with UINT64_MAX delay
hrtimer_test_maximum: remaining time = 4292294395 ns
hrtimer_test_maximum: remaining time = 4292203195 ns
hrtimer_test_period: period = 1000000 ns, iters = 128
hrtimer_test_maximum: remaining time = 4292048195 ns
hrtimer_test_maximum: testing with UINT64_MAX delay
hrtimer_test_maximum: testing with UINT64_MAX delay
hrtimer_test_maximum: remaining time = 4292056295 ns
hrtimer_test_period: period = 1000000 ns, iters = 128
hrtimer_test_maximum: remaining time = 4291801095 ns
hrtimer_test_period: period = 1000000 ns, iters = 128
hrtimer_test_maximum: testing with UINT64_MAX delay
hrtimer_test_maximum: testing with UINT64_MAX delay
hrtimer_test_period: period = 1000000 ns, iters = 128
hrtimer_test_maximum: testing with UINT64_MAX delay
hrtimer_test_maximum: remaining time = 4291925095 ns
hrtimer_test_maximum: testing with UINT64_MAX delay
hrtimer_test_period: period = 1000000 ns, iters = 128
hrtimer_test_maximum: remaining time = 4291664895 ns
hrtimer_test_maximum: testing with UINT64_MAX delay
hrtimer_test_maximum: testing with UINT64_MAX delay
hrtimer_test_maximum: testing with UINT64_MAX delay
hrtimer_test_period: period = 1000000 ns, iters = 128
hrtimer_test_maximum: testing with UINT64_MAX delay
hrtimer_test_maximum: remaining time = 4291824295 ns
hrtimer_test_maximum: remaining time = 4291628795 ns
hrtimer_test_maximum: testing with UINT64_MAX delay
hrtimer_test_period: period = 1000000 ns, iters = 128
hrtimer_test_maximum: remaining time = 4291549895 ns
hrtimer_test_maximum: remaining time = 4291947795 ns
hrtimer_test_maximum: testing with UINT64_MAX delay
hrtimer_test_period: period = 1000000 ns, iters = 128
hrtimer_test_maximum: testing with UINT64_MAX delay
hrtimer_test_maximum: testing with UINT64_MAX delay
hrtimer_test_maximum: testing with UINT64_MAX delay
hrtimer_test_maximum: testing with UINT64_MAX delay
hrtimer_test_maximum: remaining time = 4292198695 ns
hrtimer_test_maximum: testing with UINT64_MAX delay
hrtimer_test_maximum: testing with UINT64_MAX delay
hrtimer_test_maximum: testing with UINT64_MAX delay
hrtimer_test_maximum: remaining time = 4292204895 ns
hrtimer_test_maximum: remaining time = 4292760495 ns
hrtimer_test_maximum: testing with UINT64_MAX delay
hrtimer_test_period: period = 1000000 ns, iters = 128
hrtimer_test_maximum: testing with UINT64_MAX delay
hrtimer_test_maximum: testing with UINT64_MAX delay
hrtimer_test_maximum: testing with UINT64_MAX delay
hrtimer_test_maximum: remaining time = 4292529995 ns
hrtimer_test_period: period = 1000000 ns, iters = 128
hrtimer_test_maximum: testing with UINT64_MAX delay
hrtimer_test_maximum: testing with UINT64_MAX delay
hrtimer_test_period: period = 1000000 ns, iters = 128
hrtimer_test_period: period = 1000000 ns, iters = 128
hrtimer_test_maximum: testing with UINT64_MAX delay
hrtimer_test_maximum: remaining time = 4292706195 ns
hrtimer_test_maximum: testing with UINT64_MAX delay
hrtimer_test_maximum: testing with UINT64_MAX delay
hrtimer_test_maximum: testing with UINT64_MAX delay
hrtimer_test_period: triggered 130 times, elapsed nsec 130009700
hrtimer_test_maximum: testing with UINT64_MAX delay
hrtimer_test_maximum: testing with UINT64_MAX delay
hrtimer_test_maximum: remaining time = 4290950495 ns
hrtimer_test_maximum: testing with UINT64_MAX delay
hrtimer_test_maximum: remaining time = 4293139495 ns
hrtimer_test_maximum: testing with UINT64_MAX delay
hrtimer_test_maximum: remaining time = 4289456895 ns
hrtimer_test_maximum: testing with UINT64_MAX delay
hrtimer_test_maximum: testing with UINT64_MAX delay
hrtimer_test_maximum: testing with UINT64_MAX delay
hrtimer_test_maximum: remaining time = 4290066395 ns
hrtimer_test_period: period = 1000000 ns, iters = 128
hrtimer_test_maximum: remaining time = 4293040795 ns
hrtimer_test_maximum: testing with UINT64_MAX delay
hrtimer_test_maximum: remaining time = 4293199295 ns
hrtimer_test_maximum: testing with UINT64_MAX delay
hrtimer_test_period: period = 1000000 ns, iters = 128
hrtimer_test_maximum: remaining time = 4292702595 ns
hrtimer_test_period: period = 1000000 ns, iters = 128
hrtimer_test_maximum: testing with UINT64_MAX delay
hrtimer_test_maximum: remaining time = 4292809795 ns
hrtimer_test_maximum: testing with UINT64_MAX delay
hrtimer_test_maximum: testing with UINT64_MAX delay
hrtimer_test_maximum: testing with UINT64_MAX delay
hrtimer_test_maximum: testing with UINT64_MAX delay
hrtimer_test_maximum: remaining time = 4292917295 ns
hrtimer_test_maximum: testing with UINT64_MAX delay
hrtimer_test_maximum: testing with UINT64_MAX delay
hrtimer_test_maximum: remaining time = 4292926395 ns
hrtimer_test_period: period = 1000000 ns, iters = 128
hrtimer_test_maximum: remaining time = 4293138495 ns
hrtimer_test_maximum: remaining time = 4292958495 ns
hrtimer_test_maximum: testing with UINT64_MAX delay
hrtimer_test_maximum: remaining time = 4293341695 ns
hrtimer_test_maximum: remaining time = 4293743795 ns
hrtimer_test_period: period = 1000000 ns, iters = 128
hrtimer_test_maximum: testing with UINT64_MAX delay
hrtimer_test_maximum: remaining time = 4293430795 ns
hrtimer_test_rand: max delay = 12345 ns
hrtimer_test_maximum: remaining time = 4292884195 ns
hrtimer_test_maximum: remaining time = 4292970895 ns
hrtimer_test_maximum: remaining time = 4292824095 ns
hrtimer_test_period: period = 1000000 ns, iters = 128
hrtimer_test_maximum: remaining time = 4290422895 ns
hrtimer_test_maximum: testing with UINT64_MAX delay
hrtimer_test_maximum: remaining time = 4291135495 ns
hrtimer_test_maximum: testing with UINT64_MAX delay
hrtimer_test_period: period = 1000000 ns, iters = 128
hrtimer_test_maximum: testing with UINT64_MAX delay
hrtimer_test_period: period = 1000000 ns, iters = 128
hrtimer_test_maximum: remaining time = 4292265395 ns
hrtimer_test_maximum: remaining time = 4293007695 ns
hrtimer_test_period: period = 1000000 ns, iters = 128
hrtimer_test_period: triggered 130 times, elapsed nsec 130048100
hrtimer_test_maximum: remaining time = 4293359695 ns
hrtimer_test_period: period = 1000000 ns, iters = 128
hrtimer_test_period: period = 1000000 ns, iters = 128
hrtimer_test_maximum: remaining time = 4292707395 ns
hrtimer_test_maximum: remaining time = 4293170995 ns
hrtimer_test_period: period = 1000000 ns, iters = 128
hrtimer_test_maximum: remaining time = 4293364095 ns
hrtimer_test_maximum: testing with UINT64_MAX delay
hrtimer_test_maximum: remaining time = 4293249495 ns
hrtimer_test_period: period = 1000000 ns, iters = 128
hrtimer_test_period: period = 1000000 ns, iters = 128
hrtimer_test_maximum: remaining time = 4293026395 ns
hrtimer_test_period: period = 1000000 ns, iters = 128
hrtimer_test_maximum: remaining time = 4292837595 ns
hrtimer_test_maximum: remaining time = 4293029095 ns
hrtimer_test_maximum: remaining time = 4293325795 ns
hrtimer_test_maximum: remaining time = 4293555095 ns
hrtimer_test_period: period = 1000000 ns, iters = 128
hrtimer_test_period: period = 1000000 ns, iters = 128
hrtimer_test_maximum: remaining time = 4292954495 ns
hrtimer_test_maximum: remaining time = 4293357795 ns
hrtimer_test_period: period = 1000000 ns, iters = 128
hrtimer_test_period: period = 1000000 ns, iters = 128
hrtimer_test_period: period = 1000000 ns, iters = 128
hrtimer_test_maximum: remaining time = 4292984195 ns
hrtimer_test_period: period = 1000000 ns, iters = 128
hrtimer_test_period: period = 1000000 ns, iters = 128
hrtimer_test_period: period = 1000000 ns, iters = 128
hrtimer_test_maximum: remaining time = 4293387395 ns
hrtimer_test_maximum: testing with UINT64_MAX delay
hrtimer_test_period: period = 1000000 ns, iters = 128
hrtimer_test_period: period = 1000000 ns, iters = 128
hrtimer_test_maximum: remaining time = 4293587595 ns
hrtimer_test_period: period = 1000000 ns, iters = 128
hrtimer_test_period: period = 1000000 ns, iters = 128
hrtimer_test_maximum: remaining time = 4292428495 ns
hrtimer_test_maximum: remaining time = 4292873995 ns
hrtimer_test_rand: max delay = 12345 ns
hrtimer_test_period: period = 1000000 ns, iters = 128
hrtimer_test_period: period = 1000000 ns, iters = 128
hrtimer_test_period: period = 1000000 ns, iters = 128
hrtimer_test_maximum: testing with UINT64_MAX delay
hrtimer_test_period: period = 1000000 ns, iters = 128
hrtimer_test_period: period = 1000000 ns, iters = 128
hrtimer_test_maximum: testing with UINT64_MAX delay
hrtimer_test_maximum: remaining time = 4293601795 ns
hrtimer_test_period: period = 1000000 ns, iters = 128
hrtimer_test_period: period = 1000000 ns, iters = 128
hrtimer_test_period: period = 1000000 ns, iters = 128
hrtimer_test_period: period = 1000000 ns, iters = 128
hrtimer_test_period: period = 1000000 ns, iters = 128
hrtimer_test_period: period = 1000000 ns, iters = 128
hrtimer_test_period: period = 1000000 ns, iters = 128
hrtimer_test_maximum: testing with UINT64_MAX delay
hrtimer_test_period: triggered 129 times, elapsed nsec 129025000
hrtimer_test_period: period = 1000000 ns, iters = 128
hrtimer_test_period: period = 1000000 ns, iters = 128
hrtimer_test_maximum: remaining time = 4293477995 ns
hrtimer_test_period: period = 1000000 ns, iters = 128
hrtimer_test_period: period = 1000000 ns, iters = 128
hrtimer_test_period: period = 1000000 ns, iters = 128
hrtimer_test_maximum: remaining time = 4293687795 ns
hrtimer_test_period: period = 1000000 ns, iters = 128
hrtimer_test_maximum: remaining time = 4293227495 ns
hrtimer_test_period: triggered 132 times, elapsed nsec 132038900
hrtimer_test_period: triggered 129 times, elapsed nsec 129023500
hrtimer_test_maximum: remaining time = 4292593395 ns
hrtimer_test_rand: max delay = 12345 ns
hrtimer_test_period: period = 1000000 ns, iters = 128
hrtimer_test_period: triggered 129 times, elapsed nsec 129042000
hrtimer_test_period: period = 1000000 ns, iters = 128
hrtimer_test_period: triggered 129 times, elapsed nsec 129019900
hrtimer_test_period: period = 1000000 ns, iters = 128
hrtimer_test_rand: max delay = 12345 ns
hrtimer_test_rand: max delay = 12345 ns
hrtimer_test_period: period = 1000000 ns, iters = 128
hrtimer_test_period: triggered 129 times, elapsed nsec 129024700
hrtimer_test_rand: max delay = 12345 ns
hrtimer_test_rand: max delay = 12345 ns
hrtimer_test_period: triggered 129 times, elapsed nsec 129014200
hrtimer_test_rand: max delay = 12345 ns
hrtimer_test_period: triggered 130 times, elapsed nsec 130012100
hrtimer_test_rand: max delay = 12345 ns
hrtimer_test_rand: max delay = 12345 ns
hrtimer_test_period: triggered 130 times, elapsed nsec 130021900
hrtimer_test_rand: max delay = 12345 ns
hrtimer_test_period: triggered 130 times, elapsed nsec 130036700
hrtimer_test_rand: max delay = 12345 ns
hrtimer_test_period: triggered 130 times, elapsed nsec 130020500
hrtimer_test_rand: max delay = 12345 ns
hrtimer_test_period: triggered 131 times, elapsed nsec 131027300
hrtimer_test_period: triggered 131 times, elapsed nsec 131025800
hrtimer_test_rand: max delay = 12345 ns
hrtimer_test_rand: max delay = 12345 ns
hrtimer_test_period: triggered 129 times, elapsed nsec 129027900
hrtimer_test_rand: max delay = 12345 ns
hrtimer_test_period: triggered 131 times, elapsed nsec 131015100
hrtimer_test_rand: max delay = 12345 ns
hrtimer_test_period: triggered 131 times, elapsed nsec 131018600
hrtimer_test_rand: max delay = 12345 ns
hrtimer_test_period: triggered 130 times, elapsed nsec 130028100
hrtimer_test_rand: max delay = 12345 ns
hrtimer_test_period: triggered 130 times, elapsed nsec 130019100
hrtimer_test_rand: max delay = 12345 ns
hrtimer_test_period: triggered 129 times, elapsed nsec 129012500
hrtimer_test_rand: max delay = 12345 ns
hrtimer_test_period: triggered 130 times, elapsed nsec 130027300
hrtimer_test_period: triggered 130 times, elapsed nsec 130093200
hrtimer_test_rand: max delay = 12345 ns
hrtimer_test_period: triggered 130 times, elapsed nsec 130101700
hrtimer_test_rand: max delay = 12345 ns
hrtimer_test_period: triggered 129 times, elapsed nsec 129027400
hrtimer_test_period: triggered 130 times, elapsed nsec 130007000
hrtimer_test_rand: max delay = 12345 ns
hrtimer_test_period: triggered 130 times, elapsed nsec 130014200
hrtimer_test_period: triggered 130 times, elapsed nsec 130030100
hrtimer_test_period: triggered 130 times, elapsed nsec 130170200
hrtimer_test_period: triggered 130 times, elapsed nsec 130127100
hrtimer_test_rand: max delay = 12345 ns
hrtimer_test_period: triggered 130 times, elapsed nsec 130018600
hrtimer_test_period: triggered 130 times, elapsed nsec 130037600
hrtimer_test_rand: max delay = 12345 ns
hrtimer_test_period: triggered 129 times, elapsed nsec 129200900
hrtimer_test_period: triggered 129 times, elapsed nsec 129017000
hrtimer_test_period: triggered 130 times, elapsed nsec 130021500
hrtimer_test_period: triggered 129 times, elapsed nsec 129012000
hrtimer_test_rand: max delay = 12345 ns
hrtimer_test_period: triggered 131 times, elapsed nsec 131024500
hrtimer_test_period: triggered 131 times, elapsed nsec 131099300
hrtimer_test_rand: max delay = 12345 ns
hrtimer_test_period: triggered 130 times, elapsed nsec 130014200
hrtimer_test_period: triggered 130 times, elapsed nsec 130029000
hrtimer_test_period: triggered 130 times, elapsed nsec 130020200
hrtimer_test_rand: max delay = 12345 ns
hrtimer_test_period: triggered 129 times, elapsed nsec 129035500
hrtimer_test_rand: max delay = 12345 ns
hrtimer_test_period: triggered 130 times, elapsed nsec 130005700
hrtimer_test_period: triggered 129 times, elapsed nsec 129011000
hrtimer_test_rand: max delay = 12345 ns
hrtimer_test_period: triggered 129 times, elapsed nsec 129150400
hrtimer_test_period: triggered 129 times, elapsed nsec 129040600
hrtimer_test_rand: max delay = 12345 ns
hrtimer_test_period: triggered 130 times, elapsed nsec 130038500
hrtimer_test_rand: max delay = 12345 ns
hrtimer_test_period: triggered 129 times, elapsed nsec 129013900
hrtimer_test_period: triggered 130 times, elapsed nsec 130032400
hrtimer_test_rand: max delay = 12345 ns
hrtimer_test_period: triggered 130 times, elapsed nsec 130027900
hrtimer_test_period: triggered 130 times, elapsed nsec 130303500
hrtimer_test_rand: max delay = 12345 ns
hrtimer_test_rand: max delay = 12345 ns
hrtimer_test_rand: max delay = 12345 ns
hrtimer_test_rand: max delay = 12345 ns
hrtimer_test_period: triggered 129 times, elapsed nsec 129063800
hrtimer_test_rand: max delay = 12345 ns
hrtimer_test_period: triggered 130 times, elapsed nsec 130017400
hrtimer_test_rand: max delay = 12345 ns
hrtimer_test_period: triggered 130 times, elapsed nsec 130138100
hrtimer_test_rand: max delay = 12345 ns
hrtimer_test_rand: max delay = 12345 ns
hrtimer_test_rand: max delay = 12345 ns
hrtimer_test_period: triggered 130 times, elapsed nsec 130043800
hrtimer_test_period: triggered 129 times, elapsed nsec 129306200
hrtimer_test_rand: max delay = 12345 ns
hrtimer_test_rand: max delay = 12345 ns
hrtimer_test_rand: max delay = 12345 ns
hrtimer_test_period: triggered 129 times, elapsed nsec 129037500
hrtimer_test_rand: max delay = 12345 ns
hrtimer_test_period: triggered 129 times, elapsed nsec 129015300
hrtimer_test_rand: max delay = 12345 ns
hrtimer_test_period: triggered 129 times, elapsed nsec 129082200
hrtimer_test_rand: max delay = 12345 ns
hrtimer_test_rand: max delay = 12345 ns
hrtimer_test_period: triggered 130 times, elapsed nsec 130020700
hrtimer_test_rand: max delay = 12345 ns
hrtimer_test_rand: max delay = 12345 ns
hrtimer_test_rand: max delay = 12345 ns
hrtimer_test_rand: max delay = 12345 ns
hrtimer_test_period: triggered 129 times, elapsed nsec 129023400
hrtimer_test_rand: max delay = 12345 ns
hrtimer_test_rand: max delay = 12345 ns
hrtimer_test_period: triggered 129 times, elapsed nsec 129015300
hrtimer_test_rand: max delay = 12345 ns
hrtimer_test_rand: max delay = 12345 ns
hrtimer_test_rand: max delay = 12345 ns
hrtimer_test_period: triggered 129 times, elapsed nsec 129039700
hrtimer_test_rand: max delay = 12345 ns
hrtimer_test_rand: max delay = 12345 ns
hrtimer_test_rand: max delay = 12345 ns
hrtimer_test_period: triggered 129 times, elapsed nsec 129051100
hrtimer_test_rand: max delay = 12345 ns
hrtimer_test_rand: max delay = 12345 ns
hrtimer_test_rand_cancel: max delay = 67890 ns
hrtimer_test_rand_cancel: max delay = 67890 ns
hrtimer_test_rand_cancel: max delay = 67890 ns
hrtimer_test_rand_cancel: max delay = 67890 ns
hrtimer_test_rand_cancel: max delay = 67890 ns
hrtimer_test_rand_cancel: max delay = 67890 ns
hrtimer_test_rand_cancel: max delay = 67890 ns
hrtimer_test_rand_cancel: max delay = 67890 ns
hrtimer_test_rand_cancel: max delay = 67890 ns
hrtimer_test_rand_cancel: max delay = 67890 ns
hrtimer_test_rand_cancel: max delay = 67890 ns
hrtimer_test_rand_cancel: max delay = 67890 ns
hrtimer_test_rand_cancel: max delay = 67890 ns
hrtimer_test_rand_cancel: max delay = 67890 ns
hrtimer_test_rand_cancel: max delay = 67890 ns
hrtimer_test_rand_cancel: max delay = 67890 ns
hrtimer_test_rand_cancel: max delay = 67890 ns
hrtimer_test_rand_cancel: max delay = 67890 ns
hrtimer_test_rand_cancel: max delay = 67890 ns
hrtimer_test_rand_cancel: max delay = 67890 ns
hrtimer_test_rand_cancel: max delay = 67890 ns
hrtimer_test_rand_cancel: max delay = 67890 ns
hrtimer_test_rand_cancel: max delay = 67890 ns
hrtimer_test_rand_cancel: max delay = 67890 ns
hrtimer_test_rand_cancel: max delay = 67890 ns
hrtimer_test_rand_cancel: max delay = 67890 ns
hrtimer_test_rand_cancel: max delay = 67890 ns
hrtimer_test_rand_cancel: max delay = 67890 ns
hrtimer_test_rand_cancel: max delay = 67890 ns
hrtimer_test_rand_cancel: max delay = 67890 ns
hrtimer_test_rand_cancel: max delay = 67890 ns
hrtimer_test_rand_cancel: max delay = 67890 ns
hrtimer_test_rand_cancel: max delay = 67890 ns
hrtimer_test_rand_cancel: max delay = 67890 ns
hrtimer_test_rand_cancel: max delay = 67890 ns
hrtimer_test_rand_cancel: max delay = 67890 ns
hrtimer_test_rand_cancel: max delay = 67890 ns
hrtimer_test_rand_cancel: max delay = 67890 ns
hrtimer_test_rand_cancel: max delay = 67890 ns
hrtimer_test_rand_cancel: max delay = 67890 ns
hrtimer_test_rand_cancel: max delay = 67890 ns
hrtimer_test_rand_cancel: max delay = 67890 ns
hrtimer_test_rand_cancel: max delay = 67890 ns
hrtimer_test_rand_cancel: max delay = 67890 ns
hrtimer_test_rand_cancel: max delay = 67890 ns
hrtimer_test_rand_cancel: max delay = 67890 ns
hrtimer_test_rand_cancel: max delay = 67890 ns
hrtimer_test_rand_cancel: max delay = 67890 ns
hrtimer_test_rand_cancel: max delay = 67890 ns
hrtimer_test_rand_cancel: max delay = 67890 ns
hrtimer_test_rand_cancel: max delay = 67890 ns
hrtimer_test_rand_cancel: max delay = 67890 ns
hrtimer_test_rand_cancel: max delay = 67890 ns
hrtimer_test_rand_cancel: max delay = 67890 ns
hrtimer_test_rand_cancel: max delay = 67890 ns
hrtimer_test_rand_cancel: max delay = 67890 ns
hrtimer_test_rand_cancel: max delay = 67890 ns
hrtimer_test_rand_cancel: max delay = 67890 ns
hrtimer_test_rand_cancel: max delay = 67890 ns
hrtimer_test_rand_cancel: max delay = 67890 ns
hrtimer_test_rand_cancel: max delay = 67890 ns
hrtimer_test_rand_cancel: max delay = 67890 ns
hrtimer_test_rand_cancel: max delay = 67890 ns
hrtimer_test_rand_cancel: max delay = 67890 ns
hrtimer_test end...

End of test memory usage:
VARIABLE  BEFORE   AFTER
======== ======== ========
arena     1fc961c  1fc961c
ordblks         5        7
mxordblk  1fb5f78  1fa4370
uordblks     73dc     540c
fordblks  1fc2240  1fc4210
...

This commit added missing assert.h.

Signed-off-by: ouyangxiangzhen <ouyangxiangzhen@xiaomi.com>
This commit removed HRTIMER_TEST to simplify the code.

Signed-off-by: ouyangxiangzhen <ouyangxiangzhen@xiaomi.com>
This commit simplified the hrtimer test.

Signed-off-by: ouyangxiangzhen <ouyangxiangzhen@xiaomi.com>
This commit fixed the hrtimer test.
In a QEMU environment, the hrtimer latency can be arbitrary because vCPUs can be preempted. We can not assert the latency. we can only issue alerts for excessively high latency.

Signed-off-by: ouyangxiangzhen <ouyangxiangzhen@xiaomi.com>
This commit relocated the hrtimer test to simplify the code.

Signed-off-by: ouyangxiangzhen <ouyangxiangzhen@xiaomi.com>
This commit improved the code readability.

Signed-off-by: ouyangxiangzhen <ouyangxiangzhen@xiaomi.com>
For QEMU, virtual CPUs can be preempted by any high priority thread in
test environments. This can cause the timer to be triggered later than
expected. This commit increased the tolerant latency to avoid the test
failures.

Signed-off-by: ouyangxiangzhen <ouyangxiangzhen@xiaomi.com>
This commit refactored the hrtimer_test and provided significantly
improved test-cases for both SMP and non-SMP.

Signed-off-by: ouyangxiangzhen <ouyangxiangzhen@xiaomi.com>
This commit updated the comments.

Signed-off-by: ouyangxiangzhen <ouyangxiangzhen@xiaomi.com>
@Fix-Point Fix-Point force-pushed the upstream_01_27_hrtimer branch from 9f8a3e6 to d9ed169 Compare February 25, 2026 02:22
Copy link
Contributor

@linguini1 linguini1 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Could you please attach the ostest log from your test?

Copy link
Contributor

@cederom cederom left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thank you @Fix-Point :-)

@linguini1 linguini1 merged commit e4b84b2 into apache:master Feb 26, 2026
40 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

5 participants