1
0
Fork 0
forked from suyu/suyu
suyu/src/core/hle/kernel
Lioncash 3476f5b4d3 kernel/object: Tighten object against data races
Despite being covered by a global mutex, we should still ensure that the
class handles its reference counts properly. This avoids potential
shenanigans when it comes to data races.

Given this is the root object that drives quite a bit of the kernel
object hierarchy, ensuring we always have the correct behavior (and no
races) is a good thing.
2018-08-13 00:16:40 -04:00
..
address_arbiter.cpp address_arbiter: Return by value from GetThreadsWaitingOnAddress() 2018-08-05 16:29:17 -04:00
address_arbiter.h kernel: Remove unnecessary includes 2018-07-31 10:15:17 -04:00
client_port.cpp client_port: Make all data members private 2018-08-06 23:05:17 -04:00
client_port.h client_port: Make all data members private 2018-08-06 23:05:17 -04:00
client_session.cpp kernel: Remove unnecessary includes 2018-07-31 10:15:17 -04:00
client_session.h kernel: Move object class to its own source files 2018-08-01 23:34:42 -04:00
errors.h Kernel/Arbiters: Implement WaitForAddress 2018-06-21 01:40:29 -06:00
event.cpp kernel: Move object class to its own source files 2018-08-01 23:34:42 -04:00
event.h kernel/event: Make data members private 2018-08-06 12:53:02 -04:00
handle_table.cpp kernel: Move object class to its own source files 2018-08-01 23:34:42 -04:00
handle_table.h kernel: Move object class to its own source files 2018-08-01 23:34:42 -04:00
hle_ipc.cpp hle_ipc: Make WriteToOutgoingCommandBuffer()'s reference parameter const 2018-08-09 02:51:38 -04:00
hle_ipc.h hle_ipc: Make WriteToOutgoingCommandBuffer()'s reference parameter const 2018-08-09 02:51:38 -04:00
kernel.cpp kernel/object: Tighten object against data races 2018-08-13 00:16:40 -04:00
kernel.h core/memory: Get rid of 3DS leftovers 2018-08-03 11:22:47 -04:00
mutex.cpp kernel: Move object class to its own source files 2018-08-01 23:34:42 -04:00
mutex.h kernel: Move object class to its own source files 2018-08-01 23:34:42 -04:00
object.cpp kernel: Move object class to its own source files 2018-08-01 23:34:42 -04:00
object.h kernel/object: Tighten object against data races 2018-08-13 00:16:40 -04:00
process.cpp kernel/process: Use accessors instead of class members for referencing segment array 2018-08-03 14:45:45 -04:00
process.h kernel/process: Use std::array where applicable 2018-08-03 14:46:30 -04:00
resource_limit.cpp Rename logging macro back to LOG_* 2018-07-02 21:45:47 -04:00
resource_limit.h kernel: Move object class to its own source files 2018-08-01 23:34:42 -04:00
scheduler.cpp scheduler: Make HaveReadyThreads() a const member function 2018-08-12 12:55:58 -04:00
scheduler.h scheduler: Make HaveReadyThreads() a const member function 2018-08-12 12:55:58 -04:00
server_port.cpp kernel: Move object class to its own source files 2018-08-01 23:34:42 -04:00
server_port.h kernel: Move object class to its own source files 2018-08-01 23:34:42 -04:00
server_session.cpp server_session: Provide more useful information and don't crash on bad IPC request. 2018-08-11 21:15:24 -04:00
server_session.h kernel: Move object class to its own source files 2018-08-01 23:34:42 -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/thread: Fix potential crashes introduced in 26de4bb521 2018-08-03 23:49:10 -04:00
shared_memory.h core/memory: Get rid of 3DS leftovers 2018-08-03 11:22:47 -04:00
svc.cpp Merge pull request #1043 from Subv/timing 2018-08-12 22:31:55 -04:00
svc.h Add & correct miscellaneous things (#470) 2018-05-25 22:31:54 -04:00
svc_wrap.h Add additional missing format. 2018-06-21 21:09:51 -06:00
thread.cpp Merge pull request #1042 from Subv/races 2018-08-12 22:05:48 -04:00
thread.h kernel/thread: Fix potential crashes introduced in 26de4bb521 2018-08-03 23:49:10 -04:00
timer.cpp kernel: Move object class to its own source files 2018-08-01 23:34:42 -04:00
timer.h kernel: Move object class to its own source files 2018-08-01 23:34:42 -04:00
vm_manager.cpp kernel/vm_manager: Convert loop into std::any_of() 2018-08-02 12:46:15 -04:00
vm_manager.h kernel/vm_manager: Use const where applicable 2018-08-02 12:21:46 -04:00
wait_object.cpp kernel: Move object class to its own source files 2018-08-01 23:34:42 -04:00
wait_object.h kernel: Move object class to its own source files 2018-08-01 23:34:42 -04:00