Skip to content

Fix flaky shared-futex control-ring test #1236

Description

@wdcui

The litebox_broker_transport_linux_userland::memfd::tests::shared_futex_wakeup_prevents_missed_cross_mapping_work test is flaky on the ulitebox branch. It failed in #1235's Linux CI job with request ring should be full at litebox_broker_transport_linux_userland/src/memfd.rs:931, then passed unchanged on rerun.\n\nThe test has a race after empty_checked.wait(): the producer fills the request ring while the broker thread may return from wait_for_message and consume a slot before the producer verifies that the next write reports ControlRingWriteStatus::Full. The test should add deterministic synchronization so the broker cannot consume until the producer has observed the full ring, while preserving coverage of cross-mapping futex wakeups and missed-wakeup prevention.\n\nFailing run: https://github.com/microsoft/litebox/actions/runs/33172865102/job/98854053153

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugSomething isn't working

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions