[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20230420123139.GA32030@lst.de>
Date: Thu, 20 Apr 2023 14:31:39 +0200
From: Christoph Hellwig <hch@....de>
To: Breno Leitao <leitao@...ian.org>
Cc: Christoph Hellwig <hch@....de>, io-uring@...r.kernel.org,
linux-nvme@...ts.infradead.org, asml.silence@...il.com,
axboe@...nel.dk, leit@...com, linux-kernel@...r.kernel.org,
linux-block@...r.kernel.org, sagi@...mberg.me, kbusch@...nel.org,
ming.lei@...hat.com
Subject: Re: [PATCH 1/2] io_uring: Pass whole sqe to commands
On Thu, Apr 20, 2023 at 05:29:18AM -0700, Breno Leitao wrote:
> > > - cmd_size = uring_cmd_pdu_size(req->ctx->flags & IORING_SETUP_SQE128);
> > > + if (req->ctx->flags & IORING_SETUP_SQE128)
> > > + size <<= 1;
> >
> >
> > Why does this stop using uring_cmd_pdu_size()?
>
> Before, only the cmd payload (sqe->cmd) was being copied to the async
> structure. We are copying over the whole sqe now, since we can use SQE
> fields inside the ioctl callbacks (instead of only cmd fields). So, the
> copy now is 64 bytes for single SQE or 128 for double SQEs.
That's the point of this series and I get it. But why do we remove
the nice and self-documenting helper that returns once or twice
the sizeof of the SQE structure and instead add a magic open coded
left shift?
Powered by blists - more mailing lists