1
0
Fork 0
forked from suyu/suyu
suyu/src/core
yzct12345 001675dced
logging: Simplify and make thread-safe
This simplifies the logging system.

This also fixes some lost messages on startup.

The simplification is simple. I removed unused functions and moved most things in the .h to the .cpp. I replaced the unnecessary linked list with its contents laid out as three member variables. Anything that went through the linked list now directly accesses the backends. Generic functions are replaced with those for each specific use case and there aren't many. This change increases coupling but we gain back more KISS and encapsulation.

With those changes it was easy to make it thread-safe. I just removed the mutex and turned a boolean atomic. I was planning to use this thread-safety in my next PR about stacktraces. It was actually async-signal-safety at first but I ended up using a different approach. Anyway getting rid of the linked list is important for that because have the list of backends constantly changing complicates things.
2021-08-13 18:39:45 +00:00
..
arm settings, arm_dynarmic, yuzu qt: Move CPU debugging option 2021-07-08 16:56:44 -04:00
crypto General: Resolve fmt specifiers to adhere to 8.0.0 API where applicable 2021-06-23 13:48:21 -04:00
file_sys file_sys: Support load game collection (#6582) 2021-07-20 01:10:05 -04:00
frontend applets: Append applet_ prefix to backend applets 2021-07-14 01:07:09 -04:00
hle Merge pull request #6799 from ameerj/vp9-fixes 2021-08-06 17:46:46 -07:00
loader file_sys: Support load game collection (#6582) 2021-07-20 01:10:05 -04:00
memory core: Make variable shadowing a compile-time error 2021-05-16 03:43:16 -04:00
network network: fix ternary operator in Socket::SendTo 2021-08-02 20:12:12 +02:00
tools core: Resolve misc cases of variable shadowing 2021-05-03 01:19:13 -04:00
CMakeLists.txt hle: service: Add a helper module for managing kernel objects. 2021-07-20 18:54:55 -07:00
constants.cpp
constants.h constants: Add missing <array> include 2020-07-16 21:43:20 -04:00
core.cpp logging: Simplify and make thread-safe 2021-08-13 18:39:45 +00:00
core.h logging: Simplify and make thread-safe 2021-08-13 18:39:45 +00:00
core_timing.cpp core: Resolve misc cases of variable shadowing 2021-05-03 01:19:13 -04:00
core_timing.h core: Resolve misc cases of variable shadowing 2021-05-03 01:19:13 -04:00
core_timing_util.h core: core_timing_util: Optimize core timing math. 2021-02-15 14:54:06 -08:00
cpu_manager.cpp core: Make variable shadowing a compile-time error 2021-05-16 03:43:16 -04:00
cpu_manager.h core: Make variable shadowing a compile-time error 2021-05-16 03:43:16 -04:00
device_memory.cpp core: Make use of fastmem 2021-06-11 17:27:06 +02:00
device_memory.h core: Make use of fastmem 2021-06-11 17:27:06 +02:00
hardware_interrupt_manager.cpp service: Append service name prefix to common filenames 2021-07-14 02:09:14 -04:00
hardware_interrupt_manager.h core_timing: Use better reference tracking for EventType. (#3159) 2019-11-26 21:48:56 -05:00
hardware_properties.h kernel: k_light_lock: Simplify EmuThreadHandle implementation. 2021-01-28 21:42:26 -08:00
memory.cpp memory: Address lioncash's review 2021-08-07 03:03:21 +00:00
memory.h memory: Address lioncash's review 2021-08-05 20:29:43 +00:00
perf_stats.cpp general: Rename "Frame Limit" references to "Speed Limit" 2021-07-23 22:10:01 -04:00
perf_stats.h general: Rename "Frame Limit" references to "Speed Limit" 2021-07-23 22:10:01 -04:00
reporter.cpp cmake: Remove shader cache version 2021-07-22 21:51:40 -04:00
reporter.h fsp_srv: Fix filesystem access logging 2021-06-16 00:06:02 -04:00
telemetry_session.cpp Merge pull request #6696 from ameerj/speed-limit-rename 2021-07-26 18:51:00 -07:00
telemetry_session.h patch_manager: Remove usages of the global system instance 2020-11-18 09:36:48 -05:00