vpmu_vm
static struct vpmu_vm vpmu_vm;
memset(&vpmu_vm, 0, sizeof(vpmu_vm));
vpmu_vm.vm = vm_create(1);
vm_init_descriptor_tables(vpmu_vm.vm);
vm_install_sync_handler(vpmu_vm.vm, VECTOR_SYNC_CURRENT, ec,
kvm_get_default_vcpu_target(vpmu_vm.vm, &init);
vpmu_vm.vcpu = aarch64_vcpu_add(vpmu_vm.vm, 0, &init, guest_code);
vcpu_init_descriptor_tables(vpmu_vm.vcpu);
kvm_arch_vm_finalize_vcpus(vpmu_vm.vm);
dfr0 = vcpu_get_reg(vpmu_vm.vcpu, KVM_ARM64_SYS_REG(SYS_ID_AA64DFR0_EL1));
vcpu_ioctl(vpmu_vm.vcpu, KVM_SET_DEVICE_ATTR, &irq_attr);
kvm_vm_free(vpmu_vm.vm);
vcpu = vpmu_vm.vcpu;
vcpu = vpmu_vm.vcpu;
kvm_get_default_vcpu_target(vpmu_vm.vm, &init);
vcpu = vpmu_vm.vcpu;
pmcr = vcpu_get_reg(vpmu_vm.vcpu, KVM_ARM64_SYS_REG(SYS_PMCR_EL0));
supported = !__vcpu_has_device_attr(vpmu_vm.vcpu, KVM_ARM_VCPU_PMU_V3_CTRL,