The original number(128) of aio events for io_setup is a little big. When try to run lots of fsstress processes(e.g. -p 1000) always hit io_setup EAGAIN error, due to the nr_events exceeds the limit of available events. So reduce it from 128 to 64, to make more fsstress processes can do AIO test. Signed-off-by: Zorro Lang <zlang@xxxxxxxxxx> --- ltp/fsstress.c | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/ltp/fsstress.c b/ltp/fsstress.c index 388ace50..a11206d4 100644 --- a/ltp/fsstress.c +++ b/ltp/fsstress.c @@ -28,6 +28,7 @@ #endif #ifdef AIO #include <libaio.h> +#define AIO_ENTRIES 64 io_context_t io_ctx; #endif #ifdef URING @@ -699,8 +700,8 @@ int main(int argc, char **argv) } procid = i; #ifdef AIO - if (io_setup(128, &io_ctx) != 0) { - fprintf(stderr, "io_setup failed"); + if (io_setup(AIO_ENTRIES, &io_ctx) != 0) { + fprintf(stderr, "io_setup failed\n"); exit(1); } #endif @@ -714,7 +715,7 @@ int main(int argc, char **argv) doproc(); #ifdef AIO if(io_destroy(io_ctx) != 0) { - fprintf(stderr, "io_destroy failed"); + fprintf(stderr, "io_destroy failed\n"); return 1; } #endif -- 2.20.1