]> git.ipfire.org Git - thirdparty/kernel/stable.git/commitdiff
iommu/amd: Call domain_flush_complete() in update_domain()
authorJoerg Roedel <jroedel@suse.de>
Mon, 4 May 2020 12:54:11 +0000 (14:54 +0200)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Wed, 27 May 2020 15:48:11 +0000 (17:48 +0200)
[ Upstream commit f44a4d7e4f1cdef73c90b1dc749c4d8a7372a8eb ]

The update_domain() function is expected to also inform the hardware
about domain changes. This needs a COMPLETION_WAIT command to be sent
to all IOMMUs which use the domain.

Signed-off-by: Joerg Roedel <jroedel@suse.de>
Tested-by: Qian Cai <cai@lca.pw>
Link: https://lore.kernel.org/r/20200504125413.16798-4-joro@8bytes.org
Signed-off-by: Joerg Roedel <jroedel@suse.de>
Signed-off-by: Sasha Levin <sashal@kernel.org>
drivers/iommu/amd_iommu.c

index 18c995a16d80c33c5aabd34baf803f1e95d055f6..2aa46a6de172b2cb75abe3c1445d02f50e457c0d 100644 (file)
@@ -2345,6 +2345,7 @@ static void update_domain(struct protection_domain *domain)
 
        /* Flush domain TLB(s) and wait for completion */
        domain_flush_tlb_pde(domain);
+       domain_flush_complete(domain);
 }
 
 int __init amd_iommu_init_api(void)