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

From: Joerg Roedel
Date: Tue Apr 23 2013 - 08:49:34 EST


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@xxxxxxxxxxxxxx>
> ---
> 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.


--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/