1. 14 7月, 2007 1 次提交
    • T
      [IA64] use machvec=dig on hpzx1 platforms · 51b58e3e
      Terry Loftin 提交于
      On HP zx1 machines, the 'machvec=dig' parameter is needed for the
      kdump kernel to avoid problems with the HP sba iommu.  The problem
      is that during the boot of the kdump kernel, the iommu is re-initialized,
      so in-flight DMA from improperly shutdown drivers causes an IOTLB
      miss which leads to an MCA.  With kdump, the idea is to get into the
      kdump kernel with as little code as we can, so shutting down drivers
      properly is not an option.
      
      The workaround is to add 'machvec=dig' to the kdump kernel boot
      parameters.  This makes the kdump kernel avoid using the sba iommu
      altogether, leaving the IOTLB intact.  Any ongoing DMA falls
      harmlessly outside the kdump kernel.  After the kdump kernel reboots,
      all devices will have been shutdown properly and DMA stopped.
      
      This patch pushes that functionality into the sba iommu
      initialization code, so that users won't have to find the obscure
      documentation telling them about 'machvec=dig'.
      
      This patch only affects HP platforms.  It still includes one
      extern declaration in the file, because no applicable header file
      exists.
      Signed-off-by: NTerry Loftin <terry.loftin@hp.com>
      Signed-off-by: NAlex Williamson <alex.williamson@hp.com>
      Signed-off-by: NTony Luck <tony.luck@intel.com>
      51b58e3e
  2. 13 7月, 2007 39 次提交