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: If li_listio() is called with LIO_WAIT then it should return -1 in the case of failure any of posted requests. However it does not. Version-Release number of selected component (if applicable): How reproducible: Always Steps to Reproduce: 1. Create TCP connection between entities A and B. 2. Send bulk of data from A. 3. Post read request on A using lio_listio(LIO_WAIT). 4. Kill process corresponding to B (TCP RST should appear in tcpdump). 5. lio_listio() unblocks. 6. Call aio_error() for read request - it returns ECONNRESET. Actual Results: lio_listio() returns 0. Expected Results: lio_listio() should return -1 and set errno to EIO. Additional info:
Your test case and usage of aio is wrong. I told you numerous times that aio does not support socket operations. Having said that, there is a valid test case which shows that there is a bug. I've fixed it in the upstream glibc. The next rawhide build will likely have it.