[PATCH 2/3] fsstress: reduce the number of events when io_setup

Zorro Lang
2020-07-15T16:09:11Z

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@redhat.com>
---
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