mbox series

[v4,0/3] io_uring: Pass the whole sqe to commands

Message ID 20230504121856.904491-1-leitao@debian.org (mailing list archive)
Headers show
Series io_uring: Pass the whole sqe to commands | expand

Message

Breno Leitao May 4, 2023, 12:18 p.m. UTC
These three patches prepare for the sock support in the io_uring cmd, as
described in the following RFC:

Link: https://lore.kernel.org/lkml/20230406144330.1932798-1-leitao@debian.org/

Since the support linked above depends on other refactors, such as the sock
ioctl() sock refactor, I would like to start integrating patches that have
consensus and can bring value right now.  This will also reduce the
patchset size later.

Regarding to these three patches, they are simple changes that turn
io_uring cmd subsystem more flexible (by passing the whole SQE to the
command), and cleaning up an unnecessary compile check.

These patches were tested by creating a file system and mounting an NVME disk
using ubdsrv/ublkb0.

Reviewed-by: Kanchan Joshi <joshi.k@samsung.com>

V1 -> V2 :
  * Create a helper to return the size of the SQE
V2 -> V3:
  * Transformed uring_sqe_size() into a proper function
  * Fixed some commit messages
  * Created a helper function for nvme/host to avoid casting
  * Added a fourth patch to avoid ublk_drv's casts by using a proper helper
V3 -> V4:
  * Create a function that returns a null pointer (io_uring_sqe_cmd()),
    and uses it to get the cmd private data from the sqe.

Breno Leitao (3):
  io_uring: Create a helper to return the SQE size
  io_uring: Pass whole sqe to commands
  io_uring: Remove unnecessary BUILD_BUG_ON

 drivers/block/ublk_drv.c  | 26 +++++++++++++-------------
 drivers/nvme/host/ioctl.c |  2 +-
 include/linux/io_uring.h  |  7 ++++++-
 io_uring/io_uring.h       | 10 ++++++++++
 io_uring/opdef.c          |  2 +-
 io_uring/uring_cmd.c      | 12 +++---------
 io_uring/uring_cmd.h      |  8 --------
 7 files changed, 34 insertions(+), 33 deletions(-)

Comments

Pavel Begunkov May 4, 2023, 2:09 p.m. UTC | #1
On 5/4/23 13:18, Breno Leitao wrote:
> These three patches prepare for the sock support in the io_uring cmd, as
> described in the following RFC:

It doesn't apply, seems there are conflicts with ublk, but
looks good otherwise.

Reviewed-by: Pavel Begunkov <asml.silence@gmail.com>


> Link: https://lore.kernel.org/lkml/20230406144330.1932798-1-leitao@debian.org/
> 
> Since the support linked above depends on other refactors, such as the sock
> ioctl() sock refactor, I would like to start integrating patches that have
> consensus and can bring value right now.  This will also reduce the
> patchset size later.
> 
> Regarding to these three patches, they are simple changes that turn
> io_uring cmd subsystem more flexible (by passing the whole SQE to the
> command), and cleaning up an unnecessary compile check.
> 
> These patches were tested by creating a file system and mounting an NVME disk
> using ubdsrv/ublkb0.
> 
> Reviewed-by: Kanchan Joshi <joshi.k@samsung.com>
> 
> V1 -> V2 :
>    * Create a helper to return the size of the SQE
> V2 -> V3:
>    * Transformed uring_sqe_size() into a proper function
>    * Fixed some commit messages
>    * Created a helper function for nvme/host to avoid casting
>    * Added a fourth patch to avoid ublk_drv's casts by using a proper helper
> V3 -> V4:
>    * Create a function that returns a null pointer (io_uring_sqe_cmd()),
>      and uses it to get the cmd private data from the sqe.
> 
> Breno Leitao (3):
>    io_uring: Create a helper to return the SQE size
>    io_uring: Pass whole sqe to commands
>    io_uring: Remove unnecessary BUILD_BUG_ON
> 
>   drivers/block/ublk_drv.c  | 26 +++++++++++++-------------
>   drivers/nvme/host/ioctl.c |  2 +-
>   include/linux/io_uring.h  |  7 ++++++-
>   io_uring/io_uring.h       | 10 ++++++++++
>   io_uring/opdef.c          |  2 +-
>   io_uring/uring_cmd.c      | 12 +++---------
>   io_uring/uring_cmd.h      |  8 --------
>   7 files changed, 34 insertions(+), 33 deletions(-)
>
Jens Axboe May 4, 2023, 5:51 p.m. UTC | #2
On 5/4/23 6:18 AM, Breno Leitao wrote:
> These three patches prepare for the sock support in the io_uring cmd, as
> described in the following RFC:
> 
> Link: https://lore.kernel.org/lkml/20230406144330.1932798-1-leitao@debian.org/
> 
> Since the support linked above depends on other refactors, such as the sock
> ioctl() sock refactor, I would like to start integrating patches that have
> consensus and can bring value right now.  This will also reduce the
> patchset size later.
> 
> Regarding to these three patches, they are simple changes that turn
> io_uring cmd subsystem more flexible (by passing the whole SQE to the
> command), and cleaning up an unnecessary compile check.
> 
> These patches were tested by creating a file system and mounting an NVME disk
> using ubdsrv/ublkb0.

Thanks Breno, applied!