diff options
author | Lioncash <mathew1800@gmail.com> | 2018-12-19 04:53:58 +0100 |
---|---|---|
committer | Lioncash <mathew1800@gmail.com> | 2018-12-19 04:54:01 +0100 |
commit | 62d437705367421a1b919922f1ecf3c4a43d75c5 (patch) | |
tree | 51530d41b1c101b0872d32b792570409c4485824 | |
parent | kernel/svc: Correct output parameter for svcGetThreadId (diff) | |
download | yuzu-62d437705367421a1b919922f1ecf3c4a43d75c5.tar yuzu-62d437705367421a1b919922f1ecf3c4a43d75c5.tar.gz yuzu-62d437705367421a1b919922f1ecf3c4a43d75c5.tar.bz2 yuzu-62d437705367421a1b919922f1ecf3c4a43d75c5.tar.lz yuzu-62d437705367421a1b919922f1ecf3c4a43d75c5.tar.xz yuzu-62d437705367421a1b919922f1ecf3c4a43d75c5.tar.zst yuzu-62d437705367421a1b919922f1ecf3c4a43d75c5.zip |
-rw-r--r-- | src/core/hle/kernel/kernel.cpp | 6 | ||||
-rw-r--r-- | src/core/hle/kernel/process.h | 12 |
2 files changed, 14 insertions, 4 deletions
diff --git a/src/core/hle/kernel/kernel.cpp b/src/core/hle/kernel/kernel.cpp index 2be39fb52..1c2290651 100644 --- a/src/core/hle/kernel/kernel.cpp +++ b/src/core/hle/kernel/kernel.cpp @@ -112,7 +112,7 @@ struct KernelCore::Impl { void Shutdown() { next_object_id = 0; - next_process_id = 10; + next_process_id = Process::ProcessIDMin; next_thread_id = 1; process_list.clear(); @@ -153,9 +153,7 @@ struct KernelCore::Impl { } std::atomic<u32> next_object_id{0}; - // TODO(Subv): Start the process ids from 10 for now, as lower PIDs are - // reserved for low-level services - std::atomic<u64> next_process_id{10}; + std::atomic<u64> next_process_id{Process::ProcessIDMin}; std::atomic<u64> next_thread_id{1}; // Lists all processes that exist in the current session. diff --git a/src/core/hle/kernel/process.h b/src/core/hle/kernel/process.h index 725bfa01a..7da367251 100644 --- a/src/core/hle/kernel/process.h +++ b/src/core/hle/kernel/process.h @@ -120,6 +120,18 @@ struct CodeSet final { class Process final : public WaitObject { public: + enum : u64 { + /// Lowest allowed process ID for a kernel initial process. + InitialKIPIDMin = 1, + /// Highest allowed process ID for a kernel initial process. + InitialKIPIDMax = 80, + + /// Lowest allowed process ID for a userland process. + ProcessIDMin = 81, + /// Highest allowed process ID for a userland process. + ProcessIDMax = 0xFFFFFFFFFFFFFFFF, + }; + static constexpr std::size_t RANDOM_ENTROPY_SIZE = 4; static SharedPtr<Process> Create(KernelCore& kernel, std::string&& name); |