mirror of
https://sourceware.org/git/glibc.git
synced 2024-11-21 20:40:05 +00:00
Fix nptl/tst-cancel17 and nptl/tst-cancelx17 with recent gcc.
This commit is contained in:
parent
2c0b250ae4
commit
22044b48ba
@ -6,6 +6,10 @@
|
||||
%sp not %fp in calculations.
|
||||
(_JMPBUF_UNWINDS_ADJ): Likewise.
|
||||
|
||||
* sysdeps/pthread/aio_suspend.c (do_aio_misc_wait): New function.
|
||||
(aio_suspend): Call it to force an exception region around the
|
||||
AIO_MISC_WAIT() invocation.
|
||||
|
||||
2011-08-23 Andreas Schwab <schwab@redhat.com>
|
||||
|
||||
* sysdeps/i386/i686/multiarch/strspn.S (ENTRY): Add missing
|
||||
|
@ -92,6 +92,18 @@ cleanup (void *arg)
|
||||
pthread_mutex_unlock (&__aio_requests_mutex);
|
||||
}
|
||||
|
||||
#ifdef DONT_NEED_AIO_MISC_COND
|
||||
static int
|
||||
__attribute__ ((noinline))
|
||||
do_aio_misc_wait(int *cntr, const struct timespec *timeout)
|
||||
{
|
||||
int result = 0;
|
||||
|
||||
AIO_MISC_WAIT(result, *cntr, timeout, 1);
|
||||
|
||||
return result;
|
||||
}
|
||||
#endif
|
||||
|
||||
int
|
||||
aio_suspend (list, nent, timeout)
|
||||
@ -169,7 +181,7 @@ aio_suspend (list, nent, timeout)
|
||||
pthread_cleanup_push (cleanup, &clparam);
|
||||
|
||||
#ifdef DONT_NEED_AIO_MISC_COND
|
||||
AIO_MISC_WAIT (result, cntr, timeout, 1);
|
||||
result = do_aio_misc_wait(&cntr, timeout);
|
||||
#else
|
||||
if (timeout == NULL)
|
||||
result = pthread_cond_wait (&cond, &__aio_requests_mutex);
|
||||
|
Loading…
Reference in New Issue
Block a user