History

futex: Set FLAGS_HAS_TIMEOUT during futex_wait restart setup

The FLAGS_HAS_TIMEOUT flag was not getting set, causing the restart_block to restart futex_wait() without a timeout after a signal. Commit b41277dc7a18ee332d in 2.6.38 introduced the regression by accidentally removing the the FLAGS_HAS_TIMEOUT assignment from futex_wait() during the setup of the restart block. Restore the originaly behavior. Fixes: https://bugzilla.kernel.org/show_bug.cgi?id=32922

Darren Hart committed 15 years ago

Commit 0cd9c641 parent a6360dd1 file · +1 −1Browse files

Showing the changes to kernel (1 of 1 file). Show all

Unified · Split

kernel/futex.c+1−1
@@ -1886,7 +1886,7 @@ retry: · 1885 unmodified lines
1886 restart->futex.val = val;1886 restart->futex.val = val;
1887 restart->futex.time = abs_time->tv64;1887 restart->futex.time = abs_time->tv64;
1888 restart->futex.bitset = bitset;1888 restart->futex.bitset = bitset;
1889 restart->futex.flags = flags;1889 restart->futex.flags = flags | FLAGS_HAS_TIMEOUT;
1890 1890
1891 ret = -ERESTART_RESTARTBLOCK;1891 ret = -ERESTART_RESTARTBLOCK;
1892 1892