diff options
| author | 2014-05-20 21:02:35 -0400 | |
|---|---|---|
| committer | 2014-05-20 21:02:35 -0400 | |
| commit | 203541da119cad61096fda20b3ff8a8cb5906fd6 (patch) | |
| tree | 317ecfabe4ac120e5f90faf2d970522b2234bf5e /src | |
| parent | thread: exposed ResumeThreadFromWait function for use in other kernel modules (diff) | |
| download | yuzu-203541da119cad61096fda20b3ff8a8cb5906fd6.tar.gz yuzu-203541da119cad61096fda20b3ff8a8cb5906fd6.tar.xz yuzu-203541da119cad61096fda20b3ff8a8cb5906fd6.zip | |
thread: added correct lowest thread priority, added a thread priority check, and added some comments
Diffstat (limited to 'src')
| -rw-r--r-- | src/core/hle/kernel/thread.cpp | 3 | ||||
| -rw-r--r-- | src/core/hle/kernel/thread.h | 13 |
2 files changed, 10 insertions, 6 deletions
diff --git a/src/core/hle/kernel/thread.cpp b/src/core/hle/kernel/thread.cpp index af9188faa..294e03ca6 100644 --- a/src/core/hle/kernel/thread.cpp +++ b/src/core/hle/kernel/thread.cpp | |||
| @@ -223,6 +223,9 @@ void ResumeThreadFromWait(Handle handle) { | |||
| 223 | Thread* CreateThread(Handle& handle, const char* name, u32 entry_point, s32 priority, | 223 | Thread* CreateThread(Handle& handle, const char* name, u32 entry_point, s32 priority, |
| 224 | s32 processor_id, u32 stack_top, int stack_size) { | 224 | s32 processor_id, u32 stack_top, int stack_size) { |
| 225 | 225 | ||
| 226 | _assert_msg_(KERNEL, (priority >= THREADPRIO_HIGHEST && priority <= THREADPRIO_LOWEST), | ||
| 227 | "CreateThread priority=%d, outside of allowable range!", priority) | ||
| 228 | |||
| 226 | Thread* t = new Thread; | 229 | Thread* t = new Thread; |
| 227 | 230 | ||
| 228 | handle = Kernel::g_object_pool.Create(t); | 231 | handle = Kernel::g_object_pool.Create(t); |
diff --git a/src/core/hle/kernel/thread.h b/src/core/hle/kernel/thread.h index bb48ddc79..0d1fe19bf 100644 --- a/src/core/hle/kernel/thread.h +++ b/src/core/hle/kernel/thread.h | |||
| @@ -8,15 +8,16 @@ | |||
| 8 | #include "core/hle/kernel/kernel.h" | 8 | #include "core/hle/kernel/kernel.h" |
| 9 | 9 | ||
| 10 | enum ThreadPriority { | 10 | enum ThreadPriority { |
| 11 | THREADPRIO_HIGHEST = 0, | 11 | THREADPRIO_HIGHEST = 0, ///< Highest thread priority |
| 12 | THREADPRIO_DEFAULT = 16, | 12 | THREADPRIO_DEFAULT = 16, ///< Default thread priority for userland apps |
| 13 | THREADPRIO_LOWEST = 31, | 13 | THREADPRIO_LOW = 31, ///< Low range of thread priority for userland apps |
| 14 | THREADPRIO_LOWEST = 63, ///< Thread priority max checked by svcCreateThread | ||
| 14 | }; | 15 | }; |
| 15 | 16 | ||
| 16 | enum ThreadProcessorId { | 17 | enum ThreadProcessorId { |
| 17 | THREADPROCESSORID_0 = 0xFFFFFFFE, | 18 | THREADPROCESSORID_0 = 0xFFFFFFFE, ///< Enables core appcode |
| 18 | THREADPROCESSORID_1 = 0xFFFFFFFD, | 19 | THREADPROCESSORID_1 = 0xFFFFFFFD, ///< Enables core syscore |
| 19 | THREADPROCESSORID_ALL = 0xFFFFFFFC, | 20 | THREADPROCESSORID_ALL = 0xFFFFFFFC, ///< Enables both cores |
| 20 | }; | 21 | }; |
| 21 | 22 | ||
| 22 | namespace Kernel { | 23 | namespace Kernel { |