On 6/28/2017 4:36 AM, Joerg Roedel wrote: > Hi Tom, Hi Joerg, > > On Tue, Jun 27, 2017 at 10:12:30AM -0500, Tom Lendacky wrote: >> --- >> drivers/iommu/amd_iommu.c | 30 ++++++++++++++++-------------- >> drivers/iommu/amd_iommu_init.c | 34 ++++++++++++++++++++++++++++------ >> drivers/iommu/amd_iommu_proto.h | 10 ++++++++++ >> drivers/iommu/amd_iommu_types.h | 2 +- >> 4 files changed, 55 insertions(+), 21 deletions(-) > > Looks like a straightforward change. Just one nit below. > >> +static bool amd_iommu_supports_sme(void) >> +{ >> + if (!sme_active() || (boot_cpu_data.x86 != 0x17)) >> + return true; >> + >> + /* For Fam17h, a specific level of support is required */ >> + if (boot_cpu_data.microcode >= 0x08001205) >> + return true; >> + >> + if ((boot_cpu_data.microcode >= 0x08001126) && >> + (boot_cpu_data.microcode <= 0x080011ff)) >> + return true; >> + >> + pr_notice("AMD-Vi: IOMMU not currently supported when SME is active\n"); >> + >> + return false; >> +} > > The name of the function is misleading. It checks whether the IOMMU can > be enabled when SME is active. But the name suggests that it checks > whether the iommu hardware supports SME. > > How about renaming it to amd_iommu_sme_check()? Can do. Thanks, Tom > > With that change the patch is: > > Acked-by: Joerg Roedel <jroedel at suse.de> >