RE: [RFCv2 PATCH 2/7] iommu/amd: Refactor set_dte_entry

From: Tian, Kevin
Date: Mon Jan 22 2024 - 03:40:24 EST


> From: Suravee Suthikulpanit <suravee.suthikulpanit@xxxxxxx>
> Sent: Friday, January 12, 2024 8:07 AM
>
> +
> + /* Use system default */
> + tmp = amd_iommu_gpt_level;
> +
> + /* Mask out old values for GuestPagingMode */
> + target->data[2] &= ~(0x3ULL << DTE_GPT_LEVEL_SHIFT);
> + target->data[2] |= (tmp << DTE_GPT_LEVEL_SHIFT);

Just directly use amd_iommu_gpt_level here.

btw this sounds like a functional change as the original code only does
this for 5level:

if (amd_iommu_gpt_level == PAGE_MODE_5_LEVEL) {
dev_table[devid].data[2] |=
((u64)GUEST_PGTABLE_5_LEVEL <<
DTE_GPT_LEVEL_SHIFT);
}

If it's the desired change then better make it a separate fix.