Lines Matching full:vmid
27 /* Figure-out number of VMID bits in HW */ in kvm_riscv_gstage_vmid_detect()
38 /* We don't use VMID bits if they are not sufficient */ in kvm_riscv_gstage_vmid_detect()
50 /* Mark the initial VMID and VMID version invalid */ in kvm_riscv_gstage_vmid_init()
51 kvm->arch.vmid.vmid_version = 0; in kvm_riscv_gstage_vmid_init()
52 kvm->arch.vmid.vmid = 0; in kvm_riscv_gstage_vmid_init()
57 bool kvm_riscv_gstage_vmid_ver_changed(struct kvm_vmid *vmid) in kvm_riscv_gstage_vmid_ver_changed() argument
62 return unlikely(READ_ONCE(vmid->vmid_version) != in kvm_riscv_gstage_vmid_ver_changed()
75 struct kvm_vmid *vmid = &vcpu->kvm->arch.vmid; in kvm_riscv_gstage_vmid_update() local
77 if (!kvm_riscv_gstage_vmid_ver_changed(vmid)) in kvm_riscv_gstage_vmid_update()
84 * another vcpu already allocated a valid vmid for this vm. in kvm_riscv_gstage_vmid_update()
86 if (!kvm_riscv_gstage_vmid_ver_changed(vmid)) { in kvm_riscv_gstage_vmid_update()
91 /* First user of a new VMID version? */ in kvm_riscv_gstage_vmid_update()
101 * instances is invalid and we have force VMID re-assignement in kvm_riscv_gstage_vmid_update()
113 vmid->vmid = vmid_next; in kvm_riscv_gstage_vmid_update()
117 WRITE_ONCE(vmid->vmid_version, READ_ONCE(vmid_version)); in kvm_riscv_gstage_vmid_update()