All of lore.kernel.org
 help / color / mirror / Atom feed
From: Logan Gunthorpe <logang@deltatee.com>
To: Jason Gunthorpe <jgg@ziepe.ca>
Cc: linux-kernel@vger.kernel.org, linux-nvme@lists.infradead.org,
	linux-block@vger.kernel.org, linux-pci@vger.kernel.org,
	linux-mm@kvack.org, iommu@lists.linux-foundation.org,
	"Stephen Bates" <sbates@raithlin.com>,
	"Christoph Hellwig" <hch@lst.de>,
	"Dan Williams" <dan.j.williams@intel.com>,
	"Christian König" <christian.koenig@amd.com>,
	"Ira Weiny" <iweiny@intel.com>,
	"John Hubbard" <jhubbard@nvidia.com>,
	"Don Dutile" <ddutile@redhat.com>,
	"Matthew Wilcox" <willy@infradead.org>,
	"Daniel Vetter" <daniel.vetter@ffwll.ch>,
	"Jakowski Andrzej" <andrzej.jakowski@intel.com>,
	"Minturn Dave B" <dave.b.minturn@intel.com>,
	"Jason Ekstrand" <jason@jlekstrand.net>,
	"Dave Hansen" <dave.hansen@linux.intel.com>,
	"Xiong Jianxin" <jianxin.xiong@intel.com>
Subject: Re: [RFC PATCH v2 11/11] nvme-pci: Convert to using dma_map_sg for p2pdma pages
Date: Thu, 11 Mar 2021 18:37:03 -0700	[thread overview]
Message-ID: <c6cc9e07-b7cf-6d3d-b0bf-25428b197731@deltatee.com> (raw)
In-Reply-To: <20210311235943.GB2710221@ziepe.ca>



On 2021-03-11 4:59 p.m., Jason Gunthorpe wrote:
> On Thu, Mar 11, 2021 at 04:31:41PM -0700, Logan Gunthorpe wrote:
>> Convert to using dma_[un]map_sg() for PCI p2pdma pages.
>>
>> This should be equivalent, though support will be somewhat less
>> (only dma-direct and dma-iommu are currently supported).
>>
>> Signed-off-by: Logan Gunthorpe <logang@deltatee.com>
>>  drivers/nvme/host/pci.c | 27 +++++++--------------------
>>  1 file changed, 7 insertions(+), 20 deletions(-)
>>
>> diff --git a/drivers/nvme/host/pci.c b/drivers/nvme/host/pci.c
>> index 7d40c6a9e58e..89ca5acf7a62 100644
>> +++ b/drivers/nvme/host/pci.c
>> @@ -577,17 +577,6 @@ static void nvme_free_sgls(struct nvme_dev *dev, struct request *req)
>>  
>>  }
>>  
>> -static void nvme_unmap_sg(struct nvme_dev *dev, struct request *req)
>> -{
>> -	struct nvme_iod *iod = blk_mq_rq_to_pdu(req);
>> -
>> -	if (is_pci_p2pdma_page(sg_page(iod->sg)))
>> -		pci_p2pdma_unmap_sg(dev->dev, iod->sg, iod->nents,
>> -				    rq_dma_dir(req));
>> -	else
>> -		dma_unmap_sg(dev->dev, iod->sg, iod->nents, rq_dma_dir(req));
>> -}
> 
> Can the two other places with this code pattern be changed too?

Yes, if this goes forward, I imagine completely dropping
pci_p2pdma_unmap_sg().

Logan

WARNING: multiple messages have this Message-ID (diff)
From: Logan Gunthorpe <logang@deltatee.com>
To: Jason Gunthorpe <jgg@ziepe.ca>
Cc: linux-kernel@vger.kernel.org, linux-nvme@lists.infradead.org,
	linux-block@vger.kernel.org, linux-pci@vger.kernel.org,
	linux-mm@kvack.org, iommu@lists.linux-foundation.org,
	"Stephen Bates" <sbates@raithlin.com>,
	"Christoph Hellwig" <hch@lst.de>,
	"Dan Williams" <dan.j.williams@intel.com>,
	"Christian König" <christian.koenig@amd.com>,
	"Ira Weiny" <iweiny@intel.com>,
	"John Hubbard" <jhubbard@nvidia.com>,
	"Don Dutile" <ddutile@redhat.com>,
	"Matthew Wilcox" <willy@infradead.org>,
	"Daniel Vetter" <daniel.vetter@ffwll.ch>,
	"Jakowski Andrzej" <andrzej.jakowski@intel.com>,
	"Minturn Dave B" <dave.b.minturn@intel.com>,
	"Jason Ekstrand" <jason@jlekstrand.net>,
	"Dave Hansen" <dave.hansen@linux.intel.com>,
	"Xiong Jianxin" <jianxin.xiong@intel.com>
Subject: Re: [RFC PATCH v2 11/11] nvme-pci: Convert to using dma_map_sg for p2pdma pages
Date: Thu, 11 Mar 2021 18:37:03 -0700	[thread overview]
Message-ID: <c6cc9e07-b7cf-6d3d-b0bf-25428b197731@deltatee.com> (raw)
In-Reply-To: <20210311235943.GB2710221@ziepe.ca>



On 2021-03-11 4:59 p.m., Jason Gunthorpe wrote:
> On Thu, Mar 11, 2021 at 04:31:41PM -0700, Logan Gunthorpe wrote:
>> Convert to using dma_[un]map_sg() for PCI p2pdma pages.
>>
>> This should be equivalent, though support will be somewhat less
>> (only dma-direct and dma-iommu are currently supported).
>>
>> Signed-off-by: Logan Gunthorpe <logang@deltatee.com>
>>  drivers/nvme/host/pci.c | 27 +++++++--------------------
>>  1 file changed, 7 insertions(+), 20 deletions(-)
>>
>> diff --git a/drivers/nvme/host/pci.c b/drivers/nvme/host/pci.c
>> index 7d40c6a9e58e..89ca5acf7a62 100644
>> +++ b/drivers/nvme/host/pci.c
>> @@ -577,17 +577,6 @@ static void nvme_free_sgls(struct nvme_dev *dev, struct request *req)
>>  
>>  }
>>  
>> -static void nvme_unmap_sg(struct nvme_dev *dev, struct request *req)
>> -{
>> -	struct nvme_iod *iod = blk_mq_rq_to_pdu(req);
>> -
>> -	if (is_pci_p2pdma_page(sg_page(iod->sg)))
>> -		pci_p2pdma_unmap_sg(dev->dev, iod->sg, iod->nents,
>> -				    rq_dma_dir(req));
>> -	else
>> -		dma_unmap_sg(dev->dev, iod->sg, iod->nents, rq_dma_dir(req));
>> -}
> 
> Can the two other places with this code pattern be changed too?

Yes, if this goes forward, I imagine completely dropping
pci_p2pdma_unmap_sg().

Logan

_______________________________________________
Linux-nvme mailing list
Linux-nvme@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-nvme

WARNING: multiple messages have this Message-ID (diff)
From: Logan Gunthorpe <logang@deltatee.com>
To: Jason Gunthorpe <jgg@ziepe.ca>
Cc: "Minturn Dave B" <dave.b.minturn@intel.com>,
	"Christian König" <christian.koenig@amd.com>,
	linux-pci@vger.kernel.org,
	"Daniel Vetter" <daniel.vetter@ffwll.ch>,
	"Dave Hansen" <dave.hansen@linux.intel.com>,
	"Ira Weiny" <iweiny@intel.com>,
	linux-kernel@vger.kernel.org, linux-nvme@lists.infradead.org,
	"Stephen Bates" <sbates@raithlin.com>,
	linux-block@vger.kernel.org, linux-mm@kvack.org,
	iommu@lists.linux-foundation.org,
	"Matthew Wilcox" <willy@infradead.org>,
	"Jason Ekstrand" <jason@jlekstrand.net>,
	"John Hubbard" <jhubbard@nvidia.com>,
	"Dan Williams" <dan.j.williams@intel.com>,
	"Jakowski Andrzej" <andrzej.jakowski@intel.com>,
	"Christoph Hellwig" <hch@lst.de>,
	"Xiong Jianxin" <jianxin.xiong@intel.com>
Subject: Re: [RFC PATCH v2 11/11] nvme-pci: Convert to using dma_map_sg for p2pdma pages
Date: Thu, 11 Mar 2021 18:37:03 -0700	[thread overview]
Message-ID: <c6cc9e07-b7cf-6d3d-b0bf-25428b197731@deltatee.com> (raw)
In-Reply-To: <20210311235943.GB2710221@ziepe.ca>



On 2021-03-11 4:59 p.m., Jason Gunthorpe wrote:
> On Thu, Mar 11, 2021 at 04:31:41PM -0700, Logan Gunthorpe wrote:
>> Convert to using dma_[un]map_sg() for PCI p2pdma pages.
>>
>> This should be equivalent, though support will be somewhat less
>> (only dma-direct and dma-iommu are currently supported).
>>
>> Signed-off-by: Logan Gunthorpe <logang@deltatee.com>
>>  drivers/nvme/host/pci.c | 27 +++++++--------------------
>>  1 file changed, 7 insertions(+), 20 deletions(-)
>>
>> diff --git a/drivers/nvme/host/pci.c b/drivers/nvme/host/pci.c
>> index 7d40c6a9e58e..89ca5acf7a62 100644
>> +++ b/drivers/nvme/host/pci.c
>> @@ -577,17 +577,6 @@ static void nvme_free_sgls(struct nvme_dev *dev, struct request *req)
>>  
>>  }
>>  
>> -static void nvme_unmap_sg(struct nvme_dev *dev, struct request *req)
>> -{
>> -	struct nvme_iod *iod = blk_mq_rq_to_pdu(req);
>> -
>> -	if (is_pci_p2pdma_page(sg_page(iod->sg)))
>> -		pci_p2pdma_unmap_sg(dev->dev, iod->sg, iod->nents,
>> -				    rq_dma_dir(req));
>> -	else
>> -		dma_unmap_sg(dev->dev, iod->sg, iod->nents, rq_dma_dir(req));
>> -}
> 
> Can the two other places with this code pattern be changed too?

Yes, if this goes forward, I imagine completely dropping
pci_p2pdma_unmap_sg().

Logan
_______________________________________________
iommu mailing list
iommu@lists.linux-foundation.org
https://lists.linuxfoundation.org/mailman/listinfo/iommu

  reply	other threads:[~2021-03-12  2:19 UTC|newest]

Thread overview: 141+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-03-11 23:31 [RFC PATCH v2 00/11] Add support to dma_map_sg for P2PDMA Logan Gunthorpe
2021-03-11 23:31 ` Logan Gunthorpe
2021-03-11 23:31 ` Logan Gunthorpe
2021-03-11 23:31 ` [RFC PATCH v2 01/11] PCI/P2PDMA: Pass gfp_mask flags to upstream_bridge_distance_warn() Logan Gunthorpe
2021-03-11 23:31   ` Logan Gunthorpe
2021-03-11 23:31   ` Logan Gunthorpe
2021-03-12 20:39   ` Bjorn Helgaas
2021-03-12 20:39     ` Bjorn Helgaas
2021-03-12 20:39     ` Bjorn Helgaas
2021-03-12 20:53     ` Logan Gunthorpe
2021-03-12 20:53       ` Logan Gunthorpe
2021-03-12 20:53       ` Logan Gunthorpe
2021-03-11 23:31 ` [RFC PATCH v2 02/11] PCI/P2PDMA: Avoid pci_get_slot() which sleeps Logan Gunthorpe
2021-03-11 23:31   ` Logan Gunthorpe
2021-03-11 23:31   ` Logan Gunthorpe
2021-03-12 20:57   ` Bjorn Helgaas
2021-03-12 20:57     ` Bjorn Helgaas
2021-03-12 20:57     ` Bjorn Helgaas
2021-03-12 21:37     ` Logan Gunthorpe
2021-03-12 21:37       ` Logan Gunthorpe
2021-03-12 21:37       ` Logan Gunthorpe
2021-03-11 23:31 ` [RFC PATCH v2 03/11] PCI/P2PDMA: Attempt to set map_type if it has not been set Logan Gunthorpe
2021-03-11 23:31   ` Logan Gunthorpe
2021-03-11 23:31   ` Logan Gunthorpe
2021-03-11 23:31 ` [RFC PATCH v2 04/11] PCI/P2PDMA: Introduce pci_p2pdma_should_map_bus() and pci_p2pdma_bus_offset() Logan Gunthorpe
2021-03-11 23:31   ` Logan Gunthorpe
2021-03-11 23:31   ` Logan Gunthorpe
2021-03-13  1:38   ` Ira Weiny
2021-03-13  1:38     ` Ira Weiny
2021-03-13  1:38     ` Ira Weiny
2021-03-15 16:27     ` Logan Gunthorpe
2021-03-15 16:27       ` Logan Gunthorpe
2021-03-15 16:27       ` Logan Gunthorpe
2021-03-24 17:21       ` Jason Gunthorpe
2021-03-24 17:21         ` Jason Gunthorpe
2021-03-24 17:21         ` Jason Gunthorpe
2021-03-24 18:34         ` Christian König
2021-03-24 18:34           ` Christian König
2021-03-24 18:34           ` Christian König
2021-03-13  2:32   ` Ira Weiny
2021-03-13  2:32     ` Ira Weiny
2021-03-13  2:32     ` Ira Weiny
2021-03-15 16:30     ` Logan Gunthorpe
2021-03-15 16:30       ` Logan Gunthorpe
2021-03-15 16:30       ` Logan Gunthorpe
2021-03-16  8:14   ` Christoph Hellwig
2021-03-16  8:14     ` Christoph Hellwig
2021-03-16  8:14     ` Christoph Hellwig
2021-03-11 23:31 ` [RFC PATCH v2 05/11] lib/scatterlist: Add flag for indicating P2PDMA segments in an SGL Logan Gunthorpe
2021-03-11 23:31   ` Logan Gunthorpe
2021-03-11 23:31   ` Logan Gunthorpe
2021-03-11 23:31 ` [RFC PATCH v2 06/11] dma-direct: Support PCI P2PDMA pages in dma-direct map_sg Logan Gunthorpe
2021-03-11 23:31   ` Logan Gunthorpe
2021-03-11 23:31   ` Logan Gunthorpe
2021-03-12 15:52   ` Robin Murphy
2021-03-12 15:52     ` Robin Murphy
2021-03-12 15:52     ` Robin Murphy
2021-03-12 16:24     ` Logan Gunthorpe
2021-03-12 16:24       ` Logan Gunthorpe
2021-03-12 16:24       ` Logan Gunthorpe
2021-03-12 18:11       ` Robin Murphy
2021-03-12 18:11         ` Robin Murphy
2021-03-12 18:11         ` Robin Murphy
2021-03-12 18:27         ` Logan Gunthorpe
2021-03-12 18:27           ` Logan Gunthorpe
2021-03-12 18:27           ` Logan Gunthorpe
2021-03-16  7:58           ` Christoph Hellwig
2021-03-16  7:58             ` Christoph Hellwig
2021-03-16  7:58             ` Christoph Hellwig
2021-03-16 15:54             ` Logan Gunthorpe
2021-03-16 15:54               ` Logan Gunthorpe
2021-03-16 15:54               ` Logan Gunthorpe
2021-03-16  7:56         ` Christoph Hellwig
2021-03-16  7:56           ` Christoph Hellwig
2021-03-16  7:56           ` Christoph Hellwig
2021-03-16  8:11   ` Christoph Hellwig
2021-03-16  8:11     ` Christoph Hellwig
2021-03-16  8:11     ` Christoph Hellwig
2021-03-11 23:31 ` [RFC PATCH v2 07/11] dma-mapping: Add flags to dma_map_ops to indicate PCI P2PDMA support Logan Gunthorpe
2021-03-11 23:31   ` Logan Gunthorpe
2021-03-11 23:31   ` Logan Gunthorpe
2021-03-13  2:36   ` Ira Weiny
2021-03-13  2:36     ` Ira Weiny
2021-03-13  2:36     ` Ira Weiny
2021-03-15 16:33     ` Logan Gunthorpe
2021-03-15 16:33       ` Logan Gunthorpe
2021-03-15 16:33       ` Logan Gunthorpe
2021-03-16  8:00       ` Christoph Hellwig
2021-03-16  8:00         ` Christoph Hellwig
2021-03-16  8:00         ` Christoph Hellwig
2021-03-16  8:15   ` Christoph Hellwig
2021-03-16  8:15     ` Christoph Hellwig
2021-03-16  8:15     ` Christoph Hellwig
2021-03-11 23:31 ` [RFC PATCH v2 08/11] iommu/dma: Support PCI P2PDMA pages in dma-iommu map_sg Logan Gunthorpe
2021-03-11 23:31   ` Logan Gunthorpe
2021-03-11 23:31   ` Logan Gunthorpe
2021-03-12 15:52   ` Robin Murphy
2021-03-12 15:52     ` Robin Murphy
2021-03-12 15:52     ` Robin Murphy
2021-03-12 17:03     ` Logan Gunthorpe
2021-03-12 17:03       ` Logan Gunthorpe
2021-03-12 17:03       ` Logan Gunthorpe
2021-03-12 19:47       ` Robin Murphy
2021-03-12 19:47         ` Robin Murphy
2021-03-12 19:47         ` Robin Murphy
2021-03-12 20:06         ` Logan Gunthorpe
2021-03-12 20:06           ` Logan Gunthorpe
2021-03-12 20:06           ` Logan Gunthorpe
2021-03-11 23:31 ` [RFC PATCH v2 09/11] block: Add BLK_STS_P2PDMA Logan Gunthorpe
2021-03-11 23:31   ` Logan Gunthorpe
2021-03-11 23:31   ` Logan Gunthorpe
2021-03-16  8:00   ` Christoph Hellwig
2021-03-16  8:00     ` Christoph Hellwig
2021-03-16  8:00     ` Christoph Hellwig
2021-03-16 16:02     ` Logan Gunthorpe
2021-03-16 16:02       ` Logan Gunthorpe
2021-03-16 16:02       ` Logan Gunthorpe
2021-03-11 23:31 ` [RFC PATCH v2 10/11] nvme-pci: Check DMA ops when indicating support for PCI P2PDMA Logan Gunthorpe
2021-03-11 23:31   ` Logan Gunthorpe
2021-03-11 23:31   ` Logan Gunthorpe
2021-03-11 23:31 ` [RFC PATCH v2 11/11] nvme-pci: Convert to using dma_map_sg for p2pdma pages Logan Gunthorpe
2021-03-11 23:31   ` Logan Gunthorpe
2021-03-11 23:31   ` Logan Gunthorpe
2021-03-11 23:59   ` Jason Gunthorpe
2021-03-11 23:59     ` Jason Gunthorpe
2021-03-11 23:59     ` Jason Gunthorpe
2021-03-12  1:37     ` Logan Gunthorpe [this message]
2021-03-12  1:37       ` Logan Gunthorpe
2021-03-12  1:37       ` Logan Gunthorpe
2021-03-12 15:51 ` [RFC PATCH v2 00/11] Add support to dma_map_sg for P2PDMA Robin Murphy
2021-03-12 15:51   ` Robin Murphy
2021-03-12 15:51   ` Robin Murphy
2021-03-12 16:18   ` Logan Gunthorpe
2021-03-12 16:18     ` Logan Gunthorpe
2021-03-12 16:18     ` Logan Gunthorpe
2021-03-12 17:46     ` Robin Murphy
2021-03-12 17:46       ` Robin Murphy
2021-03-12 17:46       ` Robin Murphy
2021-03-12 18:24       ` Logan Gunthorpe
2021-03-12 18:24         ` Logan Gunthorpe
2021-03-12 18:24         ` Logan Gunthorpe

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=c6cc9e07-b7cf-6d3d-b0bf-25428b197731@deltatee.com \
    --to=logang@deltatee.com \
    --cc=andrzej.jakowski@intel.com \
    --cc=christian.koenig@amd.com \
    --cc=dan.j.williams@intel.com \
    --cc=daniel.vetter@ffwll.ch \
    --cc=dave.b.minturn@intel.com \
    --cc=dave.hansen@linux.intel.com \
    --cc=ddutile@redhat.com \
    --cc=hch@lst.de \
    --cc=iommu@lists.linux-foundation.org \
    --cc=iweiny@intel.com \
    --cc=jason@jlekstrand.net \
    --cc=jgg@ziepe.ca \
    --cc=jhubbard@nvidia.com \
    --cc=jianxin.xiong@intel.com \
    --cc=linux-block@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-mm@kvack.org \
    --cc=linux-nvme@lists.infradead.org \
    --cc=linux-pci@vger.kernel.org \
    --cc=sbates@raithlin.com \
    --cc=willy@infradead.org \
    /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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.