[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <1560272102.5154.1.camel@lca.pw>
Date: Tue, 11 Jun 2019 12:55:02 -0400
From: Qian Cai <cai@....pw>
To: Lu Baolu <baolu.lu@...ux.intel.com>,
Joerg Roedel <joro@...tes.org>,
David Woodhouse <dwmw2@...radead.org>
Cc: ashok.raj@...el.com, jacob.jun.pan@...el.com, kevin.tian@...el.com,
sai.praneeth.prakhya@...el.com, iommu@...ts.linux-foundation.org,
linux-kernel@...r.kernel.org
Subject: Re: [PATCH 0/6] iommu/vt-d: Fixes and cleanups for linux-next
On Sun, 2019-06-09 at 10:37 +0800, Lu Baolu wrote:
> Hi Joerg,
>
> This series includes several fixes and cleanups after delegating
> DMA domain to generic iommu. Please review and consider them for
> linux-next.
>
> Best regards,
> Baolu
>
> Lu Baolu (5):
> iommu/vt-d: Don't return error when device gets right domain
> iommu/vt-d: Set domain type for a private domain
> iommu/vt-d: Don't enable iommu's which have been ignored
> iommu/vt-d: Fix suspicious RCU usage in probe_acpi_namespace_devices()
> iommu/vt-d: Consolidate domain_init() to avoid duplication
>
> Sai Praneeth Prakhya (1):
> iommu/vt-d: Cleanup after delegating DMA domain to generic iommu
>
> drivers/iommu/intel-iommu.c | 210 +++++++++---------------------------
> 1 file changed, 53 insertions(+), 157 deletions(-)
>
BTW, the linux-next commit "iommu/vt-d: Expose ISA direct mapping region via
iommu_get_resv_regions" [1] also introduced a memory leak below, as it forgets
to ask intel_iommu_put_resv_regions() to call kfree() when
CONFIG_INTEL_IOMMU_FLOPPY_WA=y.
[1] https://lore.kernel.org/patchwork/patch/1078963/
unreferenced object 0xffff88912ef789c8 (size 64):
comm "swapper/0", pid 1, jiffies 4294946232 (age 5399.530s)
hex dump (first 32 bytes):
48 83 f7 2e 91 88 ff ff 30 fa e3 00 82 88 ff ff H.......0.......
00 00 00 00 00 00 00 00 00 00 00 01 00 00 00 00 ................
backtrace:
[<00000000d267f4be>] kmem_cache_alloc_trace+0x266/0x380
[<00000000d383d15b>] iommu_alloc_resv_region+0x40/0xb0
[<00000000db8be31b>] intel_iommu_get_resv_regions+0x25e/0x2d0
[<0000000021fbc6c3>] iommu_group_create_direct_mappings+0x159/0x3d0
[<0000000022259268>] iommu_group_add_device+0x17b/0x4f0
[<0000000028b91093>] iommu_group_get_for_dev+0x153/0x460
[<00000000577c33b4>] intel_iommu_add_device+0xc4/0x210
[<00000000587b7492>] iommu_probe_device+0x63/0x80
[<000000004aa997d1>] add_iommu_group+0xe/0x20
[<00000000c93a9cd6>] bus_for_each_dev+0xf0/0x150
[<00000000a2e5f0cb>] bus_set_iommu+0xc6/0x100
[<00000000dbad5db0>] intel_iommu_init+0x682/0xb0a
[<00000000226f7444>] pci_iommu_init+0x26/0x62
[<000000002d8694f5>] do_one_initcall+0xe5/0x3ea
[<000000004bc60101>] kernel_init_freeable+0x5ad/0x640
[<0000000091b0bad6>] kernel_init+0x11/0x138
Powered by blists - more mailing lists