• Nysal Jan K.A's avatar
    selftests/futex: Order calls to futex_lock_pi · fbf4dec7
    Nysal Jan K.A authored
    Observed occassional failures in the futex_wait_timeout test:
    
    ok 1 futex_wait relative succeeds
    ok 2 futex_wait_bitset realtime succeeds
    ok 3 futex_wait_bitset monotonic succeeds
    ok 4 futex_wait_requeue_pi realtime succeeds
    ok 5 futex_wait_requeue_pi monotonic succeeds
    not ok 6 futex_lock_pi realtime returned 0
    ......
    
    The test expects the child thread to complete some steps before
    the parent thread gets to run. There is an implicit expectation
    of the order of invocation of futex_lock_pi between the child thread
    and the parent thread. Make this order explicit. If the order is
    not met, the futex_lock_pi call in the parent thread succeeds and
    will not timeout.
    
    Fixes: f4addd54 ("selftests: futex: Expand timeout test")
    Signed-off-by: default avatarNysal Jan K.A <nysal@linux.ibm.com>
    Signed-off-by: default avatarShuah Khan <skhan@linuxfoundation.org>
    fbf4dec7
futex_wait_timeout.c 5.7 KB