syscall.sh / x32 / io_setup

io_setup

create an asynchronous I/O context

x32 has 2 syscalls called io_setup, each with its own number.

io_setup #1073742030 (common ABI)

sys_io_setup(unsigned nr_events, aio_context_t *ctxp)

This syscall was removed in Linux 3.16.

number1073742030 (0x400000ce)
abicommon
entry pointsys_io_setup
sinceLinux 3.4
removed inLinux 3.16
man pageio_setup(2)
sourceelixir.bootlin.com

Registers

registervalue
rax1073742030, the syscall number
rdiunsigned nr_events
rsiaio_context_t *ctxp
raxthe return value

Then run syscall to enter the kernel.

io_setup #1073742367 (x32 ABI)

compat_sys_io_setup(unsigned nr_events, aio_context_t *ctxp)
number1073742367 (0x4000021f)
abix32
entry pointcompat_sys_io_setup
sinceLinux 3.16
man pageio_setup(2)
sourceelixir.bootlin.com

Registers

registervalue
rax1073742367, the syscall number
rdiunsigned nr_events
rsiaio_context_t *ctxp
raxthe return value

Then run syscall to enter the kernel.

Same syscall on other architectures

Get this as JSON: https://api.syscall.sh/v2/syscalls/x32/io_setup