On 19/11/19 09:49, Yang Weijiang wrote: > + /* > + * if it's EPT leaf entry and the physical page is > + * SPP protected, then re-enable SPP protection for > + * the page. > + */ > + if (kvm->arch.spp_active && > + level == PT_PAGE_TABLE_LEVEL) { > + struct kvm_subpage spp_info = {0}; > + int i; > + > + spp_info.base_gfn = gfn; > + spp_info.npages = 1; > + i = kvm_spp_get_permission(kvm, &spp_info); > + if (i == 1 && > + spp_info.access_map[0] != FULL_SPP_ACCESS) > + new_spte |= PT_SPP_MASK; > + } This can use gfn_to_subpage_wp_info directly (or is_spp_protected if you prefer). Paolo