[PATCH v2] intel-iommu: Disable translation if already enabled

Joerg Roedel joro at 8bytes.org
Tue Apr 23 08:49:27 EDT 2013


On Tue, Apr 23, 2013 at 05:35:03PM +0900, Takao Indoh wrote:
> This patch disables translation(dma-remapping) before its initialization
> if it is already enabled.
> 
> This is needed for kexec/kdump boot. If dma-remapping is enabled in the
> first kernel, it need to be disabled before initializing its page table
> during second kernel boot. Wei Hu also reported that this is needed
> when second kernel boots with intel_iommu=off.
> 
> Basically iommu->gcmd is used to know whether translation is enabled or
> disabled, but it is always zero at boot time even when translation is
> enabled since iommu->gcmd is initialized without considering such a
> case. Therefor this patch synchronizes iommu->gcmd value with global
> command register when iommu structure is allocated.
> 
> Changelog:
> v2:
> - Change subject and patch description
> - Disable translation after dmar_table_init() so that it works when
>   intel_iommu=off is specified.
> 
> v1:
> https://lkml.org/lkml/2013/3/20/707
> 
> Signed-off-by: Takao Indoh <indou.takao at jp.fujitsu.com>
> ---
>  drivers/iommu/dmar.c        |   11 ++++++++++-
>  drivers/iommu/intel-iommu.c |   15 +++++++++++++++
>  2 files changed, 25 insertions(+), 1 deletions(-)

Looks good to me, applied to x86/vt-d, thanks Takao.





More information about the kexec mailing list