On Mon, May 18, 2026 at 10:16:54AM +0800, Yuwen Chen wrote:
> This test item has extremely high requirements for timing and can only
> pass the test under specific conditions. The following situations will
> lead to test failure:

...

> If the child thread is not waiting in the futex_wait function when the
> main thread reaches the futex_cmp_requeue function, the test will fail.
> 
> An attempt is made to avoid this problem by checking whether the child
> thread is in a sleeping state in the main thread.

I'm seeing failures on arm64 (running a system with 4xA53) in -next in
this test which bisect to this commit, the commit seems obviously
plausible but I didn't actually investigate:

# TAP version 13
 1..2
 # Starting 2 tests from 1 test cases.
 #  RUN           global.requeue_single ...
 # futex_requeue.c:28:requeue_single:Expected res (-1) == 0 (0)
 # futex_requeue.c:29:requeue_single:waiter failed errno 110: Connection timed 
out
 # futex_requeue.c:49:requeue_single:Expected futex_wait_for_thread(&waiter, 
_metadata) (110) == 0 (0)
 # futex_requeue.c:50:requeue_single:Wait for thread failed
 # requeue_single: Test terminated by assertion
 #          FAIL  global.requeue_single
 not ok 1 global.requeue_single
 #  RUN           global.requeue_multiple ...
 # futex_requeue.c:28:requeue_multiple:Expected res (-1) == 0 (0)
 # futex_requeue.c:29:requeue_multiple:waiter failed errno 110: Connection 
timed out
 # futex_requeue.c:28:requeue_multiple:Expected res (-1) == 0 (0)
 # futex_requeue.c:29:requeue_multiple:waiter failed errno 110: Connection 
timed out
 # futex_requeue.c:28:requeue_multiple:Expected res (-1) == 0 (0)
 # futex_requeue.c:29:requeue_multiple:waiter failed errno 110: Connection 
timed out
 # futex_requeue.c:28:requeue_multiple:Expected res (-1) == 0 (0)
 # futex_requeue.c:29:requeue_multiple:waiter failed errno 110: Connection 
timed out
 # futex_requeue.c:28:requeue_multiple:Expected res (-1) == 0 (0)
 # futex_requeue.c:29:requeue_multiple:waiter failed errno 110: Connection 
timed out
 # futex_requeue.c:28:requeue_multiple:Expected res (-1) == 0 (0)
 # futex_requeue.c:29:requeue_multiple:waiter failed errno 110: Connection 
timed out
 # futex_requeue.c:28:requeue_multiple:Expected res (-1) == 0 (0)
 # futex_requeue.c:29:requeue_multiple:waiter failed errno 110: Connection 
timed out
 # futex_requeue.c:28:requeue_multiple:Expected res (-1) == 0 (0)
 # futex_requeue.c:29:requeue_multiple:waiter failed errno 110: Connection 
timed out
 # futex_requeue.c:28:requeue_multiple:Expected res (-1) == 0 (0)
 # futex_requeue.c:29:requeue_multiple:waiter failed errno 110: Connection 
timed out
 # futex_requeue.c:28:requeue_multiple:Expected res (-1) == 0 (0)
 # futex_requeue.c:29:requeue_multiple:waiter failed errno 110: Connection 
timed out
 # futex_requeue.c:76:requeue_multiple:Expected 
futex_wait_for_thread(&waiter[i], _metadata) (5) == 0 (0)
 # futex_requeue.c:77:requeue_multiple:Wait for waiter thread 0 failed
 # requeue_multiple: Test terminated by assertion
 #          FAIL  global.requeue_multiple
 not ok 2 global.requeue_multiple
 # FAILED: 0 / 2 tests passed.
 # Totals: pass:0 fail:2 xfail:0 xpass:0 skip:0 error:0

Full log should be at:

   https://lava.sirena.org.uk/scheduler/job/2954705#L13289

but I'm having a terrible time with AI scrapers right now so perhaps not
usefully.

# bad: [5c73cd9f0819c1c44e373e3dabb68318b1de1a12] Add linux-next specific files 
for 20260707
# good: [fc5f2284ad6951ce06d6881ca8cbd6d14d5f5071] Merge branch 
'for-linux-next-fixes' of https://gitlab.freedesktop.org/drm/misc/kernel.git
git bisect start '5c73cd9f0819c1c44e373e3dabb68318b1de1a12' 
'fc5f2284ad6951ce06d6881ca8cbd6d14d5f5071'
# test job: [5c73cd9f0819c1c44e373e3dabb68318b1de1a12] 
https://lava.sirena.org.uk/scheduler/job/2954705
# bad: [5c73cd9f0819c1c44e373e3dabb68318b1de1a12] Add linux-next specific files 
for 20260707
git bisect bad 5c73cd9f0819c1c44e373e3dabb68318b1de1a12
# test job: [f03ff00f5fd55e2c02b44611ac65380082c46b62] 
https://lava.sirena.org.uk/scheduler/job/2954744
# good: [f03ff00f5fd55e2c02b44611ac65380082c46b62] Merge branch 
'libcrypto-next' of 
https://git.kernel.org/pub/scm/linux/kernel/git/ebiggers/linux.git
git bisect good f03ff00f5fd55e2c02b44611ac65380082c46b62
# test job: [fe28d02cde5372d7f71cc6132ccdef37a98ac750] 
https://lava.sirena.org.uk/scheduler/job/2954790
# good: [fe28d02cde5372d7f71cc6132ccdef37a98ac750] Merge branch 
'for-linux-next' of https://gitlab.freedesktop.org/drm/i915/kernel.git
git bisect good fe28d02cde5372d7f71cc6132ccdef37a98ac750
# test job: [954c3050e57c29ee3a216cda83da13f16815bbb4] 
https://lava.sirena.org.uk/scheduler/job/2954824
# bad: [954c3050e57c29ee3a216cda83da13f16815bbb4] Merge branch 'for-next' of 
https://git.kernel.org/pub/scm/linux/kernel/git/trace/linux-trace.git
git bisect bad 954c3050e57c29ee3a216cda83da13f16815bbb4
# test job: [6054d7d90130d6788ec459be1bfdc14300587aac] 
https://lava.sirena.org.uk/scheduler/job/2954855
# good: [6054d7d90130d6788ec459be1bfdc14300587aac] Merge branch 'for-mfd-next' 
of https://git.kernel.org/pub/scm/linux/kernel/git/lee/mfd.git
git bisect good 6054d7d90130d6788ec459be1bfdc14300587aac
# test job: [f705c6728b357ca8d675f9ee94191d7c900e3652] 
https://lava.sirena.org.uk/scheduler/job/2954897
# bad: [f705c6728b357ca8d675f9ee94191d7c900e3652] Merge branch into tip/master: 
'x86/msr'
git bisect bad f705c6728b357ca8d675f9ee94191d7c900e3652
# test job: [7af7f4599923cc4e1ab60d0991b33cab17ade101] 
https://lava.sirena.org.uk/scheduler/job/2954940
# bad: [7af7f4599923cc4e1ab60d0991b33cab17ade101] Merge branch into tip/master: 
'perf/core'
git bisect bad 7af7f4599923cc4e1ab60d0991b33cab17ade101
# test job: [c6cf5150bdb99c61d32fca8da51f5a2a80227ca2] 
https://lava.sirena.org.uk/scheduler/job/2954963
# bad: [c6cf5150bdb99c61d32fca8da51f5a2a80227ca2] Merge branch into tip/master: 
'locking/futex'
git bisect bad c6cf5150bdb99c61d32fca8da51f5a2a80227ca2
# test job: [86620fb9d37b9f5aaae7c7cb27a173463d961cdc] 
https://lava.sirena.org.uk/scheduler/job/2955014
# good: [86620fb9d37b9f5aaae7c7cb27a173463d961cdc] selftests/futex: Provide 
thread creation and synchronization helpers
git bisect good 86620fb9d37b9f5aaae7c7cb27a173463d961cdc
# test job: [86e9ba573c353afd1a46816682f4cc3dbabeeb23] 
https://lava.sirena.org.uk/scheduler/job/2955047
# good: [86e9ba573c353afd1a46816682f4cc3dbabeeb23] irqchip/irq-imgpdc: Remove 
unused driver
git bisect good 86e9ba573c353afd1a46816682f4cc3dbabeeb23
# test job: [1cd91823008a033cc766b78ad0cd1138e96bfcd9] 
https://lava.sirena.org.uk/scheduler/job/2955064
# good: [1cd91823008a033cc766b78ad0cd1138e96bfcd9] Merge branch into 
tip/master: 'irq/core'
git bisect good 1cd91823008a033cc766b78ad0cd1138e96bfcd9
# test job: [919c6f2762254d4bcb92ea30bf473cfcc5521c9c] 
https://lava.sirena.org.uk/scheduler/job/2955116
# good: [919c6f2762254d4bcb92ea30bf473cfcc5521c9c] Merge branch into 
tip/master: 'locking/debug'
git bisect good 919c6f2762254d4bcb92ea30bf473cfcc5521c9c
# test job: [157a9b22ff769e1a657aec6210df3ea896600eec] 
https://lava.sirena.org.uk/scheduler/job/2955137
# bad: [157a9b22ff769e1a657aec6210df3ea896600eec] selftests/futex: Use thread 
synchronization helpers instead of usleep()
git bisect bad 157a9b22ff769e1a657aec6210df3ea896600eec
# first bad commit: [157a9b22ff769e1a657aec6210df3ea896600eec] selftests/futex: 
Use thread synchronization helpers instead of usleep()

Attachment: signature.asc
Description: PGP signature

Reply via email to