iommu/amd: Fix interrupt remapping when disable guest_mode
authorSuravee Suthikulpanit <suravee.suthikulpanit@amd.com>
Mon, 26 Jun 2017 09:28:04 +0000 (04:28 -0500)
committerJoerg Roedel <jroedel@suse.de>
Wed, 28 Jun 2017 12:44:56 +0000 (14:44 +0200)
commit84a21dbdef0b96d773599c33c2afbb002198d303
treee6056e1911ed1f54c808f99937d41bcae2088488
parent7304e8f28bb2f3cb2baf37c1bb2caa0f54ca4e43
iommu/amd: Fix interrupt remapping when disable guest_mode

Pass-through devices to VM guest can get updated IRQ affinity
information via irq_set_affinity() when not running in guest mode.
Currently, AMD IOMMU driver in GA mode ignores the updated information
if the pass-through device is setup to use vAPIC regardless of guest_mode.
This could cause invalid interrupt remapping.

Also, the guest_mode bit should be set and cleared only when
SVM updates posted-interrupt interrupt remapping information.

Signed-off-by: Suravee Suthikulpanit <suravee.suthikulpanit@amd.com>
Cc: Joerg Roedel <jroedel@suse.de>
Fixes: d98de49a53e48 ('iommu/amd: Enable vAPIC interrupt remapping mode by default')
Signed-off-by: Joerg Roedel <jroedel@suse.de>
drivers/iommu/amd_iommu.c