On 16.04.21 00:20, Sean Christopherson wrote:
From: Wanpeng Li <[email protected]> Provide separate context tracking helpers for guest exit, the standalone helpers will be called separately by KVM x86 in later patches to fix tick-based accounting. Suggested-by: Thomas Gleixner <[email protected]> Cc: Thomas Gleixner <[email protected]> Cc: Sean Christopherson <[email protected]> Cc: Michael Tokarev <[email protected]> Cc: Christian Borntraeger <[email protected]> Signed-off-by: Wanpeng Li <[email protected]> Co-developed-by: Sean Christopherson <[email protected]> Signed-off-by: Sean Christopherson <[email protected]>
Reviewed-by: Christian Borntraeger <[email protected]>
--- include/linux/context_tracking.h | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/include/linux/context_tracking.h b/include/linux/context_tracking.h index bceb06498521..200d30cb3a82 100644 --- a/include/linux/context_tracking.h +++ b/include/linux/context_tracking.h @@ -131,10 +131,15 @@ static __always_inline void guest_enter_irqoff(void) } }-static __always_inline void guest_exit_irqoff(void)+static __always_inline void context_tracking_guest_exit_irqoff(void) { if (context_tracking_enabled()) __context_tracking_exit(CONTEXT_GUEST); +} + +static __always_inline void guest_exit_irqoff(void) +{ + context_tracking_guest_exit_irqoff();instrumentation_begin();if (vtime_accounting_enabled_this_cpu()) @@ -159,6 +164,8 @@ static __always_inline void guest_enter_irqoff(void) instrumentation_end(); }+static __always_inline void context_tracking_guest_exit_irqoff(void) { }+ static __always_inline void guest_exit_irqoff(void) { instrumentation_begin();

