From: Tvrtko Ursulin <tvrtko.ursulin@linux.intel.com>
To: Tom Murphy <murphyt7@tcd.ie>
Cc: kvm@vger.kernel.org, David Airlie <airlied@linux.ie>,
dri-devel@lists.freedesktop.org,
Matthias Brugger <matthias.bgg@gmail.com>,
Julien Grall <julien.grall@arm.com>,
Will Deacon <will@kernel.org>,
Jean-Philippe Brucker <jean-philippe@linaro.org>,
linux-samsung-soc@vger.kernel.org, Marc Zyngier <maz@kernel.org>,
Krzysztof Kozlowski <krzk@kernel.org>,
Jonathan Hunter <jonathanh@nvidia.com>,
Christoph Hellwig <hch@infradead.org>,
linux-rockchip@lists.infradead.org,
Andy Gross <agross@kernel.org>,
Gerald Schaefer <gerald.schaefer@de.ibm.com>,
linux-s390@vger.kernel.org, linux-arm-msm@vger.kernel.org,
intel-gfx@lists.freedesktop.org,
Robin Murphy <robin.murphy@arm.com>,
linux-mediatek@lists.infradead.org, linux-tegra@vger.kernel.org,
Thomas Gleixner <tglx@linutronix.de>,
virtualization@lists.linux-foundation.org,
linux-arm-kernel@lists.infradead.org,
David Woodhouse <dwmw2@infradead.org>,
Cornelia Huck <cohuck@redhat.com>,
Linux Kernel Mailing List <linux-kernel@vger.kernel.org>,
iommu@lists.linux-foundation.org, Kukjin Kim <kgene@kernel.org>,
Logan Gunthorpe <logang@deltatee.com>
Subject: Re: [Intel-gfx] [PATCH 0/8] Convert the intel iommu driver to the dma-iommu api
Date: Wed, 9 Sep 2020 10:16:38 +0100 [thread overview]
Message-ID: <7106602a-9964-851e-9c4e-d8acf4033b89@linux.intel.com> (raw)
In-Reply-To: <CALQxJut5c=cWdi+SVkN3JnbkhPSYmLkOyRUhduL-UJ9gyKn9Ow@mail.gmail.com>
On 08/09/2020 23:43, Tom Murphy wrote:
> On Tue, 8 Sep 2020 at 16:56, Tvrtko Ursulin
> <tvrtko.ursulin@linux.intel.com> wrote:
>>
>>
>> On 08/09/2020 16:44, Logan Gunthorpe wrote:
>>> On 2020-09-08 9:28 a.m., Tvrtko Ursulin wrote:
>>>>>
>>>>> diff --git a/drivers/gpu/drm/i915/i915_scatterlist.h
>>>>> b/drivers/gpu/drm/i915/i915
>>>>> index b7b59328cb76..9367ac801f0c 100644
>>>>> --- a/drivers/gpu/drm/i915/i915_scatterlist.h
>>>>> +++ b/drivers/gpu/drm/i915/i915_scatterlist.h
>>>>> @@ -27,13 +27,19 @@ static __always_inline struct sgt_iter {
>>>>> } __sgt_iter(struct scatterlist *sgl, bool dma) {
>>>>> struct sgt_iter s = { .sgp = sgl };
>>>>>
>>>>> + if (sgl && !sg_dma_len(s.sgp))
>>>>
>>>> I'd extend the condition to be, just to be safe:
>>>> if (dma && sgl && !sg_dma_len(s.sgp))
>>>>
>>>
>>> Right, good catch, that's definitely necessary.
>>>
>>>>> + s.sgp = NULL;
>>>>> +
>>>>> if (s.sgp) {
>>>>> s.max = s.curr = s.sgp->offset;
>>>>> - s.max += s.sgp->length;
>>>>> - if (dma)
>>>>> +
>>>>> + if (dma) {
>>>>> + s.max += sg_dma_len(s.sgp);
>>>>> s.dma = sg_dma_address(s.sgp);
>>>>> - else
>>>>> + } else {
>>>>> + s.max += s.sgp->length;
>>>>> s.pfn = page_to_pfn(sg_page(s.sgp));
>>>>> + }
>>>>
>>>> Otherwise has this been tested or alternatively how to test it? (How to
>>>> repro the issue.)
>>>
>>> It has not been tested. To test it, you need Tom's patch set without the
>>> last "DO NOT MERGE" patch:
>>>
>>> https://lkml.kernel.org/lkml/20200907070035.GA25114@infradead.org/T/
>>
>> Tom, do you have a branch somewhere I could pull from? (Just being lazy
>> about downloading a bunch of messages from the archives.)
>
> I don't unfortunately. I'm working locally with poor internet.
>
>>
>> What GPU is in your Lenovo x1 carbon 5th generation and what
>> graphical/desktop setup I need to repro?
>
>
> Is this enough info?:
>
> $ lspci -vnn | grep VGA -A 12
> 00:02.0 VGA compatible controller [0300]: Intel Corporation HD
> Graphics 620 [8086:5916] (rev 02) (prog-if 00 [VGA controller])
> Subsystem: Lenovo ThinkPad X1 Carbon 5th Gen [17aa:224f]
> Flags: bus master, fast devsel, latency 0, IRQ 148
> Memory at eb000000 (64-bit, non-prefetchable) [size=16M]
> Memory at 60000000 (64-bit, prefetchable) [size=256M]
> I/O ports at e000 [size=64]
> [virtual] Expansion ROM at 000c0000 [disabled] [size=128K]
> Capabilities: [40] Vendor Specific Information: Len=0c <?>
> Capabilities: [70] Express Root Complex Integrated Endpoint, MSI 00
> Capabilities: [ac] MSI: Enable+ Count=1/1 Maskable- 64bit-
> Capabilities: [d0] Power Management version 2
> Capabilities: [100] Process Address Space ID (PASID)
> Capabilities: [200] Address Translation Service (ATS)
Works for a start. What about the steps to repro? Any desktop
environment and it is just visual corruption, no hangs/stalls or such?
I've submitted a series consisting of what I understood are the patches
needed to repro the issue to our automated CI here:
https://patchwork.freedesktop.org/series/81489/
So will see if it will catch something, or more targeted testing will be
required. Hopefully it does trip over in which case I can add the patch
suggested by Logan on top and see if that fixes it. Or I'll need to
write a new test case.
If you could glance over my series to check I identified the patches
correctly it would be appreciated.
Regards,
Tvrtko
_______________________________________________
iommu mailing list
iommu@lists.linux-foundation.org
https://lists.linuxfoundation.org/mailman/listinfo/iommu
next prev parent reply other threads:[~2020-09-09 9:17 UTC|newest]
Thread overview: 38+ messages / expand[flat|nested] mbox.gz Atom feed top
2019-12-21 15:03 [PATCH 0/8] Convert the intel iommu driver to the dma-iommu api Tom Murphy
2019-12-21 15:03 ` [PATCH 1/8] iommu/vt-d: clean up 32bit si_domain assignment Tom Murphy
2019-12-21 23:46 ` Arvind Sankar
2019-12-23 3:00 ` Lu Baolu
2019-12-21 15:03 ` [PATCH 2/8] iommu/vt-d: Use default dma_direct_* mapping functions for direct mapped devices Tom Murphy
2019-12-21 15:03 ` [PATCH 3/8] iommu/vt-d: Remove IOVA handling code from non-dma_ops path Tom Murphy
2020-03-20 6:30 ` Tom Murphy
2020-03-20 7:06 ` Lu Baolu
2019-12-21 15:03 ` [PATCH 4/8] iommu: Handle freelists when using deferred flushing in iommu drivers Tom Murphy
2019-12-21 15:03 ` [PATCH 5/8] iommu: Add iommu_dma_free_cpu_cached_iovas function Tom Murphy
2019-12-21 15:03 ` [PATCH 6/8] iommu: allow the dma-iommu api to use bounce buffers Tom Murphy
2019-12-24 10:20 ` kbuild test robot
2019-12-21 15:03 ` [PATCH 7/8] iommu/vt-d: Convert intel iommu driver to the iommu ops Tom Murphy
2019-12-21 15:04 ` [PATCH 8/8] DO NOT MERGE: iommu: disable list appending in dma-iommu Tom Murphy
2019-12-23 10:37 ` [PATCH 0/8] Convert the intel iommu driver to the dma-iommu api Jani Nikula
2019-12-23 11:29 ` Robin Murphy
2019-12-23 11:41 ` Jani Nikula
2020-03-20 6:28 ` Tom Murphy
2020-05-29 0:00 ` Logan Gunthorpe
2020-05-29 12:45 ` Christoph Hellwig
2020-05-29 19:05 ` Logan Gunthorpe
2020-05-29 21:11 ` Marek Szyprowski
2020-05-29 21:21 ` Logan Gunthorpe
2020-08-24 0:04 ` Tom Murphy
2020-08-26 18:26 ` Alex Deucher
2020-08-27 21:36 ` Logan Gunthorpe
2020-08-27 23:34 ` Tom Murphy
2020-09-03 20:26 ` Tom Murphy
2020-09-08 15:28 ` [Intel-gfx] " Tvrtko Ursulin
2020-09-08 15:44 ` Logan Gunthorpe
2020-09-08 15:56 ` Tvrtko Ursulin
2020-09-08 22:43 ` Tom Murphy
2020-09-09 9:16 ` Tvrtko Ursulin [this message]
2020-09-09 12:55 ` Tvrtko Ursulin
2020-09-10 13:33 ` Tom Murphy
2020-09-10 13:34 ` Tom Murphy
2020-08-26 18:14 ` Robin Murphy
2020-08-26 18:23 ` Tom Murphy
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=7106602a-9964-851e-9c4e-d8acf4033b89@linux.intel.com \
--to=tvrtko.ursulin@linux.intel.com \
--cc=agross@kernel.org \
--cc=airlied@linux.ie \
--cc=cohuck@redhat.com \
--cc=dri-devel@lists.freedesktop.org \
--cc=dwmw2@infradead.org \
--cc=gerald.schaefer@de.ibm.com \
--cc=hch@infradead.org \
--cc=intel-gfx@lists.freedesktop.org \
--cc=iommu@lists.linux-foundation.org \
--cc=jean-philippe@linaro.org \
--cc=jonathanh@nvidia.com \
--cc=julien.grall@arm.com \
--cc=kgene@kernel.org \
--cc=krzk@kernel.org \
--cc=kvm@vger.kernel.org \
--cc=linux-arm-kernel@lists.infradead.org \
--cc=linux-arm-msm@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-mediatek@lists.infradead.org \
--cc=linux-rockchip@lists.infradead.org \
--cc=linux-s390@vger.kernel.org \
--cc=linux-samsung-soc@vger.kernel.org \
--cc=linux-tegra@vger.kernel.org \
--cc=logang@deltatee.com \
--cc=matthias.bgg@gmail.com \
--cc=maz@kernel.org \
--cc=murphyt7@tcd.ie \
--cc=robin.murphy@arm.com \
--cc=tglx@linutronix.de \
--cc=virtualization@lists.linux-foundation.org \
--cc=will@kernel.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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).