Fix aio system call wrappers in librt.
- Update aio_return/waitcomplete wrappers for ssize_t.
- Fix aio_return() wrapper to fail with EINVAL on a pending job.
Differential D7120
Fix aio system call wrappers in librt. jhb on Jul 5 2016, 7:53 PM. Authored by Tags None Referenced Files
Subscribers
Details
Fix aio system call wrappers in librt.
Diff Detail
Event TimelineComment Actions I am curious about the aio_return() change. My reading is that EINPROGRESS is acceptable outcome for not yet completed iocb. POSIX says "If the asynchronous I/O operation has not yet completed, the results of aio_return( ) are undefined." And EINVAL is defined as "The aiocbp argument does not refer to an asynchronous operation whose return status has not yet been retrieved." I do not object against the change, but wonder for the reasoning behind it.
Comment Actions It matches what the kernel does for aio_return(), so it is consistent with using aio_return() if you don't link against librt. |