liamwhite
d3da1e6517
Merge pull request #10990 from comex/ubsan
...
Fixes and workarounds to make UBSan happier on macOS
2023-07-26 10:33:28 -04:00
liamwhite
6ffcc3d5d2
Merge pull request #11142 from german77/avoid_crash
...
yuzu: Avoid reading broken games
2023-07-26 10:33:14 -04:00
Morph
4742627744
Merge pull request #11157 from lat9nq/nasm
...
cmake: Download nasm from our external repo
2023-07-25 13:35:02 -04:00
lat9nq
43920aa1a0
cmake: Download nasm from our external repo
...
This package download has intermittent failures due to host Internet
issues (presumably), so download it ourselves from our own hosting.
2023-07-25 15:47:44 -04:00
liamwhite
18000df5e9
Merge pull request #11095 from liamwhite/memory2
...
memory: cleanup
2023-07-24 13:47:11 -04:00
liamwhite
bb0edb53ae
Merge pull request #11135 from liamwhite/getaddrinfo
...
core: implement GetGaiStringErrorRequest, IContextRegistrar
2023-07-24 13:47:02 -04:00
liamwhite
099295d7c6
Merge pull request #11136 from liamwhite/sp3shader
...
ssa_rewrite_pass: use proper maps
2023-07-24 13:46:53 -04:00
german77
a0ed0e4e10
yuzu: Avoid reading broken games
2023-07-24 08:59:14 -06:00
Liam
dad0d076ee
ssa_rewrite_pass: use proper maps
2023-07-23 11:38:01 -04:00
Liam
3e3294e1c2
core: implement GetGaiStringErrorRequest, IContextRegistrar
2023-07-22 23:29:45 -04:00
Liam
9f3f615e05
core: reduce TOCTTOU memory access
2023-07-22 11:19:29 -04:00
Liam
d144168442
memory: minimize dependency on process
2023-07-22 11:19:29 -04:00
liamwhite
3e4029b238
Merge pull request #11042 from lat9nq/wayland-appimage
...
ci/linux: Target deploy script from appimage path
2023-07-22 11:17:48 -04:00
liamwhite
b1aed2c5b7
Merge pull request #11094 from liamwhite/get
...
kernel: misc cleanup of page table accessors
2023-07-22 11:17:36 -04:00
liamwhite
0ea138fb5b
Merge pull request #11098 from GPUCode/texel-buffers
...
buffer_cache: Increase number of texture buffers
2023-07-22 11:17:27 -04:00
bunnei
482c957f5d
Merge pull request #11113 from liamwhite/nsd1
...
nsd: add GetApplicationServerEnvironmentType
2023-07-21 21:24:36 -07:00
bunnei
39edd2ff82
Merge pull request #11129 from liamwhite/dynamic_cast
...
general: remove uses of dynamic_cast
2023-07-21 21:22:51 -07:00
Liam
05bc024260
core: remove remaining uses of dynamic_cast
2023-07-21 19:37:29 -04:00
Liam
4bee333d84
general: reduce use of dynamic_cast
2023-07-21 19:22:14 -04:00
liamwhite
efda6cc9ec
Merge pull request #11123 from Morph1984/remove-mem-hungry-opts
...
ci: Remove GA, Gr optimizations from MSVC
2023-07-21 15:06:07 -04:00
liamwhite
8927f016e1
Merge pull request #11069 from lat9nq/mingw-no-tzdb
...
common: Use arithmetic instead of string ops to get time zone
2023-07-21 15:05:59 -04:00
liamwhite
c0202da9ac
Merge pull request #11096 from german77/amiibooo
...
service: nfc: Update Implementation to match with latest RE
2023-07-21 09:21:48 -04:00
Morph
7fc5ef68d2
ci: Remove GA, Gr optimizations from MSVC
...
Internal testing has shown these result in higher committed memory usage in some systems.
Also Ob2 is already implied by O2, so that can be removed as well.
2023-07-21 01:30:43 -04:00
liamwhite
014ca709c9
Merge pull request #11116 from lat9nq/clang-shadowing
...
general: Silence -Wshadow{,-uncaptured-local} warnings
2023-07-19 17:14:55 -04:00
liamwhite
86bbfe3b1d
Merge pull request #11114 from Kelebek1/warnings
...
Mark SetIdleTimeDetectionExtension logging as debug
2023-07-19 17:14:45 -04:00
lat9nq
1ab3bd5a5e
demangle: Update to llvm/llvm-project@ecbc812e0c
2023-07-18 22:39:26 -04:00
lat9nq
c1e57ad358
CMake: Require LLVM 17 or later
...
API changes necessitate an update here.
2023-07-18 22:39:13 -04:00
lat9nq
4ecedc4991
vk_buffer_cache: Format
2023-07-18 19:56:20 -04:00
lat9nq
71b3b2a2f0
general: Silence -Wshadow{,-uncaptured-local} warnings
...
These occur in the latest commits in LLVM Clang.
2023-07-18 19:31:35 -04:00
Kelebek1
80cd67ed7b
Debug SetIdleTimeDetectionExtension
2023-07-18 10:16:14 +01:00
Morph
3fded314f2
Merge pull request #11109 from Morph1984/net
...
network: Fix compilation with ENABLE_WEB_SERVICE=OFF
2023-07-17 23:57:39 -04:00
Liam
8f1d48fda6
nsd: add GetApplicationServerEnvironmentType
2023-07-17 21:34:23 -04:00
Morph
16c238e4b9
ssl: Link with crypt32 for secure channel backend
2023-07-17 15:46:24 -04:00
Morph
e0fb1d3d17
ssl: Reorder inclusions
2023-07-17 15:46:24 -04:00
Morph
5bbc3aef13
network: Forward declarations
2023-07-17 15:36:03 -04:00
Narr the Reg
54f150b70a
service: nfc: Update Implementation to match with latest RE
2023-07-17 11:24:23 -06:00
liamwhite
5593bed08a
Merge pull request #10934 from abouvier/cmake-vma
...
cmake: allow using system VMA library
2023-07-17 10:42:41 -04:00
liamwhite
8750564bd2
Merge pull request #11102 from v1993/your-mom-is-encrypted
...
android: fix links to re-dumping guides
2023-07-17 10:42:31 -04:00
liamwhite
2461c78e3f
Merge pull request #10912 from comex/ssl
...
Implement SSL service
2023-07-16 16:56:47 -04:00
Valeri Ochinski
50fe45f1e4
android: fix links to re-dumping guides
2023-07-16 20:22:27 +03:00
GPUCode
4347dd26c6
buffer_cache: Increase number of texture buffers
2023-07-15 23:09:58 +03:00
comex
d7c532d889
Fixes and workarounds to make UBSan happier on macOS
...
There are still some other issues not addressed here, but it's a start.
Workarounds for false-positive reports:
- `RasterizerAccelerated`: Put a gigantic array behind a `unique_ptr`,
because UBSan has a [hardcoded limit](https://stackoverflow.com/questions/64531383/c-runtime-error-using-fsanitize-undefined-object-has-a-possibly-invalid-vp )
of how big it thinks objects can be, specifically when dealing with
offset-to-top values used with multiple inheritance. Hopefully this
doesn't have a performance impact.
- `QueryCacheBase::QueryCacheBase`: Avoid an operation that UBSan thinks
is UB even though it at least arguably isn't. See the link in the
comment for more information.
Fixes for correct reports:
- `PageTable`, `Memory`: Use `uintptr_t` values instead of pointers to
avoid UB from pointer overflow (when pointer arithmetic wraps around
the address space).
- `KScheduler::Reload`: `thread->GetOwnerProcess()` can be `nullptr`;
avoid calling methods on it in this case. (The existing code returns
a garbage reference to a field, which is then passed into
`LoadWatchpointArray`, and apparently it's never used, so it's
harmless in practice but still triggers UBSan.)
- `KAutoObject::Close`: This function calls `this->Destroy()`, which
overwrites the beginning of the object with junk (specifically a free
list pointer). Then it calls `this->UnregisterWithKernel()`. UBSan
complains about a type mismatch because the vtable has been
overwritten, and I believe this is indeed UB. `UnregisterWithKernel`
also loads `m_kernel` from the 'freed' object, which seems to be
technically safe (the overwriting doesn't extend as far as that
field), but seems dubious. Switch to a `static` method and load
`m_kernel` in advance.
2023-07-15 12:00:28 -07:00
Liam
474db2d8da
kernel: reduce page table region checking
2023-07-14 22:33:10 -04:00
Liam
a85ce8ea56
k_process: PageTable -> GetPageTable
2023-07-14 21:43:15 -04:00
Tobias
04868ab9da
file_sys/content_archive: Detect compressed NCAs ( #11047 )
2023-07-12 23:17:18 +02:00
lat9nq
63a0a1f826
time_zone: Clean up includes
2023-07-12 03:03:03 -04:00
lat9nq
9e0d6f7d54
time_zone: Swap subtraction order
2023-07-12 03:02:45 -04:00
lat9nq
13755c0903
time_zone: Account for leap years
...
Protects against invalid hour offsets during transitions to years
following leap years.
2023-07-12 02:34:02 -04:00
Alexandre Bouvier
c3050c1b48
cmake: allow using system VMA library
2023-07-12 04:51:45 +02:00
bunnei
28598c9090
Merge pull request #10985 from liamwhite/handle-translate
...
k_server_session: translate special header for non-HLE requests
2023-07-11 16:49:24 -07:00