lkml.org 
[lkml]   [2020]   [Jul]   [23]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    Date
    From
    SubjectRe: [patch V5 15/15] x86/kvm: Use generic xfer to guest work function
    On Thu, Jul 23, 2020 at 12:00:09AM +0200, Thomas Gleixner wrote:
    > From: Thomas Gleixner <tglx@linutronix.de>
    >
    > Use the generic infrastructure to check for and handle pending work before
    > transitioning into guest mode.
    >
    > This now handles TIF_NOTIFY_RESUME as well which was ignored so
    > far. Handling it is important as this covers task work and task work will
    > be used to offload the heavy lifting of POSIX CPU timers to thread context.
    >
    > Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
    > ---
    > V5: Rename exit -> xfer
    > ---

    One nit/question below (though it's really about patch 5).

    Reviewed-and-tested-by: Sean Christopherson <sean.j.christopherson@intel.com>

    > @@ -8676,15 +8677,11 @@ static int vcpu_run(struct kvm_vcpu *vcp
    > break;
    > }
    >
    > - if (signal_pending(current)) {
    > - r = -EINTR;
    > - vcpu->run->exit_reason = KVM_EXIT_INTR;
    > - ++vcpu->stat.signal_exits;
    > - break;
    > - }
    > - if (need_resched()) {
    > + if (xfer_to_guest_mode_work_pending()) {
    > srcu_read_unlock(&kvm->srcu, vcpu->srcu_idx);
    > - cond_resched();
    > + r = xfer_to_guest_mode(vcpu);

    Any reason not to call this xfer_to_guest_mode_work()? Or handle_work(),
    do_work(), etc... Without the "work" part, it looks like a function that
    should be invoked unconditionally. It's obvious that's not the case if
    one looks at the implementation, but it's a bit confusing on the KVM side
    of things.

    > + if (r)
    > + return r;
    > vcpu->srcu_idx = srcu_read_lock(&kvm->srcu);
    > }
    > }
    >

    \
     
     \ /
      Last update: 2020-07-24 02:18    [W:4.128 / U:0.744 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site