Re: [PATCH 1/4] io_uring: add IORING_OP_READ{WRITE}V_PI cmd
From: Christoph Hellwig <hch@infradead.org>
Date: 2020-02-26 15:57:30
Also in:
io-uring, linux-fsdevel
From: Christoph Hellwig <hch@infradead.org>
Date: 2020-02-26 15:57:30
Also in:
io-uring, linux-fsdevel
On Wed, Feb 26, 2020 at 07:24:06AM -0700, Jens Axboe wrote:
On 2/26/20 1:37 AM, Bob Liu wrote:quoted
diff --git a/include/uapi/linux/io_uring.h b/include/uapi/linux/io_uring.h index a3300e1..98fa3f1 100644 --- a/include/uapi/linux/io_uring.h +++ b/include/uapi/linux/io_uring.h@@ -62,6 +62,8 @@ enum { IORING_OP_NOP, IORING_OP_READV, IORING_OP_WRITEV, + IORING_OP_READV_PI, + IORING_OP_WRITEV_PI, IORING_OP_FSYNC, IORING_OP_READ_FIXED, IORING_OP_WRITE_FIXED,So this one renumbers everything past IORING_OP_WRITEV, breaking the ABI in a very bad way. I'm guessing that was entirely unintentional? Any new command must go at the end of the list. You're also not updating io_op_defs[] with the two new commands, which means it won't compile at all. I'm guessing you tested this on an older version of the kernel which didn't have io_op_defs[]?
And the real question is why we need ops insted of just a flag and using previously reserved fields for the PI pointer.