Re: [PATCH v3 2/4] fsstress: reduce the number of events when io_setup

Brian Foster
2020-09-03T13:43:59Z

On Sun, Aug 23, 2020 at 02:30:30PM +0800, Zorro Lang wrote:
> The original number(128) of aio events for io_setup too 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. Due to each fsstress process only does once libaio read/write
> operation each time. So reduce the aio events number to 1, to make more
> fsstress processes can do AIO test.
>
> Signed-off-by: Zorro Lang <zlang@redhat.com>
> ---

Reviewed-by: Brian Foster <bfoster@redhat.com>

> ltp/fsstress.c | 5 +++--
> 1 file changed, 3 insertions(+), 2 deletions(-)
>
> diff --git a/ltp/fsstress.c b/ltp/fsstress.c
> index 7a0e278a..ef2017a8 100644
> --- a/ltp/fsstress.c
> +++ b/ltp/fsstress.c
> @@ -28,6 +28,7 @@
> #endif
> #ifdef AIO
> #include <libaio.h>
> +#define AIO_ENTRIES 1
> 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
> --
> 2.20.1
>