Skip to content

test-dup-setfl-race times out in the Release matrix lane #466

Open

Description

@xalestar

Background

test-dup-setfl-race (tests/test-dup-setfl-race.c) times out in the Runtime (Release) job on CI, on branches that do not touch its code path. In each run it passes under make check earlier in the same job, then hits the 30 s timeout in the elfuse lane of the test matrix, and passes on the qemu reference kernel in the same job. A normal run takes about two seconds, per the comment on ROUNDS.

Run Branch make check elfuse matrix qemu matrix
38774635351 flag-matrix timeout OK
39004374379 audit-fixes OK timeout
39567676579 posix-timers-clone-pidfd OK timeout
39996523464 rlimit-fsize (#463) OK timeout OK

The test only calls pipe, dup, fcntl(F_GETFL/F_SETFL), close and sched_yield from two threads. On #463 the next push, which changed no code, passed every lane.

Goal

The test either passes in its normal time or fails with a message, on every lane, so a red Release job means a regression.

Evidence

Not reproduced locally: 20 runs of build/elfuse build/test-dup-setfl-race on the #463 branch all exit 0. The runs above were found by listing the failed Runtime runs and searching their failed-job logs for the test name; a blank cell means that run's failed-step log did not show that result.

The timeout hides where it stalls. Both handshake loops in main spin on pause_ack < want && !stop, and stop is only set after the round loop ends, so if the flipper thread stops acknowledging, main spins until the 30 s timeout with nothing printed.

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