Lines Matching refs:vcpu
21 static void kvm_rtas_set_xive(struct kvm_vcpu *vcpu, struct rtas_args *args) in kvm_rtas_set_xive() argument
35 rc = kvmppc_xics_set_xive(vcpu->kvm, irq, server, priority); in kvm_rtas_set_xive()
42 static void kvm_rtas_get_xive(struct kvm_vcpu *vcpu, struct rtas_args *args) in kvm_rtas_get_xive() argument
55 rc = kvmppc_xics_get_xive(vcpu->kvm, irq, &server, &priority); in kvm_rtas_get_xive()
67 static void kvm_rtas_int_off(struct kvm_vcpu *vcpu, struct rtas_args *args) in kvm_rtas_int_off() argument
79 rc = kvmppc_xics_int_off(vcpu->kvm, irq); in kvm_rtas_int_off()
86 static void kvm_rtas_int_on(struct kvm_vcpu *vcpu, struct rtas_args *args) in kvm_rtas_int_on() argument
98 rc = kvmppc_xics_int_on(vcpu->kvm, irq); in kvm_rtas_int_on()
107 void (*handler)(struct kvm_vcpu *vcpu, struct rtas_args *args);
208 int kvmppc_rtas_hcall(struct kvm_vcpu *vcpu) in kvmppc_rtas_hcall() argument
220 args_phys = kvmppc_get_gpr(vcpu, 4) & KVM_PAM; in kvmppc_rtas_hcall()
222 rc = kvm_read_guest(vcpu->kvm, args_phys, &args, sizeof(args)); in kvmppc_rtas_hcall()
235 mutex_lock(&vcpu->kvm->lock); in kvmppc_rtas_hcall()
238 list_for_each_entry(d, &vcpu->kvm->arch.rtas_tokens, list) { in kvmppc_rtas_hcall()
240 d->handler->handler(vcpu, &args); in kvmppc_rtas_hcall()
246 mutex_unlock(&vcpu->kvm->lock); in kvmppc_rtas_hcall()
250 rc = kvm_write_guest(vcpu->kvm, args_phys, &args, sizeof(args)); in kvmppc_rtas_hcall()