kernel/thread: Make thread_id a 64-bit value
The kernel uses a 64-bit value for the thread ID, so we shouldn't be using a 32-bit value.
This commit is contained in:
		| @@ -201,11 +201,11 @@ void RegisterModule(std::string name, VAddr beg, VAddr end, bool add_elf_ext) { | ||||
|     modules.push_back(std::move(module)); | ||||
| } | ||||
|  | ||||
| static Kernel::Thread* FindThreadById(int id) { | ||||
| static Kernel::Thread* FindThreadById(s64 id) { | ||||
|     for (u32 core = 0; core < Core::NUM_CPU_CORES; core++) { | ||||
|         const auto& threads = Core::System::GetInstance().Scheduler(core).GetThreadList(); | ||||
|         for (auto& thread : threads) { | ||||
|             if (thread->GetThreadID() == static_cast<u32>(id)) { | ||||
|             if (thread->GetThreadID() == static_cast<u64>(id)) { | ||||
|                 current_core = core; | ||||
|                 return thread.get(); | ||||
|             } | ||||
|   | ||||
| @@ -156,7 +156,7 @@ struct KernelCore::Impl { | ||||
|     // 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<u32> next_thread_id{1}; | ||||
|     std::atomic<u64> next_thread_id{1}; | ||||
|  | ||||
|     // Lists all processes that exist in the current session. | ||||
|     std::vector<SharedPtr<Process>> process_list; | ||||
| @@ -242,7 +242,7 @@ u32 KernelCore::CreateNewObjectID() { | ||||
|     return impl->next_object_id++; | ||||
| } | ||||
|  | ||||
| u32 KernelCore::CreateNewThreadID() { | ||||
| u64 KernelCore::CreateNewThreadID() { | ||||
|     return impl->next_thread_id++; | ||||
| } | ||||
|  | ||||
|   | ||||
| @@ -91,7 +91,7 @@ private: | ||||
|     u64 CreateNewProcessID(); | ||||
|  | ||||
|     /// Creates a new thread ID, incrementing the internal thread ID counter. | ||||
|     u32 CreateNewThreadID(); | ||||
|     u64 CreateNewThreadID(); | ||||
|  | ||||
|     /// Creates a timer callback handle for the given timer. | ||||
|     ResultVal<Handle> CreateTimerCallbackHandle(const SharedPtr<Timer>& timer); | ||||
|   | ||||
| @@ -151,7 +151,7 @@ public: | ||||
|      * Gets the thread's thread ID | ||||
|      * @return The thread's ID | ||||
|      */ | ||||
|     u32 GetThreadID() const { | ||||
|     u64 GetThreadID() const { | ||||
|         return thread_id; | ||||
|     } | ||||
|  | ||||
| @@ -379,7 +379,7 @@ private: | ||||
|  | ||||
|     Core::ARM_Interface::ThreadContext context{}; | ||||
|  | ||||
|     u32 thread_id = 0; | ||||
|     u64 thread_id = 0; | ||||
|  | ||||
|     ThreadStatus status = ThreadStatus::Dormant; | ||||
|  | ||||
|   | ||||
		Reference in New Issue
	
	Block a user
	 Lioncash
					Lioncash