[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <20251013193525.GD14552@unreal>
Date: Mon, 13 Oct 2025 22:35:25 +0300
From: Leon Romanovsky <leon@...nel.org>
To: Keith Busch <kbusch@...nel.org>
Cc: Christoph Hellwig <hch@....de>, Jens Axboe <axboe@...nel.dk>,
Jason Gunthorpe <jgg@...dia.com>, linux-block@...r.kernel.org,
linux-kernel@...r.kernel.org, linux-nvme@...ts.infradead.org,
Sagi Grimberg <sagi@...mberg.me>
Subject: Re: [PATCH 2/4] blk-mq-dma: unify DMA unmap routine
On Mon, Oct 13, 2025 at 12:53:47PM -0600, Keith Busch wrote:
> On Mon, Oct 13, 2025 at 06:34:10PM +0300, Leon Romanovsky wrote:
> > +bool blk_rq_dma_unmap(struct request *req, struct device *dma_dev,
> > + struct dma_iova_state *state, size_t mapped_len)
> > +{
> > + struct bio_integrity_payload *bip = bio_integrity(req->bio);
> > +
> > + if ((!bip && req->cmd_flags & REQ_P2PDMA) ||
> > + bio_integrity_flagged(req->bio, BIP_P2P_DMA))
> > + return true;
>
> I don't think you can unify it at this part here because the data
> payload might not be P2P but the integrity payload could be. The data
> payload needs to proceed to the next unmapping step in that case, but
> this change would have it return true early.
I was under wrong impression that request has or data payload or
integrity, but never both :(.
Thanks
Powered by blists - more mailing lists