svc: Specify handle value in thread's name
Allows the handle to be seen alongside the entry point.
This commit is contained in:
parent
09caf8a756
commit
3283aa1e20
2 changed files with 10 additions and 2 deletions
|
@ -1244,10 +1244,9 @@ static ResultCode CreateThread(Core::System& system, Handle* out_handle, VAddr e
|
||||||
return ERR_INVALID_THREAD_PRIORITY;
|
return ERR_INVALID_THREAD_PRIORITY;
|
||||||
}
|
}
|
||||||
|
|
||||||
const std::string name = fmt::format("thread-{:X}", entry_point);
|
|
||||||
auto& kernel = system.Kernel();
|
auto& kernel = system.Kernel();
|
||||||
CASCADE_RESULT(SharedPtr<Thread> thread,
|
CASCADE_RESULT(SharedPtr<Thread> thread,
|
||||||
Thread::Create(kernel, name, entry_point, priority, arg, processor_id, stack_top,
|
Thread::Create(kernel, "", entry_point, priority, arg, processor_id, stack_top,
|
||||||
*current_process));
|
*current_process));
|
||||||
|
|
||||||
const auto new_thread_handle = current_process->GetHandleTable().Create(thread);
|
const auto new_thread_handle = current_process->GetHandleTable().Create(thread);
|
||||||
|
@ -1258,6 +1257,10 @@ static ResultCode CreateThread(Core::System& system, Handle* out_handle, VAddr e
|
||||||
}
|
}
|
||||||
*out_handle = *new_thread_handle;
|
*out_handle = *new_thread_handle;
|
||||||
|
|
||||||
|
// Set the thread name for debugging purposes.
|
||||||
|
thread->SetName(
|
||||||
|
fmt::format("thread[entry_point={:X}, handle={:X}]", entry_point, *new_thread_handle));
|
||||||
|
|
||||||
system.CpuCore(thread->GetProcessorID()).PrepareReschedule();
|
system.CpuCore(thread->GetProcessorID()).PrepareReschedule();
|
||||||
|
|
||||||
return RESULT_SUCCESS;
|
return RESULT_SUCCESS;
|
||||||
|
|
|
@ -102,6 +102,11 @@ public:
|
||||||
std::string GetName() const override {
|
std::string GetName() const override {
|
||||||
return name;
|
return name;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void SetName(std::string new_name) {
|
||||||
|
name = std::move(new_name);
|
||||||
|
}
|
||||||
|
|
||||||
std::string GetTypeName() const override {
|
std::string GetTypeName() const override {
|
||||||
return "Thread";
|
return "Thread";
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in a new issue