[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <9ab8107f-ff41-6a9e-57e1-a261bea93aca@redhat.com>
Date: Fri, 17 Dec 2021 16:54:22 +0100
From: Paolo Bonzini <pbonzini@...hat.com>
To: Mark Rutland <mark.rutland@....com>,
Nicolas Saenz Julienne <nsaenzju@...hat.com>
Cc: paulmck <paulmck@...nel.org>, maz <maz@...nel.org>,
frederic <frederic@...nel.org>,
linux-kernel <linux-kernel@...r.kernel.org>,
rcu <rcu@...r.kernel.org>, Thomas Gleixner <tglx@...utronix.de>,
Will Deacon <will@...nel.org>, kvmarm@...ts.cs.columbia.edu,
linux-arm-kernel <linux-arm-kernel@...ts.infradead.org>
Subject: Re: Possible nohz-full/RCU issue in arm64 KVM
On 12/17/21 15:38, Mark Rutland wrote:
> For example kvm_guest_enter_irqoff() calls guest_enter_irq_off() which calls
> vtime_account_guest_enter(), but kvm_guest_exit_irqoff() doesn't call
> guest_exit_irq_off() and the call to vtime_account_guest_exit() is open-coded
> elsewhere. Also, guest_enter_irq_off() conditionally calls
> rcu_virt_note_context_switch(), but I can't immediately spot anything on the
> exit side that corresponded with that, which looks suspicious.
rcu_note_context_switch() is a point-in-time notification; it's not
strictly necessary, but it may improve performance a bit by avoiding
unnecessary IPIs from the RCU subsystem.
There's no benefit from doing it when you're back from the guest,
because at that point the CPU is just running normal kernel code.
Paolo
Powered by blists - more mailing lists