io_cancel(2) claims: IO_CANCEL(2) Linux Programmer’s Manual IO_CANCEL(2) NAME io_cancel - cancel an outstanding asynchronous I/O operation SYNOPSIS #include <libaio.h> int io_cancel(aio_context_t ctx_id, struct iocb *iocb, struct io_event *result); Link with -laio. This doesn't compile though: $ gcc -c test_iocancel.c test_iocancel.c: In function ‘main’: test_iocancel.c:5: error: ‘aio_context_t’ undeclared (first use in this function) test_iocancel.c:5: error: (Each undeclared identifier is reported only once test_iocancel.c:5: error: for each function it appears in.) test_iocancel.c:5: error: expected ‘;’ before ‘ctx’ test_iocancel.c:9: error: ‘ctx’ undeclared (first use in this function) $ cat test_iocancel.c #include <libaio.h> int main(void) { aio_context_t ctx; struct iocb cb; struct io_event res; return io_cancel(ctx, &cb, &res); } $ grep -r aio_context_t /usr/include/ /usr/include/linux/aio_abi.h:typedef unsigned long aio_context_t; $ The manpages are based off of Fedora 13, as is the image that I'm currently running in VMware fusion. $ yum list installed libaio Loaded plugins: presto, refresh-packagekit Installed Packages libaio.i686 0.3.109-2.fc13 @released/$releasever
There have been various recent changes to the io_* man pages which I think probably address this report. If, after checking the latest version of the pages, you believe otherwise, please re-open. Closing for now.