Skip to content
  • Baoquan He's avatar
    iommu/amd: Allocate memory below 4G for dev table if translation pre-enabled · b336781b
    Baoquan He authored
    
    
    AMD pointed out it's unsafe to update the device-table while iommu
    is enabled. It turns out that device-table pointer update is split
    up into two 32bit writes in the IOMMU hardware. So updating it while
    the IOMMU is enabled could have some nasty side effects.
    
    The safe way to work around this is to always allocate the device-table
    below 4G, including the old device-table in normal kernel and the
    device-table used for copying the content of the old device-table in kdump
    kernel. Meanwhile we need check if the address of old device-table is
    above 4G because it might has been touched accidentally in corrupted
    1st kernel.
    
    Signed-off-by: default avatarBaoquan He <bhe@redhat.com>
    Signed-off-by: default avatarJoerg Roedel <jroedel@suse.de>
    b336781b