1
0
Fork 0
forked from suyu/suyu
suyu/src/core/hle/kernel
balika011 1a5d6de0d4 thread: Make the scheduler pointer a regular pointer
Conceptually, it doesn't make sense for a thread to be able to persist
the lifetime of a scheduler. A scheduler should be taking care of the
threads; the threads should not be taking care of the scheduler.

If the threads outlive the scheduler (or we simply don't actually
terminate/shutdown the threads), then it should be considered a bug
that we need to fix.

Attributing this to balika011, as they opened #1317 to attempt to fix
this in a similar way, but my refactoring of the kernel code caused
quite a few conflicts.
2018-10-05 14:53:01 -04:00
..
address_arbiter.cpp kernel/thread: Make all instance variables private 2018-10-04 00:14:15 -04:00
address_arbiter.h kernel: Remove unnecessary includes 2018-07-31 10:15:17 -04:00
client_port.cpp kernel: Eliminate kernel global state 2018-08-28 22:31:51 -04:00
client_port.h kernel: Eliminate kernel global state 2018-08-28 22:31:51 -04:00
client_session.cpp kernel: Eliminate kernel global state 2018-08-28 22:31:51 -04:00
client_session.h kernel: Eliminate kernel global state 2018-08-28 22:31:51 -04:00
errors.h kernel/svc: Implement svcGetThreadContext() 2018-09-30 05:29:40 -04:00
event.cpp kernel: Eliminate kernel global state 2018-08-28 22:31:51 -04:00
event.h kernel: Eliminate kernel global state 2018-08-28 22:31:51 -04:00
handle_table.cpp Port #4182 from Citra: "Prefix all size_t with std::" 2018-09-15 15:21:06 +02:00
handle_table.h Port #4182 from Citra: "Prefix all size_t with std::" 2018-09-15 15:21:06 +02:00
hle_ipc.cpp kernel/thread: Make all instance variables private 2018-10-04 00:14:15 -04:00
hle_ipc.h Port #4182 from Citra: "Prefix all size_t with std::" 2018-09-15 15:21:06 +02:00
kernel.cpp kernel/thread: Make all instance variables private 2018-10-04 00:14:15 -04:00
kernel.h core: Migrate current_process pointer to the kernel 2018-09-06 20:52:58 -04:00
mutex.cpp kernel/thread: Make all instance variables private 2018-10-04 00:14:15 -04:00
mutex.h kernel: Eliminate kernel global state 2018-08-28 22:31:51 -04:00
object.cpp kernel: Eliminate kernel global state 2018-08-28 22:31:51 -04:00
object.h kernel/object: Remove unnecessary std::move from DynamicObjectCast() 2018-09-28 02:17:57 -04:00
process.cpp kernel/thread: Make all instance variables private 2018-10-04 00:14:15 -04:00
process.h kernel/process: Add a data member to determine if a process is 64-bit or not. 2018-09-30 05:29:40 -04:00
resource_limit.cpp kernel: Eliminate kernel global state 2018-08-28 22:31:51 -04:00
resource_limit.h kernel: Eliminate kernel global state 2018-08-28 22:31:51 -04:00
scheduler.cpp kernel/thread: Make all instance variables private 2018-10-04 00:14:15 -04:00
scheduler.h kernel/scheduler: Take ARM_Interface instance by reference in the constructor 2018-09-25 16:00:17 -04:00
server_port.cpp kernel: Eliminate kernel global state 2018-08-28 22:31:51 -04:00
server_port.h kernel: Eliminate kernel global state 2018-08-28 22:31:51 -04:00
server_session.cpp kernel/thread: Make all instance variables private 2018-10-04 00:14:15 -04:00
server_session.h kernel: Eliminate kernel global state 2018-08-28 22:31:51 -04:00
session.cpp Format: Run the new clang format on everything 2018-01-20 16:45:11 -07:00
session.h kernel: Move object class to its own source files 2018-08-01 23:34:42 -04:00
shared_memory.cpp kernel/process: Make data member variables private 2018-09-30 02:30:01 -04:00
shared_memory.h Port #4182 from Citra: "Prefix all size_t with std::" 2018-09-15 15:21:06 +02:00
svc.cpp kernel/thread: Make all instance variables private 2018-10-04 00:14:15 -04:00
svc.h Add & correct miscellaneous things (#470) 2018-05-25 22:31:54 -04:00
svc_wrap.h kernel/svc: Implement svcGetThreadContext() 2018-09-30 05:29:40 -04:00
thread.cpp thread: Make the scheduler pointer a regular pointer 2018-10-05 14:53:01 -04:00
thread.h thread: Make the scheduler pointer a regular pointer 2018-10-05 14:53:01 -04:00
timer.cpp kernel: Eliminate kernel global state 2018-08-28 22:31:51 -04:00
timer.h kernel: Eliminate kernel global state 2018-08-28 22:31:51 -04:00
vm_manager.cpp svc: Report correct memory-related values within some of the cases in svcGetInfo() 2018-09-24 22:16:03 -04:00
vm_manager.h svc: Report correct memory-related values within some of the cases in svcGetInfo() 2018-09-24 22:16:03 -04:00
wait_object.cpp kernel/thread: Make all instance variables private 2018-10-04 00:14:15 -04:00
wait_object.h kernel/object: Remove unnecessary std::move from DynamicObjectCast() 2018-09-28 02:17:57 -04:00