From: Jens Axboe Date: Tue, 31 Aug 2021 01:37:41 +0000 (-0600) Subject: io_uring: IORING_OP_WRITE needs hash_reg_file set X-Git-Tag: v5.15-rc1~83^2~14 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=7b3188e7ed54102a5dcc73d07727f41fb528f7c8;p=thirdparty%2Fkernel%2Flinux.git io_uring: IORING_OP_WRITE needs hash_reg_file set During some testing, it became evident that using IORING_OP_WRITE doesn't hash buffered writes like the other writes commands do. That's simply an oversight, and can cause performance regressions when doing buffered writes with this command. Correct that and add the flag, so that buffered writes are correctly hashed when using the non-iovec based write command. Cc: stable@vger.kernel.org Fixes: 3a6820f2bb8a ("io_uring: add non-vectored read/write commands") Signed-off-by: Jens Axboe --- diff --git a/fs/io_uring.c b/fs/io_uring.c index 7cc458e0b636c..473a977c79792 100644 --- a/fs/io_uring.c +++ b/fs/io_uring.c @@ -995,6 +995,7 @@ static const struct io_op_def io_op_defs[] = { }, [IORING_OP_WRITE] = { .needs_file = 1, + .hash_reg_file = 1, .unbound_nonreg_file = 1, .pollout = 1, .plug = 1,