lkml.org 
[lkml]   [2019]   [Jun]   [1]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    From
    Subject[PATCH AUTOSEL 4.4 19/56] iommu/vt-d: Set intel_iommu_gfx_mapped correctly
    Date
    From: Lu Baolu <baolu.lu@linux.intel.com>

    [ Upstream commit cf1ec4539a50bdfe688caad4615ca47646884316 ]

    The intel_iommu_gfx_mapped flag is exported by the Intel
    IOMMU driver to indicate whether an IOMMU is used for the
    graphic device. In a virtualized IOMMU environment (e.g.
    QEMU), an include-all IOMMU is used for graphic device.
    This flag is found to be clear even the IOMMU is used.

    Cc: Ashok Raj <ashok.raj@intel.com>
    Cc: Jacob Pan <jacob.jun.pan@linux.intel.com>
    Cc: Kevin Tian <kevin.tian@intel.com>
    Reported-by: Zhenyu Wang <zhenyuw@linux.intel.com>
    Fixes: c0771df8d5297 ("intel-iommu: Export a flag indicating that the IOMMU is used for iGFX.")
    Suggested-by: Kevin Tian <kevin.tian@intel.com>
    Signed-off-by: Lu Baolu <baolu.lu@linux.intel.com>
    Signed-off-by: Joerg Roedel <jroedel@suse.de>
    Signed-off-by: Sasha Levin <sashal@kernel.org>
    ---
    drivers/iommu/intel-iommu.c | 7 ++++---
    1 file changed, 4 insertions(+), 3 deletions(-)

    diff --git a/drivers/iommu/intel-iommu.c b/drivers/iommu/intel-iommu.c
    index 3e97c4b2ebed2..b965561a41627 100644
    --- a/drivers/iommu/intel-iommu.c
    +++ b/drivers/iommu/intel-iommu.c
    @@ -3983,9 +3983,7 @@ static void __init init_no_remapping_devices(void)

    /* This IOMMU has *only* gfx devices. Either bypass it or
    set the gfx_mapped flag, as appropriate */
    - if (dmar_map_gfx) {
    - intel_iommu_gfx_mapped = 1;
    - } else {
    + if (!dmar_map_gfx) {
    drhd->ignored = 1;
    for_each_active_dev_scope(drhd->devices,
    drhd->devices_cnt, i, dev)
    @@ -4694,6 +4692,9 @@ int __init intel_iommu_init(void)
    goto out_free_reserved_range;
    }

    + if (dmar_map_gfx)
    + intel_iommu_gfx_mapped = 1;
    +
    init_no_remapping_devices();

    ret = init_dmars();
    --
    2.20.1
    \
     
     \ /
      Last update: 2019-06-01 15:29    [W:4.176 / U:0.448 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site