On Tue, Dec 10, 2019 at 04:16:44PM +0000, Ben Hutchings wrote: > The 3.16, 4.4, and 4.9 branches have slightly different conditions in > kvm_set_cr3(): > > if (is_long_mode(vcpu)) { > if (cr3 & CR3_L_MODE_RESERVED_BITS) > return 1; > } else if (is_pae(vcpu) && is_paging(vcpu) && > !load_pdptrs(vcpu, vcpu->arch.walk_mmu, cr3)) > return 1; > > So load_pdptrs() already won't be called if is_long_mode() returns > true, and this fix shouldn't be needed. Argh, glad you double checked! I looked at 3.16.y, but apparently I didn't actually read the code...