[PATCH 0/3] io_uring/uring_cmd: avoid double indirect call in task work dispatch

Caleb Sander Mateos posted 3 patches 3 months, 2 weeks ago
There is a newer version of this series
block/ioctl.c                  |  1 +
drivers/block/ublk_drv.c       |  3 +++
drivers/nvme/host/ioctl.c      |  1 +
fs/btrfs/ioctl.c               |  1 +
fs/fuse/dev_uring.c            |  3 ++-
include/linux/io_uring.h       | 14 +++++++++++
include/linux/io_uring/cmd.h   | 46 ++++++++++++++++++++++------------
include/linux/io_uring_types.h |  1 -
io_uring/io_uring.h            | 13 ----------
io_uring/uring_cmd.c           | 17 ++-----------
10 files changed, 54 insertions(+), 46 deletions(-)
[PATCH 0/3] io_uring/uring_cmd: avoid double indirect call in task work dispatch
Posted by Caleb Sander Mateos 3 months, 2 weeks ago
Define a io_req_tw_func_t wrapper function around each io_uring_cmd_tw_t
function to avoid the additional indirect call and save 8 bytes in
struct io_uring_cmd. Additionally avoid the io_should_terminate_tw()
computation in uring_cmd task work callbacks that don't need it.

Caleb Sander Mateos (3):
  io_uring: expose io_should_terminate_tw()
  io_uring/uring_cmd: call io_should_terminate_tw() when needed
  io_uring/uring_cmd: avoid double indirect call in task work dispatch

 block/ioctl.c                  |  1 +
 drivers/block/ublk_drv.c       |  3 +++
 drivers/nvme/host/ioctl.c      |  1 +
 fs/btrfs/ioctl.c               |  1 +
 fs/fuse/dev_uring.c            |  3 ++-
 include/linux/io_uring.h       | 14 +++++++++++
 include/linux/io_uring/cmd.h   | 46 ++++++++++++++++++++++------------
 include/linux/io_uring_types.h |  1 -
 io_uring/io_uring.h            | 13 ----------
 io_uring/uring_cmd.c           | 17 ++-----------
 10 files changed, 54 insertions(+), 46 deletions(-)

-- 
2.45.2