Skip to content

test: Call timeBeginPeriod(1) before time measurement - #363

Merged
lhmouse merged 1 commit into
masterfrom
mm
Sep 20, 2026
Merged

lhmouse merged 1 commit into
masterfrom
mm

Conversation

@lhmouse

@lhmouse lhmouse commented Sep 20, 2026

Copy link
Copy Markdown
Owner

Assisted-by: DeepSeek V4.1 Flash

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

Copilot review overview

🟡 Changes recommended

Handle timeBeginPeriod failure before applying tight bounds, and consider centralizing duplicated setup.

Get a fresh assessment by requesting another Copilot review.

Review effort: Lite
Findings: 1 Medium severity

Open (1)
What changed in this PR

This PR requests a 1 ms Windows timer resolution before measurements and tightens timing assertions across the test suite.

Changes:

  • Dynamically loads timeBeginPeriod from WINMM.DLL.
  • Tightens timeout and sleep bounds across C, C++, C11, Gthreads, libc++, and native tests.
  • Adds stricter bounds for short and immediate-return cases.
File Reviewed change
test/​winnt_timeout.c Adds timer setup and tighter native timeout bounds; setup result is unchecked and initialization is duplicated.
test/​timed_mutex_try_lock_until.cpp Tightens timed-mutex timing assertions; setup result is unchecked.
test/​timed_mutex_try_lock_for.cpp Tightens timed-mutex timing assertions; setup result is unchecked.
test/​thread_sleep.c Tightens sleep timing assertions; setup result is unchecked.
test/​this_thread_sleep_until.cpp Tightens sleep-until assertions; setup result is unchecked.
test/​this_thread_sleep_for.cpp Tightens sleep-for assertions; setup result is unchecked.
test/​shared_timed_mutex_try_lock_shared_until.cpp Tightens shared timed-mutex assertions; setup result is unchecked.
test/​shared_timed_mutex_try_lock_shared_for.cpp Tightens shared timed-mutex assertions; setup result is unchecked.
test/​shared_timed_mutex_try_lock_exclusive_until.cpp Tightens exclusive timed-mutex assertions; setup result is unchecked.
test/​shared_timed_mutex_try_lock_exclusive_for.cpp Tightens exclusive timed-mutex assertions; setup result is unchecked.
test/​shared_mutex_timeout.c Tightens shared-mutex timeout bounds; setup result is unchecked.
test/​sem_timeout.c Tightens semaphore timeout bounds; setup result is unchecked.
test/​recursive_timed_mutex_try_lock_until.cpp Tightens recursive timed-mutex assertions; setup result is unchecked.
test/​recursive_timed_mutex_try_lock_for.cpp Tightens recursive timed-mutex assertions; setup result is unchecked.
test/​once_timeout.c Tightens one-time initialization timeout bounds; setup result is unchecked.
test/​mutex_timeout.c Tightens mutex timeout bounds; setup result is unchecked.
test/​libcxx_sleep.c Tightens libc++ sleep bounds; setup result is unchecked.
test/​libcxx_condvar_timeout.c Tightens libc++ condition-variable bounds; setup result is unchecked.
test/​gthr_rc_mutex_timeout.c Tightens recursive Gthreads mutex bounds; setup result is unchecked.
test/​gthr_mutex_timeout.c Tightens Gthreads mutex bounds; setup result is unchecked.
test/​gthr_cond_timeout.c Tightens Gthreads condition-variable bounds; setup result is unchecked.
test/​event_timeout.c Tightens event timeout bounds; setup result is unchecked.
test/​condition_variable_wait_until.cpp Tightens condition-variable timing assertions; setup result is unchecked.
test/​condition_variable_wait_for.cpp Tightens condition-variable timing assertions; setup result is unchecked.
test/​cond_timeout.c Tightens native condition timeout bounds; setup result is unchecked.
test/​c11_thrd_sleep.c Tightens C11 sleep bounds; setup result is unchecked.
test/​c11_mtx_timeout.c Tightens C11 mutex timeout bounds; setup result is unchecked.
test/​c11_mtx_timeout_unsupported.c Tightens unsupported C11 mutex timing bounds; setup result is unchecked.
test/​c11_mtx_recursive_timeout.c Tightens recursive C11 mutex bounds; setup result is unchecked.
test/​c11_cnd_timeout.c Tightens C11 condition timeout bounds; setup result is unchecked.
test/​c11__thrd_sleep_until.c Tightens C11 sleep-until bounds; setup result is unchecked.

💡 Add a code-review agent skill or configure MCP servers for context-aware, tailored reviews. Learn more in the docs.

Comment thread test/winnt_timeout.c
Assisted-by: DeepSeek V4.1 Flash
Signed-off-by: LIU Hao <lh_mouse@126.com>
@lhmouse
lhmouse merged commit 1705cb7 into master Sep 20, 2026
18 checks passed
@lhmouse
lhmouse deleted the mm branch September 23, 2026 07:11
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.

2 participants