All of lore.kernel.org
 help / color / mirror / Atom feed
From: Qian Cai <quic_qiancai@quicinc.com>
To: Will Deacon <will@kernel.org>, Robin Murphy <robin.murphy@arm.com>
Cc: Claire Chang <tientzu@chromium.org>,
	Christoph Hellwig <hch@lst.de>, Rob Herring <robh+dt@kernel.org>,
	<mpe@ellerman.id.au>, Joerg Roedel <joro@8bytes.org>,
	Frank Rowand <frowand.list@gmail.com>,
	Konrad Rzeszutek Wilk <konrad.wilk@oracle.com>,
	<boris.ostrovsky@oracle.com>, <jgross@suse.com>,
	Marek Szyprowski <m.szyprowski@samsung.com>,
	<heikki.krogerus@linux.intel.com>,
	<thomas.hellstrom@linux.intel.com>, <peterz@infradead.org>,
	<benh@kernel.crashing.org>, <joonas.lahtinen@linux.intel.com>,
	<dri-devel@lists.freedesktop.org>, <chris@chris-wilson.co.uk>,
	<grant.likely@arm.com>, <paulus@samba.org>, <mingo@kernel.org>,
	Jianxiong Gao <jxgao@google.com>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Saravana Kannan <saravanak@google.com>, <xypron.glpk@gmx.de>,
	"Rafael J . Wysocki" <rafael.j.wysocki@intel.com>,
	Bartosz Golaszewski <bgolaszewski@baylibre.com>,
	<bskeggs@redhat.com>, <linux-pci@vger.kernel.org>,
	<xen-devel@lists.xenproject.org>,
	Thierry Reding <treding@nvidia.com>,
	<intel-gfx@lists.freedesktop.org>, <matthew.auld@intel.com>,
	linux-devicetree <devicetree@vger.kernel.org>,
	Daniel Vetter <daniel@ffwll.ch>, <airlied@linux.ie>,
	<maarten.lankhorst@linux.intel.com>,
	<linuxppc-dev@lists.ozlabs.org>, <jani.nikula@linux.intel.com>,
	Nicolas Boichat <drinkcat@chromium.org>, <rodrigo.vivi@intel.com>,
	Bjorn Helgaas <bhelgaas@google.com>,
	Dan Williams <dan.j.williams@intel.com>,
	Andy Shevchenko <andriy.shevchenko@linux.intel.com>,
	Greg KH <gregkh@linuxfoundation.org>,
	Randy Dunlap <rdunlap@infradead.org>,
	lkml <linux-kernel@vger.kernel.org>,
	"list@263.net:IOMMU DRIVERS" <iommu@lists.linux-foundation.org>,
	Jim Quinlan <james.quinlan@broadcom.com>,
	Tom Lendacky <thomas.lendacky@amd.com>, <bauerman@linux.ibm.com>
Subject: Re: [PATCH v14 06/12] swiotlb: Use is_swiotlb_force_bounce for swiotlb data bouncing
Date: Thu, 24 Jun 2021 10:10:51 -0400	[thread overview]
Message-ID: <43ec9dd6-12c0-98ec-8d5d-b2904292721e@quicinc.com> (raw)
In-Reply-To: <20210624114829.GB1382@willie-the-truck>



On 6/24/2021 7:48 AM, Will Deacon wrote:
> Ok, diff below which attempts to tackle the offset issue I mentioned as
> well. Qian Cai -- please can you try with these changes?

This works fine.

> 
> Will
> 
> --->8
> 
> diff --git a/include/linux/swiotlb.h b/include/linux/swiotlb.h
> index 175b6c113ed8..39284ff2a6cd 100644
> --- a/include/linux/swiotlb.h
> +++ b/include/linux/swiotlb.h
> @@ -116,7 +116,9 @@ static inline bool is_swiotlb_buffer(struct device *dev, phys_addr_t paddr)
>  
>  static inline bool is_swiotlb_force_bounce(struct device *dev)
>  {
> -       return dev->dma_io_tlb_mem->force_bounce;
> +       struct io_tlb_mem *mem = dev->dma_io_tlb_mem;
> +
> +       return mem && mem->force_bounce;
>  }
>  
>  void __init swiotlb_exit(void);
> diff --git a/kernel/dma/swiotlb.c b/kernel/dma/swiotlb.c
> index 44be8258e27b..0ffbaae9fba2 100644
> --- a/kernel/dma/swiotlb.c
> +++ b/kernel/dma/swiotlb.c
> @@ -449,6 +449,7 @@ static int swiotlb_find_slots(struct device *dev, phys_addr_t orig_addr,
>                 dma_get_min_align_mask(dev) & ~(IO_TLB_SIZE - 1);
>         unsigned int nslots = nr_slots(alloc_size), stride;
>         unsigned int index, wrap, count = 0, i;
> +       unsigned int offset = swiotlb_align_offset(dev, orig_addr);
>         unsigned long flags;
>  
>         BUG_ON(!nslots);
> @@ -497,7 +498,7 @@ static int swiotlb_find_slots(struct device *dev, phys_addr_t orig_addr,
>         for (i = index; i < index + nslots; i++) {
>                 mem->slots[i].list = 0;
>                 mem->slots[i].alloc_size =
> -                       alloc_size - ((i - index) << IO_TLB_SHIFT);
> +                       alloc_size - (offset + ((i - index) << IO_TLB_SHIFT));
>         }
>         for (i = index - 1;
>              io_tlb_offset(i) != IO_TLB_SEGSIZE - 1 &&
> 

WARNING: multiple messages have this Message-ID (diff)
From: Qian Cai <quic_qiancai@quicinc.com>
To: Will Deacon <will@kernel.org>, Robin Murphy <robin.murphy@arm.com>
Cc: heikki.krogerus@linux.intel.com,
	linux-devicetree <devicetree@vger.kernel.org>,
	peterz@infradead.org, joonas.lahtinen@linux.intel.com,
	dri-devel@lists.freedesktop.org, chris@chris-wilson.co.uk,
	grant.likely@arm.com, paulus@samba.org,
	Frank Rowand <frowand.list@gmail.com>,
	mingo@kernel.org, Jianxiong Gao <jxgao@google.com>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Saravana Kannan <saravanak@google.com>,
	Joerg Roedel <joro@8bytes.org>,
	"Rafael J . Wysocki" <rafael.j.wysocki@intel.com>,
	Christoph Hellwig <hch@lst.de>,
	Bartosz Golaszewski <bgolaszewski@baylibre.com>,
	bskeggs@redhat.com, linux-pci@vger.kernel.org,
	xen-devel@lists.xenproject.org,
	Marek Szyprowski <m.szyprowski@samsung.com>,
	Dan Williams <dan.j.williams@intel.com>,
	matthew.auld@intel.com, Nicolas Boichat <drinkcat@chromium.org>,
	thomas.hellstrom@linux.intel.com,
	Jim Quinlan <james.quinlan@broadcom.com>,
	Konrad Rzeszutek Wilk <konrad.wilk@oracle.com>,
	intel-gfx@lists.freedesktop.org,
	maarten.lankhorst@linux.intel.com, jani.nikula@linux.intel.com,
	Rob Herring <robh+dt@kernel.org>,
	rodrigo.vivi@intel.com, Bjorn Helgaas <bhelgaas@google.com>,
	Claire Chang <tientzu@chromium.org>,
	boris.ostrovsky@oracle.com,
	Andy Shevchenko <andriy.shevchenko@linux.intel.com>,
	jgross@suse.com, airlied@linux.ie,
	Thierry Reding <treding@nvidia.com>,
	Greg KH <gregkh@linuxfoundation.org>,
	Randy Dunlap <rdunlap@infradead.org>,
	lkml <linux-kernel@vger.kernel.org>,
	"list@263.net:IOMMU DRIVERS" <iommu@lists.linux-foundation.org>,
	Daniel Vetter <daniel@ffwll.ch>,
	xypron.glpk@gmx.de, Tom Lendacky <thomas.lendacky@amd.com>,
	linuxppc-dev@lists.ozlabs.org, bauerman@linux.ibm.com
Subject: Re: [PATCH v14 06/12] swiotlb: Use is_swiotlb_force_bounce for swiotlb data bouncing
Date: Thu, 24 Jun 2021 10:10:51 -0400	[thread overview]
Message-ID: <43ec9dd6-12c0-98ec-8d5d-b2904292721e@quicinc.com> (raw)
In-Reply-To: <20210624114829.GB1382@willie-the-truck>



On 6/24/2021 7:48 AM, Will Deacon wrote:
> Ok, diff below which attempts to tackle the offset issue I mentioned as
> well. Qian Cai -- please can you try with these changes?

This works fine.

> 
> Will
> 
> --->8
> 
> diff --git a/include/linux/swiotlb.h b/include/linux/swiotlb.h
> index 175b6c113ed8..39284ff2a6cd 100644
> --- a/include/linux/swiotlb.h
> +++ b/include/linux/swiotlb.h
> @@ -116,7 +116,9 @@ static inline bool is_swiotlb_buffer(struct device *dev, phys_addr_t paddr)
>  
>  static inline bool is_swiotlb_force_bounce(struct device *dev)
>  {
> -       return dev->dma_io_tlb_mem->force_bounce;
> +       struct io_tlb_mem *mem = dev->dma_io_tlb_mem;
> +
> +       return mem && mem->force_bounce;
>  }
>  
>  void __init swiotlb_exit(void);
> diff --git a/kernel/dma/swiotlb.c b/kernel/dma/swiotlb.c
> index 44be8258e27b..0ffbaae9fba2 100644
> --- a/kernel/dma/swiotlb.c
> +++ b/kernel/dma/swiotlb.c
> @@ -449,6 +449,7 @@ static int swiotlb_find_slots(struct device *dev, phys_addr_t orig_addr,
>                 dma_get_min_align_mask(dev) & ~(IO_TLB_SIZE - 1);
>         unsigned int nslots = nr_slots(alloc_size), stride;
>         unsigned int index, wrap, count = 0, i;
> +       unsigned int offset = swiotlb_align_offset(dev, orig_addr);
>         unsigned long flags;
>  
>         BUG_ON(!nslots);
> @@ -497,7 +498,7 @@ static int swiotlb_find_slots(struct device *dev, phys_addr_t orig_addr,
>         for (i = index; i < index + nslots; i++) {
>                 mem->slots[i].list = 0;
>                 mem->slots[i].alloc_size =
> -                       alloc_size - ((i - index) << IO_TLB_SHIFT);
> +                       alloc_size - (offset + ((i - index) << IO_TLB_SHIFT));
>         }
>         for (i = index - 1;
>              io_tlb_offset(i) != IO_TLB_SEGSIZE - 1 &&
> 

WARNING: multiple messages have this Message-ID (diff)
From: Qian Cai <quic_qiancai@quicinc.com>
To: Will Deacon <will@kernel.org>, Robin Murphy <robin.murphy@arm.com>
Cc: heikki.krogerus@linux.intel.com,
	linux-devicetree <devicetree@vger.kernel.org>,
	peterz@infradead.org, benh@kernel.crashing.org,
	joonas.lahtinen@linux.intel.com, dri-devel@lists.freedesktop.org,
	chris@chris-wilson.co.uk, grant.likely@arm.com, paulus@samba.org,
	Frank Rowand <frowand.list@gmail.com>,
	mingo@kernel.org, Jianxiong Gao <jxgao@google.com>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Saravana Kannan <saravanak@google.com>,
	mpe@ellerman.id.au,
	"Rafael J . Wysocki" <rafael.j.wysocki@intel.com>,
	Christoph Hellwig <hch@lst.de>,
	Bartosz Golaszewski <bgolaszewski@baylibre.com>,
	bskeggs@redhat.com, linux-pci@vger.kernel.org,
	xen-devel@lists.xenproject.org,
	Dan Williams <dan.j.williams@intel.com>,
	matthew.auld@intel.com, Nicolas Boichat <drinkcat@chromium.org>,
	thomas.hellstrom@linux.intel.com,
	Jim Quinlan <james.quinlan@broadcom.com>,
	Konrad Rzeszutek Wilk <konrad.wilk@oracle.com>,
	intel-gfx@lists.freedesktop.org,
	maarten.lankhorst@linux.intel.com, jani.nikula@linux.intel.com,
	Rob Herring <robh+dt@kernel.org>,
	rodrigo.vivi@intel.com, Bjorn Helgaas <bhelgaas@google.com>,
	Claire Chang <tientzu@chromium.org>,
	boris.ostrovsky@oracle.com,
	Andy Shevchenko <andriy.shevchenko@linux.intel.com>,
	jgross@suse.com, airlied@linux.ie,
	Thierry Reding <treding@nvidia.com>,
	Greg KH <gregkh@linuxfoundation.org>,
	Randy Dunlap <rdunlap@infradead.org>,
	lkml <linux-kernel@vger.kernel.org>,
	"list@263.net:IOMMU DRIVERS" <iommu@lists.linux-foundation.org>,
	Daniel Vetter <daniel@ffwll.ch>,
	xypron.glpk@gmx.de, Tom Lendacky <thomas.lendacky@amd.com>,
	linuxppc-dev@lists.ozlabs.org, bauerman@linux.ibm.com
Subject: Re: [PATCH v14 06/12] swiotlb: Use is_swiotlb_force_bounce for swiotlb data bouncing
Date: Thu, 24 Jun 2021 10:10:51 -0400	[thread overview]
Message-ID: <43ec9dd6-12c0-98ec-8d5d-b2904292721e@quicinc.com> (raw)
In-Reply-To: <20210624114829.GB1382@willie-the-truck>



On 6/24/2021 7:48 AM, Will Deacon wrote:
> Ok, diff below which attempts to tackle the offset issue I mentioned as
> well. Qian Cai -- please can you try with these changes?

This works fine.

> 
> Will
> 
> --->8
> 
> diff --git a/include/linux/swiotlb.h b/include/linux/swiotlb.h
> index 175b6c113ed8..39284ff2a6cd 100644
> --- a/include/linux/swiotlb.h
> +++ b/include/linux/swiotlb.h
> @@ -116,7 +116,9 @@ static inline bool is_swiotlb_buffer(struct device *dev, phys_addr_t paddr)
>  
>  static inline bool is_swiotlb_force_bounce(struct device *dev)
>  {
> -       return dev->dma_io_tlb_mem->force_bounce;
> +       struct io_tlb_mem *mem = dev->dma_io_tlb_mem;
> +
> +       return mem && mem->force_bounce;
>  }
>  
>  void __init swiotlb_exit(void);
> diff --git a/kernel/dma/swiotlb.c b/kernel/dma/swiotlb.c
> index 44be8258e27b..0ffbaae9fba2 100644
> --- a/kernel/dma/swiotlb.c
> +++ b/kernel/dma/swiotlb.c
> @@ -449,6 +449,7 @@ static int swiotlb_find_slots(struct device *dev, phys_addr_t orig_addr,
>                 dma_get_min_align_mask(dev) & ~(IO_TLB_SIZE - 1);
>         unsigned int nslots = nr_slots(alloc_size), stride;
>         unsigned int index, wrap, count = 0, i;
> +       unsigned int offset = swiotlb_align_offset(dev, orig_addr);
>         unsigned long flags;
>  
>         BUG_ON(!nslots);
> @@ -497,7 +498,7 @@ static int swiotlb_find_slots(struct device *dev, phys_addr_t orig_addr,
>         for (i = index; i < index + nslots; i++) {
>                 mem->slots[i].list = 0;
>                 mem->slots[i].alloc_size =
> -                       alloc_size - ((i - index) << IO_TLB_SHIFT);
> +                       alloc_size - (offset + ((i - index) << IO_TLB_SHIFT));
>         }
>         for (i = index - 1;
>              io_tlb_offset(i) != IO_TLB_SEGSIZE - 1 &&
> 
_______________________________________________
iommu mailing list
iommu@lists.linux-foundation.org
https://lists.linuxfoundation.org/mailman/listinfo/iommu

WARNING: multiple messages have this Message-ID (diff)
From: Qian Cai <quic_qiancai@quicinc.com>
To: Will Deacon <will@kernel.org>, Robin Murphy <robin.murphy@arm.com>
Cc: heikki.krogerus@linux.intel.com,
	linux-devicetree <devicetree@vger.kernel.org>,
	peterz@infradead.org, dri-devel@lists.freedesktop.org,
	chris@chris-wilson.co.uk, grant.likely@arm.com, paulus@samba.org,
	Frank Rowand <frowand.list@gmail.com>,
	Christoph Hellwig <hch@lst.de>, Jianxiong Gao <jxgao@google.com>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Saravana Kannan <saravanak@google.com>,
	mpe@ellerman.id.au, Joerg Roedel <joro@8bytes.org>,
	"Rafael J . Wysocki" <rafael.j.wysocki@intel.com>,
	mingo@kernel.org, Bartosz Golaszewski <bgolaszewski@baylibre.com>,
	bskeggs@redhat.com, linux-pci@vger.kernel.org,
	xen-devel@lists.xenproject.org,
	Marek Szyprowski <m.szyprowski@samsung.com>,
	Dan Williams <dan.j.williams@intel.com>,
	matthew.auld@intel.com, Nicolas Boichat <drinkcat@chromium.org>,
	thomas.hellstrom@linux.intel.com,
	Jim Quinlan <james.quinlan@broadcom.com>,
	Konrad Rzeszutek Wilk <konrad.wilk@oracle.com>,
	intel-gfx@lists.freedesktop.org, Rob Herring <robh+dt@kernel.org>,
	rodrigo.vivi@intel.com, Bjorn Helgaas <bhelgaas@google.com>,
	Claire Chang <tientzu@chromium.org>,
	boris.ostrovsky@oracle.com,
	Andy Shevchenko <andriy.shevchenko@linux.intel.com>,
	jgross@suse.com, airlied@linux.ie,
	Thierry Reding <treding@nvidia.com>,
	Greg KH <gregkh@linuxfoundation.org>,
	Randy Dunlap <rdunlap@infradead.org>,
	lkml <linux-kernel@vger.kernel.org>,
	"list@263.net:IOMMU DRIVERS" <iommu@lists.linux-foundation.org>,
	xypron.glpk@gmx.de, Tom Lendacky <thomas.lendacky@amd.com>,
	linuxppc-dev@lists.ozlabs.org, bauerman@linux.ibm.com
Subject: Re: [PATCH v14 06/12] swiotlb: Use is_swiotlb_force_bounce for swiotlb data bouncing
Date: Thu, 24 Jun 2021 10:10:51 -0400	[thread overview]
Message-ID: <43ec9dd6-12c0-98ec-8d5d-b2904292721e@quicinc.com> (raw)
In-Reply-To: <20210624114829.GB1382@willie-the-truck>



On 6/24/2021 7:48 AM, Will Deacon wrote:
> Ok, diff below which attempts to tackle the offset issue I mentioned as
> well. Qian Cai -- please can you try with these changes?

This works fine.

> 
> Will
> 
> --->8
> 
> diff --git a/include/linux/swiotlb.h b/include/linux/swiotlb.h
> index 175b6c113ed8..39284ff2a6cd 100644
> --- a/include/linux/swiotlb.h
> +++ b/include/linux/swiotlb.h
> @@ -116,7 +116,9 @@ static inline bool is_swiotlb_buffer(struct device *dev, phys_addr_t paddr)
>  
>  static inline bool is_swiotlb_force_bounce(struct device *dev)
>  {
> -       return dev->dma_io_tlb_mem->force_bounce;
> +       struct io_tlb_mem *mem = dev->dma_io_tlb_mem;
> +
> +       return mem && mem->force_bounce;
>  }
>  
>  void __init swiotlb_exit(void);
> diff --git a/kernel/dma/swiotlb.c b/kernel/dma/swiotlb.c
> index 44be8258e27b..0ffbaae9fba2 100644
> --- a/kernel/dma/swiotlb.c
> +++ b/kernel/dma/swiotlb.c
> @@ -449,6 +449,7 @@ static int swiotlb_find_slots(struct device *dev, phys_addr_t orig_addr,
>                 dma_get_min_align_mask(dev) & ~(IO_TLB_SIZE - 1);
>         unsigned int nslots = nr_slots(alloc_size), stride;
>         unsigned int index, wrap, count = 0, i;
> +       unsigned int offset = swiotlb_align_offset(dev, orig_addr);
>         unsigned long flags;
>  
>         BUG_ON(!nslots);
> @@ -497,7 +498,7 @@ static int swiotlb_find_slots(struct device *dev, phys_addr_t orig_addr,
>         for (i = index; i < index + nslots; i++) {
>                 mem->slots[i].list = 0;
>                 mem->slots[i].alloc_size =
> -                       alloc_size - ((i - index) << IO_TLB_SHIFT);
> +                       alloc_size - (offset + ((i - index) << IO_TLB_SHIFT));
>         }
>         for (i = index - 1;
>              io_tlb_offset(i) != IO_TLB_SEGSIZE - 1 &&
> 

WARNING: multiple messages have this Message-ID (diff)
From: Qian Cai <quic_qiancai@quicinc.com>
To: Will Deacon <will@kernel.org>, Robin Murphy <robin.murphy@arm.com>
Cc: heikki.krogerus@linux.intel.com,
	linux-devicetree <devicetree@vger.kernel.org>,
	peterz@infradead.org, benh@kernel.crashing.org,
	dri-devel@lists.freedesktop.org, chris@chris-wilson.co.uk,
	grant.likely@arm.com, paulus@samba.org,
	Frank Rowand <frowand.list@gmail.com>,
	Christoph Hellwig <hch@lst.de>, Jianxiong Gao <jxgao@google.com>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Saravana Kannan <saravanak@google.com>,
	mpe@ellerman.id.au, Joerg Roedel <joro@8bytes.org>,
	"Rafael J . Wysocki" <rafael.j.wysocki@intel.com>,
	mingo@kernel.org, Bartosz Golaszewski <bgolaszewski@baylibre.com>,
	bskeggs@redhat.com, linux-pci@vger.kernel.org,
	xen-devel@lists.xenproject.org,
	Marek Szyprowski <m.szyprowski@samsung.com>,
	Dan Williams <dan.j.williams@intel.com>,
	matthew.auld@intel.com, Nicolas Boichat <drinkcat@chromium.org>,
	thomas.hellstrom@linux.intel.com,
	Jim Quinlan <james.quinlan@broadcom.com>,
	Konrad Rzeszutek Wilk <konrad.wilk@oracle.com>,
	intel-gfx@lists.freedesktop.org, Rob Herring <robh+dt@kernel.org>,
	Bjorn Helgaas <bhelgaas@google.com>,
	Claire Chang <tientzu@chromium.org>,
	boris.ostrovsky@oracle.com,
	Andy Shevchenko <andriy.shevchenko@linux.intel.com>,
	jgross@suse.com, airlied@linux.ie,
	Thierry Reding <treding@nvidia.com>,
	Greg KH <gregkh@linuxfoundation.org>,
	Randy Dunlap <rdunlap@infradead.org>,
	lkml <linux-kernel@vger.kernel.org>,
	"list@263.net:IOMMU DRIVERS" <iommu@lists.linux-foundation.org>,
	xypron.glpk@gmx.de, Tom Lendacky <thomas.lendacky@amd.com>,
	linuxppc-dev@lists.ozlabs.org, bauerman@linux.ibm.com
Subject: Re: [Intel-gfx] [PATCH v14 06/12] swiotlb: Use is_swiotlb_force_bounce for swiotlb data bouncing
Date: Thu, 24 Jun 2021 10:10:51 -0400	[thread overview]
Message-ID: <43ec9dd6-12c0-98ec-8d5d-b2904292721e@quicinc.com> (raw)
In-Reply-To: <20210624114829.GB1382@willie-the-truck>



On 6/24/2021 7:48 AM, Will Deacon wrote:
> Ok, diff below which attempts to tackle the offset issue I mentioned as
> well. Qian Cai -- please can you try with these changes?

This works fine.

> 
> Will
> 
> --->8
> 
> diff --git a/include/linux/swiotlb.h b/include/linux/swiotlb.h
> index 175b6c113ed8..39284ff2a6cd 100644
> --- a/include/linux/swiotlb.h
> +++ b/include/linux/swiotlb.h
> @@ -116,7 +116,9 @@ static inline bool is_swiotlb_buffer(struct device *dev, phys_addr_t paddr)
>  
>  static inline bool is_swiotlb_force_bounce(struct device *dev)
>  {
> -       return dev->dma_io_tlb_mem->force_bounce;
> +       struct io_tlb_mem *mem = dev->dma_io_tlb_mem;
> +
> +       return mem && mem->force_bounce;
>  }
>  
>  void __init swiotlb_exit(void);
> diff --git a/kernel/dma/swiotlb.c b/kernel/dma/swiotlb.c
> index 44be8258e27b..0ffbaae9fba2 100644
> --- a/kernel/dma/swiotlb.c
> +++ b/kernel/dma/swiotlb.c
> @@ -449,6 +449,7 @@ static int swiotlb_find_slots(struct device *dev, phys_addr_t orig_addr,
>                 dma_get_min_align_mask(dev) & ~(IO_TLB_SIZE - 1);
>         unsigned int nslots = nr_slots(alloc_size), stride;
>         unsigned int index, wrap, count = 0, i;
> +       unsigned int offset = swiotlb_align_offset(dev, orig_addr);
>         unsigned long flags;
>  
>         BUG_ON(!nslots);
> @@ -497,7 +498,7 @@ static int swiotlb_find_slots(struct device *dev, phys_addr_t orig_addr,
>         for (i = index; i < index + nslots; i++) {
>                 mem->slots[i].list = 0;
>                 mem->slots[i].alloc_size =
> -                       alloc_size - ((i - index) << IO_TLB_SHIFT);
> +                       alloc_size - (offset + ((i - index) << IO_TLB_SHIFT));
>         }
>         for (i = index - 1;
>              io_tlb_offset(i) != IO_TLB_SEGSIZE - 1 &&
> 
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx

  reply	other threads:[~2021-06-24 14:11 UTC|newest]

Thread overview: 150+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-06-19  3:40 [PATCH v14 00/12] Restricted DMA Claire Chang
2021-06-19  3:40 ` [Intel-gfx] " Claire Chang
2021-06-19  3:40 ` Claire Chang
2021-06-19  3:40 ` Claire Chang
2021-06-19  3:40 ` Claire Chang
2021-06-19  3:40 ` [PATCH v14 01/12] swiotlb: Refactor swiotlb init functions Claire Chang
2021-06-19  3:40   ` [Intel-gfx] " Claire Chang
2021-06-19  3:40   ` Claire Chang
2021-06-19  3:40   ` Claire Chang
2021-06-19  3:40   ` Claire Chang
2021-06-22 21:02   ` Stefano Stabellini
2021-06-22 21:02     ` Stefano Stabellini
2021-06-22 21:02     ` [Intel-gfx] " Stefano Stabellini
2021-06-22 21:02     ` Stefano Stabellini
2021-06-22 21:02     ` Stefano Stabellini
2021-06-22 21:02     ` Stefano Stabellini
2021-06-19  3:40 ` [PATCH v14 02/12] swiotlb: Refactor swiotlb_create_debugfs Claire Chang
2021-06-19  3:40   ` [Intel-gfx] " Claire Chang
2021-06-19  3:40   ` Claire Chang
2021-06-19  3:40   ` Claire Chang
2021-06-19  3:40   ` Claire Chang
2021-06-19  3:40 ` [PATCH v14 03/12] swiotlb: Set dev->dma_io_tlb_mem to the swiotlb pool used Claire Chang
2021-06-19  3:40   ` [Intel-gfx] " Claire Chang
2021-06-19  3:40   ` Claire Chang
2021-06-19  3:40   ` Claire Chang
2021-06-19  3:40   ` Claire Chang
2021-06-19  3:40 ` [PATCH v14 04/12] swiotlb: Update is_swiotlb_buffer to add a struct device argument Claire Chang
2021-06-19  3:40   ` [Intel-gfx] " Claire Chang
2021-06-19  3:40   ` Claire Chang
2021-06-19  3:40   ` Claire Chang
2021-06-19  3:40   ` Claire Chang
2021-06-19  3:40 ` [PATCH v14 05/12] swiotlb: Update is_swiotlb_active " Claire Chang
2021-06-19  3:40   ` [Intel-gfx] " Claire Chang
2021-06-19  3:40   ` Claire Chang
2021-06-19  3:40   ` Claire Chang
2021-06-19  3:40   ` Claire Chang
2021-06-19  3:40 ` [PATCH v14 06/12] swiotlb: Use is_swiotlb_force_bounce for swiotlb data bouncing Claire Chang
2021-06-19  3:40   ` [Intel-gfx] " Claire Chang
2021-06-19  3:40   ` Claire Chang
2021-06-19  3:40   ` Claire Chang
2021-06-19  3:40   ` Claire Chang
2021-06-23 16:39   ` Qian Cai
2021-06-23 16:39     ` [Intel-gfx] " Qian Cai
2021-06-23 16:39     ` Qian Cai
2021-06-23 16:39     ` Qian Cai
2021-06-23 16:39     ` Qian Cai
2021-06-23 18:37     ` Will Deacon
2021-06-23 18:37       ` [Intel-gfx] " Will Deacon
2021-06-23 18:37       ` Will Deacon
2021-06-23 18:37       ` Will Deacon
2021-06-23 18:37       ` Will Deacon
2021-06-23 18:44       ` Qian Cai
2021-06-23 18:44         ` [Intel-gfx] " Qian Cai
2021-06-23 18:44         ` Qian Cai
2021-06-23 18:44         ` Qian Cai
2021-06-23 18:44         ` Qian Cai
2021-06-24  5:43         ` Christoph Hellwig
2021-06-24  5:43           ` [Intel-gfx] " Christoph Hellwig
2021-06-24  5:43           ` Christoph Hellwig
2021-06-24  5:43           ` Christoph Hellwig
2021-06-24  6:05           ` Claire Chang
2021-06-24  6:05             ` Claire Chang
2021-06-24  6:05             ` [Intel-gfx] " Claire Chang
2021-06-24  6:05             ` Claire Chang
2021-06-24  6:05             ` Claire Chang
2021-06-24  6:05             ` Claire Chang
2021-06-24 11:14             ` Robin Murphy
2021-06-24 11:14               ` [Intel-gfx] " Robin Murphy
2021-06-24 11:14               ` Robin Murphy
2021-06-24 11:14               ` Robin Murphy
2021-06-24 11:14               ` Robin Murphy
2021-06-24 11:18               ` Will Deacon
2021-06-24 11:18                 ` [Intel-gfx] " Will Deacon
2021-06-24 11:18                 ` Will Deacon
2021-06-24 11:18                 ` Will Deacon
2021-06-24 11:18                 ` Will Deacon
2021-06-24 11:34                 ` Robin Murphy
2021-06-24 11:34                   ` [Intel-gfx] " Robin Murphy
2021-06-24 11:34                   ` Robin Murphy
2021-06-24 11:34                   ` Robin Murphy
2021-06-24 11:34                   ` Robin Murphy
2021-06-24 11:48                   ` Will Deacon
2021-06-24 11:48                     ` [Intel-gfx] " Will Deacon
2021-06-24 11:48                     ` Will Deacon
2021-06-24 11:48                     ` Will Deacon
2021-06-24 11:48                     ` Will Deacon
2021-06-24 14:10                     ` Qian Cai [this message]
2021-06-24 14:10                       ` [Intel-gfx] " Qian Cai
2021-06-24 14:10                       ` Qian Cai
2021-06-24 14:10                       ` Qian Cai
2021-06-24 14:10                       ` Qian Cai
2021-06-24 15:55                       ` Konrad Rzeszutek Wilk
2021-06-24 15:55                         ` [Intel-gfx] " Konrad Rzeszutek Wilk
2021-06-24 15:55                         ` Konrad Rzeszutek Wilk
2021-06-24 15:55                         ` Konrad Rzeszutek Wilk
2021-06-24 15:55                         ` Konrad Rzeszutek Wilk
2021-06-24 15:58                         ` Claire Chang
2021-06-24 15:58                           ` Claire Chang
2021-06-24 15:58                           ` [Intel-gfx] " Claire Chang
2021-06-24 15:58                           ` Claire Chang
2021-06-24 15:58                           ` Claire Chang
2021-06-24 15:58                           ` Claire Chang
2021-06-24 19:20                           ` Konrad Rzeszutek Wilk
2021-06-24 19:20                             ` [Intel-gfx] " Konrad Rzeszutek Wilk
2021-06-24 19:20                             ` Konrad Rzeszutek Wilk
2021-06-24 19:20                             ` Konrad Rzeszutek Wilk
2021-06-24 19:20                             ` Konrad Rzeszutek Wilk
2021-06-19  3:40 ` [PATCH v14 07/12] swiotlb: Move alloc_size to swiotlb_find_slots Claire Chang
2021-06-19  3:40   ` [Intel-gfx] " Claire Chang
2021-06-19  3:40   ` Claire Chang
2021-06-19  3:40   ` Claire Chang
2021-06-19  3:40   ` Claire Chang
2021-06-19  3:40 ` [PATCH v14 08/12] swiotlb: Refactor swiotlb_tbl_unmap_single Claire Chang
2021-06-19  3:40   ` [Intel-gfx] " Claire Chang
2021-06-19  3:40   ` Claire Chang
2021-06-19  3:40   ` Claire Chang
2021-06-19  3:40   ` Claire Chang
2021-06-19  3:40 ` [PATCH v14 09/12] swiotlb: Add restricted DMA alloc/free support Claire Chang
2021-06-19  3:40   ` [Intel-gfx] " Claire Chang
2021-06-19  3:40   ` Claire Chang
2021-06-19  3:40   ` Claire Chang
2021-06-19  3:40   ` Claire Chang
2021-06-19  3:40 ` [PATCH v14 10/12] swiotlb: Add restricted DMA pool initialization Claire Chang
2021-06-19  3:40   ` [Intel-gfx] " Claire Chang
2021-06-19  3:40   ` Claire Chang
2021-06-19  3:40   ` Claire Chang
2021-06-19  3:40   ` Claire Chang
2021-06-19  3:40 ` [PATCH v14 11/12] dt-bindings: of: Add restricted DMA pool Claire Chang
2021-06-19  3:40   ` [Intel-gfx] " Claire Chang
2021-06-19  3:40   ` Claire Chang
2021-06-19  3:40   ` Claire Chang
2021-06-19  3:40   ` Claire Chang
2021-06-19  3:40 ` [PATCH v14 12/12] of: Add plumbing for " Claire Chang
2021-06-19  3:40   ` [Intel-gfx] " Claire Chang
2021-06-19  3:40   ` Claire Chang
2021-06-19  3:40   ` Claire Chang
2021-06-19  3:40   ` Claire Chang
2021-06-19  4:05 ` [Intel-gfx] ✗ Fi.CI.BUILD: failure for Restricted DMA Patchwork
2021-06-23  8:38 ` [PATCH v14 00/12] " Konrad Rzeszutek Wilk
2021-06-23  8:38   ` [Intel-gfx] " Konrad Rzeszutek Wilk
2021-06-23  8:38   ` Konrad Rzeszutek Wilk
2021-06-23  8:38   ` Konrad Rzeszutek Wilk
2021-06-23  8:38   ` Konrad Rzeszutek Wilk
2021-06-23  9:01   ` Claire Chang
2021-06-23  9:01     ` Claire Chang
2021-06-23  9:01     ` [Intel-gfx] " Claire Chang
2021-06-23  9:01     ` Claire Chang
2021-06-23  9:01     ` Claire Chang
2021-06-23  9:01     ` Claire Chang
2021-06-28 16:46 ` [Intel-gfx] ✗ Fi.CI.BUILD: failure for Restricted DMA (rev2) Patchwork

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=43ec9dd6-12c0-98ec-8d5d-b2904292721e@quicinc.com \
    --to=quic_qiancai@quicinc.com \
    --cc=airlied@linux.ie \
    --cc=andriy.shevchenko@linux.intel.com \
    --cc=bauerman@linux.ibm.com \
    --cc=benh@kernel.crashing.org \
    --cc=bgolaszewski@baylibre.com \
    --cc=bhelgaas@google.com \
    --cc=boris.ostrovsky@oracle.com \
    --cc=bskeggs@redhat.com \
    --cc=chris@chris-wilson.co.uk \
    --cc=dan.j.williams@intel.com \
    --cc=daniel@ffwll.ch \
    --cc=devicetree@vger.kernel.org \
    --cc=dri-devel@lists.freedesktop.org \
    --cc=drinkcat@chromium.org \
    --cc=frowand.list@gmail.com \
    --cc=grant.likely@arm.com \
    --cc=gregkh@linuxfoundation.org \
    --cc=hch@lst.de \
    --cc=heikki.krogerus@linux.intel.com \
    --cc=intel-gfx@lists.freedesktop.org \
    --cc=iommu@lists.linux-foundation.org \
    --cc=james.quinlan@broadcom.com \
    --cc=jani.nikula@linux.intel.com \
    --cc=jgross@suse.com \
    --cc=joonas.lahtinen@linux.intel.com \
    --cc=joro@8bytes.org \
    --cc=jxgao@google.com \
    --cc=konrad.wilk@oracle.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-pci@vger.kernel.org \
    --cc=linuxppc-dev@lists.ozlabs.org \
    --cc=m.szyprowski@samsung.com \
    --cc=maarten.lankhorst@linux.intel.com \
    --cc=matthew.auld@intel.com \
    --cc=mingo@kernel.org \
    --cc=mpe@ellerman.id.au \
    --cc=paulus@samba.org \
    --cc=peterz@infradead.org \
    --cc=rafael.j.wysocki@intel.com \
    --cc=rdunlap@infradead.org \
    --cc=robh+dt@kernel.org \
    --cc=robin.murphy@arm.com \
    --cc=rodrigo.vivi@intel.com \
    --cc=saravanak@google.com \
    --cc=sstabellini@kernel.org \
    --cc=thomas.hellstrom@linux.intel.com \
    --cc=thomas.lendacky@amd.com \
    --cc=tientzu@chromium.org \
    --cc=treding@nvidia.com \
    --cc=will@kernel.org \
    --cc=xen-devel@lists.xenproject.org \
    --cc=xypron.glpk@gmx.de \
    /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.