[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <CADChb=mw2YUTJXZnFbeXhVThuuQgFofQybzmh=foC71UT=b1Qw@mail.gmail.com>
Date: Fri, 22 Feb 2019 10:10:58 -0800
From: Jis Ben <jisben@...gle.com>
To: James Dong <xmdong@...gle.com>
Cc: Lu Baolu <baolu.lu@...ux.intel.com>,
David Woodhouse <dwmw2@...radead.org>,
Joerg Roedel <joro@...tes.org>,
iommu@...ts.linux-foundation.org, linux-kernel@...r.kernel.org
Subject: Re: [PATCH] iommu/vt-d: Handle hotplug devices' default identity
mapping setting
An NVMe device configured in static identity mapping should also cause
this error when removed and rescanned. Essentially, a device that does
a DMA when its driver inits, or one that you can force a DMA from.
-Jis
On Fri, Feb 22, 2019 at 12:28 AM James Dong <xmdong@...gle.com> wrote:
>
> Baolu:
>
> The reproduction depends on devices. HW passthrough PCIe devices with default
> identity map could have the issue. Make sure that messages like following came
> out in dmesg and their mapping does not change after booting:
> [ 10.167809] DMAR: Hardware identity mapping for device 0000:30:00.0
> [ 10.167823] DMAR: Hardware identity mapping for device 0000:30:00.1
>
> Devices which make following true could also be used for the experiment:
> > static int iommu_should_identity_map(struct device *dev, int startup)
> > {
> > if ((iommu_identity_mapping & IDENTMAP_AZALIA) && IS_AZALIA(pdev))
> > return 1;
> > if ((iommu_identity_mapping & IDENTMAP_GFX) && IS_GFX_DEVICE(pdev))
> > return 1;
>
> Once they are up, remove them first by following command:
> echo 1 > /sys/bus/pci/devices/0000\:03\:00.1/remove
>
> Then trigger the hotplug device rescanning:
> echo 1 > /sys/bus/pci/rescan
>
> To provide an example of specific devices on the market, I need to try out.
> Or, if it is fine with you, forcing a PCIe NIC card to be default hardware
> passthrough by changing the intel-iommu.c is another easy way to reproduce
> this issue.
>
> Best Regards,
> James
Powered by blists - more mailing lists