diff --git a/fs/io_uring.c b/fs/io_uring.c index 6160913f085ab17007a968241a9deb122eff624b..28371e53d117e5085cd0674222c47c026d2e8672 100644 --- a/fs/io_uring.c +++ b/fs/io_uring.c @@ -580,7 +580,9 @@ static inline bool io_prep_async_work(struct io_kiocb *req, switch (req->sqe->opcode) { case IORING_OP_WRITEV: case IORING_OP_WRITE_FIXED: - do_hashed = true; + /* only regular files should be hashed for writes */ + if (req->flags & REQ_F_ISREG) + do_hashed = true; /* fall-through */ case IORING_OP_READV: case IORING_OP_READ_FIXED: