Revert "aio: fix newp->running data race"

This reverts commit fd67a9cf7b.
This commit is contained in:
Samuel Thibault 2016-05-04 15:51:19 +02:00
parent 66355680f8
commit 04794f3e7e
2 changed files with 3 additions and 12 deletions

View File

@ -2,13 +2,6 @@
* malloc/malloc-internal.h: Adjust header file guard. * malloc/malloc-internal.h: Adjust header file guard.
2016-05-04 Samuel Thibault <samuel.thibault@ens-lyon.org>
* sysdeps/pthread/aio_misc.c (__aio_enqueue_request): Do not write
`running` field of `newp` when a thread was started to process it,
since that thread will not take `__aio_requests_mutex`, and the field
already has the proper value actually.
2016-05-04 Florian Weimer <fweimer@redhat.com> 2016-05-04 Florian Weimer <fweimer@redhat.com>
[BZ #19787] [BZ #19787]

View File

@ -453,11 +453,7 @@ __aio_enqueue_request (aiocb_union *aiocbp, int operation)
result = 0; result = 0;
} }
} }
else
newp->running = running;
} }
else
newp->running = running;
/* Enqueue the request in the run queue if it is not yet running. */ /* Enqueue the request in the run queue if it is not yet running. */
if (running == yes && result == 0) if (running == yes && result == 0)
@ -470,7 +466,9 @@ __aio_enqueue_request (aiocb_union *aiocbp, int operation)
pthread_cond_signal (&__aio_new_request_notification); pthread_cond_signal (&__aio_new_request_notification);
} }
if (result != 0) if (result == 0)
newp->running = running;
else
{ {
/* Something went wrong. */ /* Something went wrong. */
__aio_free_request (newp); __aio_free_request (newp);