From: Konrad Rzeszutek Wilk <konrad.wilk@oracle•com>
To: Qian Cai <quic_qiancai@quicinc•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,
Will Deacon <will@kernel•org>,
mingo@kernel•org, Jianxiong Gao <jxgao@google•com>,
Stefano Stabellini <sstabellini@kernel•org>,
Frank Rowand <frowand.list@gmail•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>,
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>,
Saravana Kannan <saravanak@google•com>,
linuxppc-dev@lists•ozlabs.org,
Randy Dunlap <rdunlap@infradead•org>,
Greg KH <gregkh@linuxfoundation•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>,
Robin Murphy <robin.murphy@arm•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 11:55:19 -0400 [thread overview]
Message-ID: <YNSq56zyJ7EYdTcI@char.us.oracle.com> (raw)
In-Reply-To: <43ec9dd6-12c0-98ec-8d5d-b2904292721e@quicinc.com>
On Thu, Jun 24, 2021 at 10:10:51AM -0400, Qian Cai wrote:
>
>
> 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.
Cool. Let me squash this patch in #6 and rebase the rest of them.
Claire, could you check the devel/for-linus-5.14 say by end of today to
double check that I didn't mess anything up please?
Will,
Thank you for generating the fix! I am going to run it on x86 and Xen
to make sure all is good (granted last time I ran devel/for-linus-5.14
on that setup I didn't see any errors so I need to double check
I didn't do something silly like run a wrong kernel).
>
> >
> > 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 &&
> >
next prev parent reply other threads:[~2021-06-24 15:59 UTC|newest]
Thread overview: 29+ 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 ` [PATCH v14 01/12] swiotlb: Refactor swiotlb init functions Claire Chang
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 ` [PATCH v14 03/12] swiotlb: Set dev->dma_io_tlb_mem to the swiotlb pool used 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 ` [PATCH v14 05/12] swiotlb: Update is_swiotlb_active " 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-23 16:39 ` Qian Cai
2021-06-23 18:37 ` Will Deacon
2021-06-23 18:44 ` Qian Cai
2021-06-24 5:43 ` Christoph Hellwig
2021-06-24 6:05 ` Claire Chang
2021-06-24 11:14 ` Robin Murphy
2021-06-24 11:18 ` Will Deacon
2021-06-24 11:34 ` Robin Murphy
2021-06-24 11:48 ` Will Deacon
2021-06-24 14:10 ` Qian Cai
2021-06-24 15:55 ` Konrad Rzeszutek Wilk [this message]
2021-06-24 15:58 ` Claire Chang
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 ` [PATCH v14 08/12] swiotlb: Refactor swiotlb_tbl_unmap_single 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 ` [PATCH v14 10/12] swiotlb: Add restricted DMA pool initialization 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 ` [PATCH v14 12/12] of: Add plumbing for " Claire Chang
2021-06-23 8:38 ` [PATCH v14 00/12] Restricted DMA Konrad Rzeszutek Wilk
2021-06-23 9:01 ` Claire Chang
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=YNSq56zyJ7EYdTcI@char.us.oracle.com \
--to=konrad.wilk@oracle$(echo .)com \
--cc=airlied@linux$(echo .)ie \
--cc=andriy.shevchenko@linux$(echo .)intel.com \
--cc=bauerman@linux$(echo .)ibm.com \
--cc=bgolaszewski@baylibre$(echo .)com \
--cc=bhelgaas@google$(echo .)com \
--cc=boris.ostrovsky@oracle$(echo .)com \
--cc=bskeggs@redhat$(echo .)com \
--cc=chris@chris-wilson$(echo .)co.uk \
--cc=dan.j.williams@intel$(echo .)com \
--cc=daniel@ffwll$(echo .)ch \
--cc=devicetree@vger$(echo .)kernel.org \
--cc=dri-devel@lists$(echo .)freedesktop.org \
--cc=drinkcat@chromium$(echo .)org \
--cc=frowand.list@gmail$(echo .)com \
--cc=grant.likely@arm$(echo .)com \
--cc=gregkh@linuxfoundation$(echo .)org \
--cc=hch@lst$(echo .)de \
--cc=heikki.krogerus@linux$(echo .)intel.com \
--cc=intel-gfx@lists$(echo .)freedesktop.org \
--cc=iommu@lists$(echo .)linux-foundation.org \
--cc=james.quinlan@broadcom$(echo .)com \
--cc=jani.nikula@linux$(echo .)intel.com \
--cc=jgross@suse$(echo .)com \
--cc=joonas.lahtinen@linux$(echo .)intel.com \
--cc=joro@8bytes$(echo .)org \
--cc=jxgao@google$(echo .)com \
--cc=linux-kernel@vger$(echo .)kernel.org \
--cc=linux-pci@vger$(echo .)kernel.org \
--cc=linuxppc-dev@lists$(echo .)ozlabs.org \
--cc=m.szyprowski@samsung$(echo .)com \
--cc=maarten.lankhorst@linux$(echo .)intel.com \
--cc=matthew.auld@intel$(echo .)com \
--cc=mingo@kernel$(echo .)org \
--cc=paulus@samba$(echo .)org \
--cc=peterz@infradead$(echo .)org \
--cc=quic_qiancai@quicinc$(echo .)com \
--cc=rafael.j.wysocki@intel$(echo .)com \
--cc=rdunlap@infradead$(echo .)org \
--cc=robh+dt@kernel$(echo .)org \
--cc=robin.murphy@arm$(echo .)com \
--cc=rodrigo.vivi@intel$(echo .)com \
--cc=saravanak@google$(echo .)com \
--cc=sstabellini@kernel$(echo .)org \
--cc=thomas.hellstrom@linux$(echo .)intel.com \
--cc=thomas.lendacky@amd$(echo .)com \
--cc=tientzu@chromium$(echo .)org \
--cc=treding@nvidia$(echo .)com \
--cc=will@kernel$(echo .)org \
--cc=xen-devel@lists$(echo .)xenproject.org \
--cc=xypron.glpk@gmx$(echo .)de \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
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