diff options
| author | Nathan Wong <nathan@wongsoft.com> | 2026-01-13 16:38:22 -0800 |
|---|---|---|
| committer | Nathan Wong <nathan@wongsoft.com> | 2026-01-13 16:38:22 -0800 |
| commit | bd9d682d154ceb4b6d4a9b129eacce16757219b3 (patch) | |
| tree | 3e07eddbf2edafd325169b137b7758a4374d3976 /core | |
| parent | 9d72025a0b6f7b94682662316b892ece865ad8aa (diff) | |
Ensure creating a low priority thread does not assert with SCHED_OTHER policy
Diffstat (limited to 'core')
| -rw-r--r-- | core/thread/thread_unix.odin | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/core/thread/thread_unix.odin b/core/thread/thread_unix.odin index e18ea593d..af2a4a3c1 100644 --- a/core/thread/thread_unix.odin +++ b/core/thread/thread_unix.odin @@ -107,7 +107,11 @@ _create :: proc(procedure: Thread_Proc, priority: Thread_Priority) -> ^Thread { high := posix.sched_get_priority_max(policy) switch priority { case .Normal: // Okay - case .Low: params.sched_priority = low + 1 + case .Low: + params.sched_priority = low + 1 + if params.sched_priority >= high { + params.sched_priority = low + } case .High: params.sched_priority = high } res = posix.pthread_attr_setschedparam(&attrs, ¶ms) |