diff options
| author | 😄 Amlal El Mahrouss <amlal@nekernel.org> | 2026-03-22 15:34:41 +0100 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2026-03-22 15:34:41 +0100 |
| commit | bc8b05bce61b16daa03a6c4dd0e87f65c608dba3 (patch) | |
| tree | 5f33ff87cb06410eaf8ea741fc4ddd49ab821194 /src/kernel/KernelKit/BinaryMutex.h | |
| parent | 5d11c45b45862ca86e0aee392885e7e6d8d66bfb (diff) | |
| parent | aa548ba47347a67ff64a38dc842f9d0d5d6bf364 (diff) | |
Merge pull request #143 from zer0condition/scheduler-improvements
[KernelKit] scheduler sleep tracking + mutex priority inheritance
Diffstat (limited to 'src/kernel/KernelKit/BinaryMutex.h')
| -rw-r--r-- | src/kernel/KernelKit/BinaryMutex.h | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/src/kernel/KernelKit/BinaryMutex.h b/src/kernel/KernelKit/BinaryMutex.h index 2fb390d3..d97ab854 100644 --- a/src/kernel/KernelKit/BinaryMutex.h +++ b/src/kernel/KernelKit/BinaryMutex.h @@ -8,12 +8,14 @@ #include <CompilerKit/CompilerKit.h> #include <KernelKit/Timer.h> +#include <KernelKit/CoreProcessScheduler.h> #include <NeKit/Config.h> namespace Kernel { class UserProcess; /// @brief Access control class, which locks a task until one is done. +/// Implements priority inheritance to prevent priority inversion. class BinaryMutex final { public: using LockedPtr = UserProcess*; @@ -37,6 +39,7 @@ class BinaryMutex final { private: LockedPtr fLockingProcess{nullptr}; + AffinityKind fOwnerOriginalAffinity{AffinityKind::kInvalid}; // for priority inheritance }; } // namespace Kernel |
