From fd850de7524d8b62cd1d340417b665ed9427adae Mon Sep 17 00:00:00 2001 From: Rich Felker Date: Sat, 14 Feb 2015 14:05:35 -0500 Subject: [PATCH] fix type error (arch-dependent) in new aio code a_store is only valid for int, but ssize_t may be defined as long or another type. since there is no valid way for another thread to acess the return value without first checking the error/completion status of the aiocb anyway, an atomic store is not necessary. --- src/aio/aio.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/aio/aio.c b/src/aio/aio.c index 7bf2b337..d1ee7681 100644 --- a/src/aio/aio.c +++ b/src/aio/aio.c @@ -148,7 +148,7 @@ static void cleanup(void *ctx) * Types 1-3 are notified via atomics/futexes, mainly for AS-safety * considerations. Type 4 is notified later via a cond var. */ - a_store(&cb->__ret, at->ret); + cb->__ret = at->ret; if (a_swap(&at->running, 0) < 0) __wake(&at->running, -1, 1); if (a_swap(&cb->__err, at->err) != EINPROGRESS) -- 2.25.1