Age | Commit message (Collapse) | Author |
|
|
|
|
|
nifm/network_interface: Cleanup and populate fields in GetCurrentNetworkProfile
|
|
vp9_types: Remove unusued VP9 info struct members
|
|
ngct: Stub NGCT:U service
|
|
|
|
|
|
Populates the current_address, subnet_mask, and gateway fields from the selected network interface.
|
|
|
|
|
|
|
|
logging: Display backtrace on crash
|
|
|
|
|
|
|
|
vulkan_device: Add a check for int8 support
|
|
GPU_MemoryManger: Fix GetSubmappedRange.
|
|
Silences validation errors when shaders use int8 without specifying its support to the API
|
|
The log filter was being ignored on initialization due to the logging instance being initialized before the config instance, so the log filter was set to its default value.
This fixes that oversight, along with using descriptive exceptions instead of abort() calls.
|
|
kernel: Optimize GetHostThreadID
|
|
CMakeLists: Ensure proper numerusform tags are generated for pluralized translations
|
|
logging: Simplify and make thread-safe
|
|
translations
If we don't set an explicit source and target language for the base
english translation, then we'll generate an incorrect number of
<numerusform> tags (which Transifex doesn't like).
|
|
The maximum is now 17 with the addition of Brazilian Portuguese
|
|
video_core: eliminate constant ternary
|
|
dynarmic: Update and enable DYNARMIC_IGNORE_ASSERTS
|
|
SPIR-V: Merge two ifs in EmitGetAttribute
|
|
applet_error: Fix 64-bit error code conversion
|
|
|
|
Previously, floats were implicitly cast to integers
|
|
|
|
`via_header_index` is already checked above, so it would never be true in this branch
|
|
|
|
|
|
It was trying to log value of layer_id which is specifically known not to exist, potentially leading to segfault. Log display_id instead.
|
|
Misplaced break made it only check for the first core.
|
|
kernel: Various improvements to scheduler
|
|
Fix LAN Play
|
|
|
|
|
|
|
|
|
|
|
|
decoders: Optimize memcpy for the other functions
|
|
- This would have limited value, and would be a mess to handle properly.
|
|
This fixes a lost wakeup in SPSCQueue. If the reader is in just the right position, the writer's notification will be lost and this will be a problem if the writer then does something to wait on the reader.
This was discovered to affect my upcoming stacktrace PR. I don't think any performance decrease will be noticeable because an uncontended mutex is smart enough to skip the syscall. This PR might also resolve some rare deadlocks but I don't know of any examples.
|
|
This implements backtraces so we don't have to tell users how to use gdb anymore.
This prints a backtrace after abort or segfault is detected. It also fixes the log getting cut off with the last line containing only a bracket. This change lets us know what caused a crash not just what happened the few seconds before it.
I only know how to add support for Linux with GCC. Also this doesn't work outside of C/C++ such as in dynarmic or certain parts of graphics drivers. The good thing is that it'll try and just crash again but the stack frames are still there so the core dump will work just like before.
|
|
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.
|
|
|
|
|