io_getevents on ia32

read asynchronous I/O events from the completion queue

sys_io_getevents_time32(__u32 ctx_id, __s32 min_nr, __s32 nr, struct io_event *events, struct old_timespec32 *timeout)
number247 (0xf7)
abii386
kconfigCONFIG_AIO
familyaio
entry pointsys_io_getevents_time32
sinceLinux 3.3 or earlier (3.3 is the first release scanned for ia32)
man pageio_getevents(2)
sourceelixir.bootlin.com

Registers

registervalue
eax247, the syscall number
ebx__u32 ctx_id
ecx__s32 min_nr
edx__s32 nr
esistruct io_event *events
edistruct old_timespec32 *timeout
eaxthe return value

Then run int 0x80 to enter the kernel.

This compat ABI is only available when the kernel is built with CONFIG_IA32_EMULATION.

Same syscall on other architectures

Get this as JSON: https://api.syscall.sh/v2/syscalls/ia32/io_getevents