On 2011-09-14 09:58, Jan Kiszka wrote:
> The vcpu reference of a kvm_timer can't become NULL while the timer is
> valid, so drop this redundant test. This also makes it pointless to
> carry a separate __kvm_timer_fn, fold it into kvm_timer_fn.
> 
> Signed-off-by: Jan Kiszka <jan.kis...@siemens.com>
> ---
>  arch/x86/kvm/timer.c |   26 ++++----------------------
>  1 files changed, 4 insertions(+), 22 deletions(-)
> 
> diff --git a/arch/x86/kvm/timer.c b/arch/x86/kvm/timer.c
> index ae432ea..6b85cc6 100644
> --- a/arch/x86/kvm/timer.c
> +++ b/arch/x86/kvm/timer.c
> @@ -18,9 +18,10 @@
>  #include <linux/atomic.h>
>  #include "kvm_timer.h"
>  
> -static int __kvm_timer_fn(struct kvm_vcpu *vcpu, struct kvm_timer *ktimer)
> +enum hrtimer_restart kvm_timer_fn(struct hrtimer *data)
>  {
> -     int restart_timer = 0;
> +     struct kvm_timer *ktimer = container_of(data, struct kvm_timer, timer);
> +     struct kvm_vcpu *vcpu = ktimer->vcpu;
>       wait_queue_head_t *q = &vcpu->wq;
>  
>       /*
> @@ -40,26 +41,7 @@ static int __kvm_timer_fn(struct kvm_vcpu *vcpu, struct 
> kvm_timer *ktimer)
>  
>       if (ktimer->t_ops->is_periodic(ktimer)) {
>               hrtimer_add_expires_ns(&ktimer->timer, ktimer->period);
> -             restart_timer = 1;
> -     }
> -
> -     return restart_timer;
> -}
> -
> -enum hrtimer_restart kvm_timer_fn(struct hrtimer *data)
> -{
> -     int restart_timer;
> -     struct kvm_vcpu *vcpu;
> -     struct kvm_timer *ktimer = container_of(data, struct kvm_timer, timer);
> -
> -     vcpu = ktimer->vcpu;
> -     if (!vcpu)
> -             return HRTIMER_NORESTART;
> -
> -     restart_timer = __kvm_timer_fn(vcpu, ktimer);
> -     if (restart_timer)
>               return HRTIMER_RESTART;
> -     else
> +     } else
>               return HRTIMER_NORESTART;
>  }
> -

Ping.

Attachment: signature.asc
Description: OpenPGP digital signature

Reply via email to