From 900fac27c6c4e8b5cb56c74f0829cf8e9213c763 Mon Sep 17 00:00:00 2001 From: Idan Horowitz Date: Thu, 7 Oct 2021 21:42:40 +0300 Subject: [PATCH] Kernel: Add Processor::time_spent_idle() --- Kernel/Arch/x86/Processor.h | 2 ++ Kernel/Arch/x86/common/Processor.cpp | 5 +++++ 2 files changed, 7 insertions(+) diff --git a/Kernel/Arch/x86/Processor.h b/Kernel/Arch/x86/Processor.h index d0246b9448..a1b6bf97e2 100644 --- a/Kernel/Arch/x86/Processor.h +++ b/Kernel/Arch/x86/Processor.h @@ -258,6 +258,8 @@ public: ALWAYS_INLINE ProcessorInfo& info() { return *m_info; } + u64 time_spent_idle() const; + static bool is_smp_enabled(); ALWAYS_INLINE static Processor& current() diff --git a/Kernel/Arch/x86/common/Processor.cpp b/Kernel/Arch/x86/common/Processor.cpp index 36913ad128..fb97ab0d65 100644 --- a/Kernel/Arch/x86/common/Processor.cpp +++ b/Kernel/Arch/x86/common/Processor.cpp @@ -1323,4 +1323,9 @@ void Processor::assume_context(Thread& thread, FlatPtr flags) VERIFY_NOT_REACHED(); } +u64 Processor::time_spent_idle() const +{ + return m_idle_thread->time_in_user() + m_idle_thread->time_in_kernel(); +} + }