summaryrefslogtreecommitdiffstats
path: root/drivers/iommu/intel-iommu.c
diff options
context:
space:
mode:
authorTakashi Iwai <tiwai@suse.de>2017-06-06 20:03:46 +0200
committerTakashi Iwai <tiwai@suse.de>2017-06-06 20:03:46 +0200
commitdd8038ec56c18680ddddf948247f53d427054f45 (patch)
tree9552d8cd5578bf82e028dd4205b799736f877476 /drivers/iommu/intel-iommu.c
parentALSA: hda/realtek - Reorder ALC269 ASUS quirk entries (diff)
parentMerge remote-tracking branch 'asoc/fix/rt286' into asoc-linus (diff)
downloadlinux-dd8038ec56c18680ddddf948247f53d427054f45.tar.xz
linux-dd8038ec56c18680ddddf948247f53d427054f45.zip
Merge tag 'asoc-fix-v4.12-rc4' of git://git.kernel.org/pub/scm/linux/kernel/git/broonie/sound into for-linus
ASoC: Fixes for v4.12 This is the usual collection of device specific fixes, all accumilated since the merge window, plus one fix from Takashi for a nasty use after free bug that bit some things with deferred probe and an update to the maintainer address for the former Wolfson parts.
Diffstat (limited to 'drivers/iommu/intel-iommu.c')
-rw-r--r--drivers/iommu/intel-iommu.c5
1 files changed, 4 insertions, 1 deletions
diff --git a/drivers/iommu/intel-iommu.c b/drivers/iommu/intel-iommu.c
index 90ab0115d78e..fc2765ccdb57 100644
--- a/drivers/iommu/intel-iommu.c
+++ b/drivers/iommu/intel-iommu.c
@@ -2055,11 +2055,14 @@ static int domain_context_mapping_one(struct dmar_domain *domain,
if (context_copied(context)) {
u16 did_old = context_domain_id(context);
- if (did_old >= 0 && did_old < cap_ndoms(iommu->cap))
+ if (did_old >= 0 && did_old < cap_ndoms(iommu->cap)) {
iommu->flush.flush_context(iommu, did_old,
(((u16)bus) << 8) | devfn,
DMA_CCMD_MASK_NOBIT,
DMA_CCMD_DEVICE_INVL);
+ iommu->flush.flush_iotlb(iommu, did_old, 0, 0,
+ DMA_TLB_DSI_FLUSH);
+ }
}
pgd = domain->pgd;