Red Hat Bugzilla – Bug 171968
aio_suspend is not interrupted by the signal
Last modified: 2007-11-30 17:11:16 EST
From Bugzilla Helper:
User-Agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.7.12) Gecko/20050923 Fedora/1.7.12-1.5.1
Description of problem:
aio_suspend() is not interrupted by the signal
Version-Release number of selected component (if applicable):
Steps to Reproduce:
1. Create and bind UDP socket.
2. Post read AIO request using aio_read().
3. Install signal handler for SIGUSR1.
4. Call aio_suspend() with some timeout.
5. Send to process signal SIGUSR1.
Actual Results: aio_suspend() does not resume until timeout expires.
Expected Results: aio_suspend() should resume immediately after signal receiving and set errno to EINTR.
The same is for lio_listio().
Due to the implementation interrupts indeed did were not reported. This is
fixed in the upstream sources and should be in the next rawhide release. But
once again, aio is not defined for sockets.
Should be fixed in glibc-2.3.90-28 and above.