Checking patch nptl/pthread_cond_wait.c... error: while searching for: sufficient because if a waiter can see a sufficiently large value, it could have also consume a signal in the waiters group. It is essential that the last field in pthread_cond_t is __g_signals[1]: The previous condvar used a pointer-sized field in pthread_cond_t, so a PTHREAD_COND_INITIALIZER from that condvar implementation might only initialize 4 bytes to zero instead of the 8 bytes we need (i.e., 44 bytes in total instead of the 48 we need). __g_signals[1] is not accessed before the first group switch (G2 starts at index 0), which will set its value to zero after a harmless fetch-or whose return value is ignored. This effectively completes initialization. Limitations: * This condvar isn't designed to allow for more than error: patch failed: nptl/pthread_cond_wait.c:327 error: nptl/pthread_cond_wait.c: patch does not apply Checking patch nptl/tst-cond22.c... Checking patch sysdeps/nptl/bits/thread-shared-types.h... Checking patch sysdeps/nptl/pthread.h...