public inbox for linux-block@vger.kernel.org
 help / color / mirror / Atom feed
From: Bart Van Assche <bvanassche@acm.org>
To: Yang Xiuwei <yangxiuwei@kylinos.cn>,
	axboe@kernel.dk, fujita.tomonori@lab.ntt.co.jp,
	James.Bottomley@HansenPartnership.com,
	martin.petersen@oracle.com
Cc: linux-block@vger.kernel.org, linux-scsi@vger.kernel.org
Subject: Re: [PATCH v7 3/3] scsi: bsg: add io_uring passthrough handler
Date: Thu, 12 Mar 2026 12:41:42 -0700	[thread overview]
Message-ID: <e6167003-82e4-4814-9e11-d1609681b5a9@acm.org> (raw)
In-Reply-To: <20260312092237.2464560-4-yangxiuwei@kylinos.cn>

On 3/12/26 2:22 AM, Yang Xiuwei wrote:
> +/*
> + * Per-command BSG SCSI PDU stored in io_uring_cmd.pdu[32].
> + * Holds temporary state between submission, completion and task_work.
> + */
> +struct scsi_bsg_uring_cmd_pdu {
> +	struct bio *bio;		/* mapped user buffer, unmap in task work */
> +	struct request *req;		/* block request, freed in task work */
> +	u64 response_addr;		/* user space response buffer address */
> +};

A static_assert() that verifies that sizeof(struct
scsi_bsg_uring_cmd_pdu) is less than or equal to the size of
((struct io_uring_cmd *)NULL)->pdu seems appropriate here.

> +/* Task work: build res2 (layout in uapi/linux/bsg.h) and copy sense to user. */
> +static void scsi_bsg_uring_task_cb(struct io_tw_req tw_req, io_tw_token_t tw)
> +{
> +	struct scsi_bsg_uring_cmd_pdu *pdu;
> +	struct io_uring_cmd *ioucmd = io_uring_cmd_from_tw(tw_req);
> +	struct scsi_cmnd *scmd;
> +	struct request *rq;
> +	u64 res2;
> +	int ret = 0;
> +	u8 driver_status = 0;
> +	u8 sense_len_wr = 0;
> +
> +	pdu = scsi_bsg_uring_cmd_pdu(ioucmd);
> +	rq = pdu->req;
> +	scmd = blk_mq_rq_to_pdu(rq);

Please combine the above three assignments with the above declarations
since that is the style followed by most kernel code.

Otherwise this patch series looks good to me.

Thanks,

Bart.

  reply	other threads:[~2026-03-12 19:41 UTC|newest]

Thread overview: 13+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2026-03-12  9:22 [PATCH v7 0/3] bsg: add io_uring command support for SCSI passthrough Yang Xiuwei
2026-03-12  9:22 ` [PATCH v7 1/3] bsg: add bsg_uring_cmd uapi structure Yang Xiuwei
2026-03-12 19:29   ` Bart Van Assche
2026-03-13  7:34     ` Yang Xiuwei
2026-03-13 15:34       ` Bart Van Assche
2026-03-12  9:22 ` [PATCH v7 2/3] bsg: add io_uring command support to generic layer Yang Xiuwei
2026-03-12 19:33   ` Bart Van Assche
2026-03-13  7:34     ` Yang Xiuwei
2026-03-13 15:35       ` Bart Van Assche
2026-03-12  9:22 ` [PATCH v7 3/3] scsi: bsg: add io_uring passthrough handler Yang Xiuwei
2026-03-12 19:41   ` Bart Van Assche [this message]
2026-03-13  7:34     ` Yang Xiuwei
2026-03-13 15:37       ` Bart Van Assche

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=e6167003-82e4-4814-9e11-d1609681b5a9@acm.org \
    --to=bvanassche@acm.org \
    --cc=James.Bottomley@HansenPartnership.com \
    --cc=axboe@kernel.dk \
    --cc=fujita.tomonori@lab.ntt.co.jp \
    --cc=linux-block@vger.kernel.org \
    --cc=linux-scsi@vger.kernel.org \
    --cc=martin.petersen@oracle.com \
    --cc=yangxiuwei@kylinos.cn \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox