AMD/IOMMU: suppress PTE merging after initial table creation
authorJan Beulich <jbeulich@suse.com>
Tue, 20 Nov 2018 14:30:25 +0000 (15:30 +0100)
committerJan Beulich <jbeulich@suse.com>
Tue, 20 Nov 2018 14:30:25 +0000 (15:30 +0100)
commit946f345547b9810045e754ea4b73b4e8c5e7935b
tree5bc214da433661a85f169ba91d2938309af96607
parent086a9dded27eb39a74f1d51ca19c0e14a0cab277
AMD/IOMMU: suppress PTE merging after initial table creation

The logic is not fit for this purpose, so simply disable its use until
it can be fixed / replaced. Note that this re-enables merging for the
table creation case, which was disabled as a (perhaps unintended) side
effect of the earlier "amd/iommu: fix flush checks". It relies on no
page getting mapped more than once (with different properties) in this
process, as that would still be beyond what the merging logic can cope
with. But arch_iommu_populate_page_table() guarantees this afaict.

This is part of XSA-275.

Signed-off-by: Jan Beulich <jbeulich@suse.com>
master commit: 937ef32565fa3a81fdb37b9dd5aa99a1b87afa75
master date: 2018-11-20 14:55:14 +0100
xen/drivers/passthrough/amd/iommu_map.c
xen/include/asm-x86/iommu.h