summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorLiam <byteslice@airmail.cc>2023-02-23 03:40:53 +0100
committerLiam <byteslice@airmail.cc>2023-03-01 16:42:45 +0100
commit9f9b64cda2079a1aebf2c4a12fc20c24891c23c9 (patch)
treec9697c325ae6f1271b627ab7c93c5c84c2f9a13a
parentkernel: adjust pool allocations (diff)
downloadyuzu-9f9b64cda2079a1aebf2c4a12fc20c24891c23c9.tar
yuzu-9f9b64cda2079a1aebf2c4a12fc20c24891c23c9.tar.gz
yuzu-9f9b64cda2079a1aebf2c4a12fc20c24891c23c9.tar.bz2
yuzu-9f9b64cda2079a1aebf2c4a12fc20c24891c23c9.tar.lz
yuzu-9f9b64cda2079a1aebf2c4a12fc20c24891c23c9.tar.xz
yuzu-9f9b64cda2079a1aebf2c4a12fc20c24891c23c9.tar.zst
yuzu-9f9b64cda2079a1aebf2c4a12fc20c24891c23c9.zip
-rw-r--r--src/core/hle/kernel/k_address_arbiter.cpp8
-rw-r--r--src/core/hle/kernel/k_condition_variable.cpp4
2 files changed, 9 insertions, 3 deletions
diff --git a/src/core/hle/kernel/k_address_arbiter.cpp b/src/core/hle/kernel/k_address_arbiter.cpp
index a442a3b98..fb86451ea 100644
--- a/src/core/hle/kernel/k_address_arbiter.cpp
+++ b/src/core/hle/kernel/k_address_arbiter.cpp
@@ -29,7 +29,9 @@ bool DecrementIfLessThan(Core::System& system, s32* out, VAddr address, s32 valu
auto& monitor = system.Monitor();
const auto current_core = system.Kernel().CurrentPhysicalCoreIndex();
- // TODO(bunnei): We should disable interrupts here via KScopedInterruptDisable.
+ // NOTE: If scheduler lock is not held here, interrupt disable is required.
+ // KScopedInterruptDisable di;
+
// TODO(bunnei): We should call CanAccessAtomic(..) here.
// Load the value from the address.
@@ -59,7 +61,9 @@ bool UpdateIfEqual(Core::System& system, s32* out, VAddr address, s32 value, s32
auto& monitor = system.Monitor();
const auto current_core = system.Kernel().CurrentPhysicalCoreIndex();
- // TODO(bunnei): We should disable interrupts here via KScopedInterruptDisable.
+ // NOTE: If scheduler lock is not held here, interrupt disable is required.
+ // KScopedInterruptDisable di;
+
// TODO(bunnei): We should call CanAccessAtomic(..) here.
// Load the value from the address.
diff --git a/src/core/hle/kernel/k_condition_variable.cpp b/src/core/hle/kernel/k_condition_variable.cpp
index 3f0be1c3f..50a805296 100644
--- a/src/core/hle/kernel/k_condition_variable.cpp
+++ b/src/core/hle/kernel/k_condition_variable.cpp
@@ -198,7 +198,9 @@ void KConditionVariable::SignalImpl(KThread* thread) {
u32 prev_tag{};
bool can_access{};
{
- // TODO(bunnei): We should disable interrupts here via KScopedInterruptDisable.
+ // NOTE: If scheduler lock is not held here, interrupt disable is required.
+ // KScopedInterruptDisable di;
+
// TODO(bunnei): We should call CanAccessAtomic(..) here.
can_access = true;
if (can_access) [[likely]] {