tree: https://git.kernel.org/pub/scm/virt/kvm/kvm.git queue head: 90433378a1bea709c362a855c99b4662c92e49be commit: ca9ddf0b7d74a71b6d71ea5355825922b89f5fd7 [22/34] KVM: x86: disallow pre-fault for SNP VMs before initialization config: i386-randconfig-141-20240720 (https://download.01.org/0day-ci/archive/20240720/202407200826.iiOlgVtf-lkp@xxxxxxxxx/config) compiler: clang version 18.1.5 (https://github.com/llvm/llvm-project 617a15a9eac96088ae5e9134248d8236e34b91b1) reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20240720/202407200826.iiOlgVtf-lkp@xxxxxxxxx/reproduce) If you fix the issue in a separate patch/commit (i.e. not just a new version of the same patch/commit), kindly add following tags | Reported-by: kernel test robot <lkp@xxxxxxxxx> | Closes: https://lore.kernel.org/oe-kbuild-all/202407200826.iiOlgVtf-lkp@xxxxxxxxx/ All errors (new ones prefixed by >>): >> arch/x86/kvm/x86.c:12650:12: error: no member named 'pre_fault_allowed' in 'struct kvm_arch' 12650 | kvm->arch.pre_fault_allowed = | ~~~~~~~~~ ^ 1 error generated. -- >> arch/x86/kvm/mmu/mmu.c:4746:23: error: no member named 'pre_fault_allowed' in 'struct kvm_arch' 4746 | if (!vcpu->kvm->arch.pre_fault_allowed) | ~~~~~~~~~~~~~~~ ^ 1 error generated. -- >> arch/x86/kvm/svm/svm.c:4952:13: error: no member named 'pre_fault_allowed' in 'struct kvm_arch' 4952 | kvm->arch.pre_fault_allowed = !kvm->arch.has_private_mem; | ~~~~~~~~~ ^ 1 error generated. vim +12650 arch/x86/kvm/x86.c 12636 12637 12638 int kvm_arch_init_vm(struct kvm *kvm, unsigned long type) 12639 { 12640 int ret; 12641 unsigned long flags; 12642 12643 if (!kvm_is_vm_type_supported(type)) 12644 return -EINVAL; 12645 12646 kvm->arch.vm_type = type; 12647 kvm->arch.has_private_mem = 12648 (type == KVM_X86_SW_PROTECTED_VM); 12649 /* Decided by the vendor code for other VM types. */ 12650 kvm->arch.pre_fault_allowed = 12651 type == KVM_X86_DEFAULT_VM || type == KVM_X86_SW_PROTECTED_VM; 12652 12653 ret = kvm_page_track_init(kvm); 12654 if (ret) 12655 goto out; 12656 12657 kvm_mmu_init_vm(kvm); 12658 12659 ret = kvm_x86_call(vm_init)(kvm); 12660 if (ret) 12661 goto out_uninit_mmu; 12662 12663 INIT_HLIST_HEAD(&kvm->arch.mask_notifier_list); 12664 atomic_set(&kvm->arch.noncoherent_dma_count, 0); 12665 12666 /* Reserve bit 0 of irq_sources_bitmap for userspace irq source */ 12667 set_bit(KVM_USERSPACE_IRQ_SOURCE_ID, &kvm->arch.irq_sources_bitmap); 12668 /* Reserve bit 1 of irq_sources_bitmap for irqfd-resampler */ 12669 set_bit(KVM_IRQFD_RESAMPLE_IRQ_SOURCE_ID, 12670 &kvm->arch.irq_sources_bitmap); 12671 12672 raw_spin_lock_init(&kvm->arch.tsc_write_lock); 12673 mutex_init(&kvm->arch.apic_map_lock); 12674 seqcount_raw_spinlock_init(&kvm->arch.pvclock_sc, &kvm->arch.tsc_write_lock); 12675 kvm->arch.kvmclock_offset = -get_kvmclock_base_ns(); 12676 12677 raw_spin_lock_irqsave(&kvm->arch.tsc_write_lock, flags); 12678 pvclock_update_vm_gtod_copy(kvm); 12679 raw_spin_unlock_irqrestore(&kvm->arch.tsc_write_lock, flags); 12680 12681 kvm->arch.default_tsc_khz = max_tsc_khz ? : tsc_khz; 12682 kvm->arch.apic_bus_cycle_ns = APIC_BUS_CYCLE_NS_DEFAULT; 12683 kvm->arch.guest_can_read_msr_platform_info = true; 12684 kvm->arch.enable_pmu = enable_pmu; 12685 -- 0-DAY CI Kernel Test Service https://github.com/intel/lkp-tests/wiki