Ming Lei
5e2fde1a94
block: pass io_comp_batch to rq_end_io_fn callback
...
Add a third parameter 'const struct io_comp_batch *' to the rq_end_io_fn
callback signature. This allows end_io handlers to access the completion
batch context when requests are completed via blk_mq_end_request_batch().
The io_comp_batch is passed from blk_mq_end_request_batch(), while NULL
is passed from __blk_mq_end_request() and blk_mq_put_rq_ref() which don't
have batch context.
This infrastructure change enables drivers to detect whether they're
being called from a batched completion path (like iopoll) and access
additional context stored in the io_comp_batch.
Update all rq_end_io_fn implementations:
- block/blk-mq.c: blk_end_sync_rq
- block/blk-flush.c: flush_end_io, mq_flush_data_end_io
- drivers/nvme/host/ioctl.c: nvme_uring_cmd_end_io
- drivers/nvme/host/core.c: nvme_keep_alive_end_io
- drivers/nvme/host/pci.c: abort_endio, nvme_del_queue_end, nvme_del_cq_end
- drivers/nvme/target/passthru.c: nvmet_passthru_req_done
- drivers/scsi/scsi_error.c: eh_lock_door_done
- drivers/scsi/sg.c: sg_rq_end_io
- drivers/scsi/st.c: st_scsi_execute_end
- drivers/target/target_core_pscsi.c: pscsi_req_done
- drivers/md/dm-rq.c: end_clone_request
Signed-off-by: Ming Lei <ming.lei@redhat.com >
Reviewed-by: Kanchan Joshi <joshi.k@samsung.com >
Signed-off-by: Jens Axboe <axboe@kernel.dk >
2026-01-20 10:12:54 -07:00
..
2025-10-23 23:01:00 -04:00
2025-08-13 02:59:28 -04:00
2025-11-12 20:50:43 -05:00
2025-08-13 02:59:28 -04:00
2025-06-08 09:07:37 +02:00
2025-11-12 21:28:26 -05:00
2025-11-24 16:58:59 -06:00
2025-11-12 21:28:26 -05:00
2025-06-08 09:07:37 +02:00
2025-11-24 16:58:59 -06:00
2025-06-08 09:07:37 +02:00
2025-11-12 21:28:26 -05:00
2025-07-31 12:13:53 -07:00
2025-06-17 10:44:13 +02:00
2025-11-08 12:28:11 -05:00
2025-12-05 19:56:50 -08:00
2025-08-18 22:08:30 -04:00
2025-06-17 10:44:13 +02:00
2025-11-12 21:28:26 -05:00
2025-10-20 12:00:11 -04:00
2025-10-06 22:27:28 -04:00
2025-12-08 22:08:31 -05:00
2025-12-05 19:56:50 -08:00
2025-10-20 12:00:42 -04:00
2025-12-16 21:19:26 -05:00
2025-10-03 19:17:48 -07:00
2025-09-29 17:26:20 -04:00
2025-08-13 02:59:28 -04:00
2025-11-12 21:28:27 -05:00
2025-11-12 21:28:26 -05:00
2025-11-12 21:28:26 -05:00
2025-12-14 15:35:35 +12:00
2025-12-14 15:35:35 +12:00
2025-11-08 13:09:49 -05:00
2025-11-19 12:30:11 +01:00
2025-06-08 09:07:37 +02:00
2025-08-13 02:59:28 -04:00
2025-08-13 02:59:28 -04:00
2025-08-13 02:59:28 -04:00
2024-12-04 15:34:28 -05:00
2024-12-09 21:59:52 -05:00
2024-11-06 20:45:25 -05:00
2024-11-06 20:45:25 -05:00
2025-10-23 22:58:53 -04:00
2025-08-13 02:59:28 -04:00
2025-08-13 02:59:28 -04:00
2025-08-13 02:59:28 -04:00
2024-12-09 21:59:52 -05:00
2024-11-06 20:45:25 -05:00
2025-08-13 02:59:28 -04:00
2025-10-02 10:16:56 -07:00
2025-08-13 02:59:28 -04:00
2024-11-06 20:45:25 -05:00
2024-03-10 18:15:48 -04:00
2025-06-08 09:07:37 +02:00
2024-12-09 21:59:52 -05:00
2024-12-04 15:34:28 -05:00
2025-01-02 13:42:35 -05:00
2024-12-09 21:59:52 -05:00
2025-08-13 02:59:28 -04:00
2024-04-08 22:01:19 -04:00
2024-06-11 21:33:58 -04:00
2025-11-19 22:59:25 -05:00
2025-09-24 21:41:24 -04:00
2024-12-09 21:59:52 -05:00
2025-11-29 15:42:17 -05:00
2025-08-13 02:59:28 -04:00
2025-12-14 15:35:35 +12:00
2024-10-02 17:23:23 -04:00
2025-08-13 02:59:28 -04:00
2025-08-13 02:59:28 -04:00
2025-02-12 22:05:10 -05:00
2025-02-12 22:05:10 -05:00
2024-11-06 20:45:25 -05:00
2025-10-01 00:00:42 +00:00
2025-02-12 22:05:10 -05:00
2025-07-21 23:48:36 -04:00
2024-03-07 23:06:19 +11:00
2024-11-06 20:45:25 -05:00
2024-11-06 20:45:25 -05:00
2025-02-03 18:04:55 -05:00
2025-08-13 02:59:28 -04:00
2025-08-13 02:59:28 -04:00
2025-11-14 17:05:53 +01:00
2024-11-06 20:45:25 -05:00
2025-08-13 02:59:28 -04:00
2025-08-13 02:59:28 -04:00
2024-08-22 21:28:56 -04:00
2025-08-19 22:30:57 -04:00
2024-08-22 21:28:56 -04:00
2025-06-08 09:07:37 +02:00
2024-08-12 22:05:50 -04:00
2024-08-12 22:05:50 -04:00
2024-12-09 21:59:52 -05:00
2025-06-08 09:07:37 +02:00
2025-08-13 02:59:28 -04:00
2024-12-04 15:34:28 -05:00
2025-10-21 22:06:22 -04:00
2024-11-20 21:32:48 -05:00
2025-08-13 02:59:28 -04:00
2025-08-13 02:59:28 -04:00
2024-12-04 15:34:28 -05:00
2024-10-02 17:23:23 -04:00
2025-12-16 21:09:44 -05:00
2024-04-08 22:12:33 -04:00
2025-06-24 21:17:22 -04:00
2025-12-08 22:04:38 -05:00
2026-01-20 10:12:54 -07:00
2025-05-07 07:31:07 -06:00
2025-01-21 12:16:17 -05:00
2025-11-29 15:20:15 -05:00
2025-10-21 21:11:35 -04:00
2025-11-12 20:56:38 -05:00
2025-11-12 17:02:31 -05:00
2024-10-02 17:23:23 -04:00
2025-11-12 17:02:31 -05:00
2025-03-03 22:11:48 -05:00
2025-11-12 18:16:05 -05:00
2024-10-02 17:23:23 -04:00
2025-11-12 21:28:26 -05:00
2025-11-12 21:15:18 -05:00
2025-07-24 22:00:43 -04:00
2025-01-10 15:15:20 -05:00
2025-04-03 10:54:31 -04:00
2025-11-12 17:02:31 -05:00
2025-08-13 02:59:28 -04:00
2025-07-01 14:00:15 +02:00
2025-11-05 08:07:21 -07:00
2025-12-09 08:53:24 +09:00
2025-11-05 08:07:21 -07:00
2024-10-02 17:23:23 -04:00
2026-01-20 10:12:54 -07:00
2024-11-06 20:45:25 -05:00
2025-11-12 20:53:41 -05:00
2024-11-06 20:45:25 -05:00
2024-07-28 17:06:20 -07:00
2025-08-30 21:46:21 -04:00
2024-05-15 10:05:24 -04:00
2026-01-20 10:12:54 -07:00
2025-02-03 17:43:31 -05:00
2025-12-05 19:56:50 -08:00
2025-10-13 15:54:13 -04:00
2024-11-06 21:06:44 -05:00
2024-11-06 20:45:25 -05:00
2024-11-06 20:45:25 -05:00
2025-07-01 10:24:19 -06:00
2024-08-22 21:28:55 -04:00
2024-10-03 21:48:08 -04:00
2025-08-13 02:59:28 -04:00
2024-12-04 15:34:28 -05:00
2024-09-12 20:25:43 -04:00