Do not duplicate coding. Signed-off-by: Heinrich Schuchardt <xypron.glpk@xxxxxx> --- man2/futex.2 | 19 +++++-------------- 1 file changed, 5 insertions(+), 14 deletions(-) diff --git a/man2/futex.2 b/man2/futex.2 index 6c02da7..2d56a20 100644 --- a/man2/futex.2 +++ b/man2/futex.2 @@ -1509,24 +1509,15 @@ fwait(int *futexp) machine\-language instructions. For further information, see the GCC Manual. */ - /* Maybe the futex is already available: */ - - if (__sync_bool_compare_and_swap(futexp, 1, 0)) - return; - - /* No; we must wait for the futex value to be changed */ - while (1) { - s = futex(futexp, FUTEX_WAIT, 0, NULL, NULL, 0); - if (s == \-1 && errno != EAGAIN) - errExit("futex\-FUTEX_WAIT"); - - /* Is the futex now available? */ - + /* Is the futex available? */ if (__sync_bool_compare_and_swap(futexp, 1, 0)) break; /* Yes */ - /* Futex is still not available; wait again */ + /* Futex is not available; wait */ + s = futex(futexp, FUTEX_WAIT, 0, NULL, NULL, 0); + if (s == \-1 && errno != EAGAIN) + errExit("futex\-FUTEX_WAIT"); } } -- 2.1.4 -- To unsubscribe from this list: send the line "unsubscribe linux-man" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html