Re: [PATCH v2 1/5] KVM: add kvm_has_request wrapper

From: Christian Borntraeger
Date: Wed Aug 12 2015 - 15:57:34 EST


Am 05.08.2015 um 18:32 schrieb Radim KrÄmÃÅ:
> We want to have requests abstracted from bit operations.
>
> Signed-off-by: Radim KrÄmÃÅ <rkrcmar@xxxxxxxxxx>
> ---

kvm_check_request is now somewhat a misnomer (what is the difference between test and check?)
but still

Acked-by: Christian Borntraeger <borntraeger@xxxxxxxxxx>

for the new interface. maybe we can rename kvm_check_request in a separate patch somewhen.


> arch/x86/kvm/vmx.c | 2 +-
> include/linux/kvm_host.h | 7 ++++++-
> 2 files changed, 7 insertions(+), 2 deletions(-)
>
> diff --git a/arch/x86/kvm/vmx.c b/arch/x86/kvm/vmx.c
> index 217f66343dc8..17514fe7d2cb 100644
> --- a/arch/x86/kvm/vmx.c
> +++ b/arch/x86/kvm/vmx.c
> @@ -5879,7 +5879,7 @@ static int handle_invalid_guest_state(struct kvm_vcpu *vcpu)
> if (intr_window_requested && vmx_interrupt_allowed(vcpu))
> return handle_interrupt_window(&vmx->vcpu);
>
> - if (test_bit(KVM_REQ_EVENT, &vcpu->requests))
> + if (kvm_has_request(KVM_REQ_EVENT, vcpu))
> return 1;
>
> err = emulate_instruction(vcpu, EMULTYPE_NO_REEXECUTE);
> diff --git a/include/linux/kvm_host.h b/include/linux/kvm_host.h
> index 27ccdf91a465..52e388367a26 100644
> --- a/include/linux/kvm_host.h
> +++ b/include/linux/kvm_host.h
> @@ -1089,9 +1089,14 @@ static inline void kvm_make_request(int req, struct kvm_vcpu *vcpu)
> set_bit(req, &vcpu->requests);
> }
>
> +static inline bool kvm_has_request(int req, struct kvm_vcpu *vcpu)
> +{
> + return test_bit(req, &vcpu->requests);
> +}
> +
> static inline bool kvm_check_request(int req, struct kvm_vcpu *vcpu)
> {
> - if (test_bit(req, &vcpu->requests)) {
> + if (kvm_has_request(req, vcpu)) {
> clear_bit(req, &vcpu->requests);
> return true;
> } else {
>

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/