提交 866a6dad 编写于 作者: W Wanpeng Li 提交者: Thomas Gleixner

context_tracking: Move guest exit context tracking to separate helpers

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: NThomas Gleixner <tglx@linutronix.de>
Signed-off-by: NWanpeng Li <wanpengli@tencent.com>
Co-developed-by: NSean Christopherson <seanjc@google.com>
Signed-off-by: NSean Christopherson <seanjc@google.com>
Signed-off-by: NThomas Gleixner <tglx@linutronix.de>
Link: https://lore.kernel.org/r/20210505002735.1684165-2-seanjc@google.com
上级 a217a659
...@@ -131,10 +131,15 @@ static __always_inline void guest_enter_irqoff(void) ...@@ -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(void)
{ {
if (context_tracking_enabled()) if (context_tracking_enabled())
__context_tracking_exit(CONTEXT_GUEST); __context_tracking_exit(CONTEXT_GUEST);
}
static __always_inline void guest_exit_irqoff(void)
{
context_tracking_guest_exit();
instrumentation_begin(); instrumentation_begin();
if (vtime_accounting_enabled_this_cpu()) if (vtime_accounting_enabled_this_cpu())
...@@ -159,6 +164,8 @@ static __always_inline void guest_enter_irqoff(void) ...@@ -159,6 +164,8 @@ static __always_inline void guest_enter_irqoff(void)
instrumentation_end(); instrumentation_end();
} }
static __always_inline void context_tracking_guest_exit(void) { }
static __always_inline void guest_exit_irqoff(void) static __always_inline void guest_exit_irqoff(void)
{ {
instrumentation_begin(); instrumentation_begin();
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册