Liam
0cd9d51e06
sockets: avoid locking around socket session calls
2023-08-19 23:09:35 -04:00
liamwhite
314d3858a1
Merge pull request #11288 from liamwhite/svc-tick
...
kernel: remove relative task registration
2023-08-18 09:12:19 -04:00
Liam
8be3a041e0
file_sys/card_image: support dumps with prepended key area
2023-08-17 22:03:47 -04:00
Liam
775bf8e215
file_sys: tolerate empty NCA
2023-08-16 16:30:41 -04:00
comex
755bcc459b
Improve behavior when sending to closed connection
...
- On Unix, this would previously kill the Yuzu process with SIGPIPE.
Send MSG_NOSIGNAL to opt out of this.
- Add support for the proper error code in this situation, EPIPE.
- Windows has nonstandard behavior in this situation; translate it to
the standard behavior. Kind of pointless, but isn't it nice to be
correct?
2023-08-15 20:59:57 -04:00
Liam
50eee9b218
fssystem: rework for yuzu style
2023-08-15 17:47:40 -04:00
Liam
0398b34370
fssystem: reduce overalignment of unbuffered storage operations
2023-08-15 17:47:25 -04:00
Liam
86f6b6b7b2
vfs: expand support for NCA reading
2023-08-15 17:47:25 -04:00
Fernando S
a8c4f01f6c
Merge pull request #11287 from liamwhite/replaced-bytes
...
gdbstub: fixup replaced instruction bytes in memory reads
2023-08-15 15:36:14 +02:00
bunnei
6d665a94ea
Merge pull request #11256 from FearlessTobi/revert-10075
...
Partially Revert "Silence nifm spam"
2023-08-14 16:28:13 -07:00
Liam
0bd9a4456c
kernel: remove relative task registration
2023-08-14 18:12:06 -04:00
Liam
fbda084acb
gdbstub: fixup replaced instruction bytes in memory reads
2023-08-14 16:33:27 -04:00
FearlessTobi
2694f81462
Revert "Silence nifm spam"
...
This reverts commit 4da4ecb1ff
.
2023-08-14 21:23:09 +02:00
liamwhite
c1016b68ae
Merge pull request #11281 from liamwhite/vi-scale-mode
...
nvnflinger: add missing scale mode
2023-08-14 09:19:03 -04:00
liamwhite
b30df50076
Merge pull request #11259 from german77/hid
...
service: hid: Implement functions needed by QLaunch
2023-08-14 09:18:55 -04:00
Liam
7351884588
nvnflinger: add missing scale mode
2023-08-13 13:57:02 -04:00
Liam
8b98c4e5a0
ssl_backend_securetransport: remove stray .Code()
2023-08-11 23:32:46 -04:00
liamwhite
640f7cd945
Merge pull request #11253 from liamwhite/i-hate-this-toolchain
...
general: fix apple clang build
2023-08-11 16:53:20 -04:00
Narr the Reg
bdd96118d1
service: hid: Implement functions needed by QLaunch
2023-08-11 10:13:21 -06:00
bunnei
9d3a293a4e
Merge pull request #11093 from liamwhite/result-ergonomics
...
core: remove ResultVal type
2023-08-09 21:24:31 -07:00
Liam
023b9b38cc
general: fix apple clang build
2023-08-09 22:38:37 -04:00
Narr the Reg
6a43aff745
service: pctl: Partially revert 11221
2023-08-08 16:52:21 -06:00
Liam
1e394c6cdf
fs: return result on null outputs
2023-08-08 16:12:04 -04:00
Liam
37b278a9a8
general: fix incorrect conversions
2023-08-08 11:09:37 -04:00
Liam
83eee1d226
ssl: remove ResultVal use
2023-08-08 11:09:37 -04:00
Liam
84cb20bc72
core: remove ResultVal type
2023-08-08 11:09:37 -04:00
liamwhite
7f55c377b0
Merge pull request #11217 from german77/olsc
...
service: olsc: Implement IOlscServiceForSystemService ITransferTaskListController interfaces for QLaunch
2023-08-07 11:34:14 -04:00
liamwhite
9893a4d918
Merge pull request #11221 from german77/pctl
...
service: pctl: Implement functions needed for QLaunch
2023-08-07 11:34:07 -04:00
german77
8d2f0dc707
service: audctl: Stub functions needed by Qlaunch
2023-08-05 20:16:26 -06:00
german77
089e385944
service: olsc: Implement IOlscServiceForSystemService ITransferTaskListController interfaces for QLaunch
2023-08-05 11:47:51 -06:00
german77
0d470b57ed
service: pctl: Implement functions needed for QLaunch
2023-08-05 11:27:41 -06:00
liamwhite
00d9a9c44e
Merge pull request #11210 from german77/settings
...
service: set: Implement system settings for Qlaunch
2023-08-05 12:58:32 -04:00
Narr the Reg
7707768f80
service: set: Add more system settings and address comments
2023-08-04 17:20:40 -06:00
Narr the Reg
4bd4a95d84
service: set: Implement system settings for Qlaunch
2023-08-02 22:33:42 -06:00
Narr the Reg
dd1cbd9c56
service: am: Fix wrong interface
2023-08-02 13:00:30 -06:00
liamwhite
fca7d975fd
Merge pull request #10839 from lat9nq/pgc-plus
...
general: Reimplement per-game configurations
2023-08-02 14:25:52 -04:00
Morph
9bca45aa15
audren_u: Fix parameter alignment
...
The reduction in size from 0x38 to 0x34 caused the parameter to be misaligned. Skipping 1 word fixes this.
2023-07-31 18:40:16 -04:00
lat9nq
eaf2ab5289
tz_content_man: Generate the time zone binary once
...
Fixes a memory leak with time zone binaries accumulating on theirselves.
2023-07-30 12:55:19 -04:00
liamwhite
689dc4a17b
Merge pull request #11155 from liamwhite/memory3
...
memory: check page against address space size
2023-07-28 09:29:21 -04:00
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
Liam
07f71e2620
memory: check page against address space size
2023-07-25 09:51:06 -04:00
liamwhite
18000df5e9
Merge pull request #11095 from liamwhite/memory2
...
memory: cleanup
2023-07-24 13:47:11 -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
b1aed2c5b7
Merge pull request #11094 from liamwhite/get
...
kernel: misc cleanup of page table accessors
2023-07-22 11:17:36 -04:00
bunnei
482c957f5d
Merge pull request #11113 from liamwhite/nsd1
...
nsd: add GetApplicationServerEnvironmentType
2023-07-21 21:24:36 -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
lat9nq
8e91554e11
k_system_control: Always return some memory size
2023-07-21 10:56:55 -04:00
lat9nq
127b3da0f1
core,common: Give memory layout setting an enum
...
Allows for 6GB and 8GB layouts to be selected.
2023-07-21 10:56:55 -04:00
lat9nq
ff6a5031d5
settings: Require time zone setting value for stirng
2023-07-21 10:56:55 -04:00
lat9nq
d146dd9d12
settings,general: Rename non-confirming enums
2023-07-21 10:56:54 -04:00
lat9nq
432f68ad29
configure_audio: Implement ui generation
...
Needs a considerable amount of management specific to some of
the comoboboxes due to the audio engine configuration.
general: Partial audio config implmentation
configure_audio: Implement ui generation
Needs a considerable amount of management specific to some of
the comoboboxes due to the audio engine configuration.
general: Partial audio config implmentation
settings: Make audio settings as enums
2023-07-21 10:56:07 -04:00
lat9nq
8e15146026
configure_system: Implement with for loop
2023-07-21 10:56:07 -04:00
lat9nq
a007ac6b9c
configure_graphics_advance: Generate UI at runtime
...
We can iterate through the AdvancedGraphics settings and generate the UI
during runtime. This doesn't help runtime efficiency, but it helps a ton
in reducing the amount of work a developer needs in order to add a new
setting.
2023-07-21 10:56:07 -04:00
lat9nq
4133165607
settings,core,config_sys: Remove optional type from custom_rtc, rng_seed
...
core: Fix MSVC errors
2023-07-21 10:56:07 -04:00
lat9nq
5cffa34288
settings,video_core: Consolidate ASTC decoding options
...
Just puts them all neatly into one place.
2023-07-21 10:56:07 -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
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
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
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
2461c78e3f
Merge pull request #10912 from comex/ssl
...
Implement SSL service
2023-07-16 16:56:47 -04: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
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
bunnei
ce7c418e0c
Merge pull request #10996 from Kelebek1/readblock_optimisation
...
Use spans over guest memory where possible instead of copying data
2023-07-10 18:54:19 -07:00
Liam
82568412f6
arm_interface: correct breakpoint rewind condition
2023-07-09 12:03:25 -04:00
Liam
4540bcfaf7
k_server_session: translate special header for non-HLE requests
2023-07-08 01:01:49 -04:00
liamwhite
8bf46f48f8
vfs_real: use open file size for getting size ( #11016 )
2023-07-06 23:43:53 +02:00
german77
9cd698e8ad
service: nfc: Ensure controller is in the correct mode
2023-07-02 19:21:16 -06:00
Kelebek1
6f7cb69c94
Use spans over guest memory where possible instead of copying data.
2023-07-02 23:09:48 +01:00
liamwhite
95ceae40e6
Merge pull request #10998 from Morph1984/qt-stop-messing-with-me
...
core_timing: Remove GetCurrentTimerResolution in CoreTiming loop
2023-07-02 17:38:28 -04:00
liamwhite
daaf03942f
Merge pull request #10969 from Morph1984/k-synchronize
...
kernel: Synchronize
2023-07-02 17:38:14 -04:00
Morph
c3fbc8d2fe
core_timing: Remove GetCurrentTimerResolution in CoreTiming loop
...
Other programs may change this value, but if thousands of syscalls in this loop is undesirable, then we can just set this once.
2023-07-02 15:08:04 -04:00
liamwhite
eaa62aee98
Merge pull request #10942 from FernandoS27/android-is-a-pain-in-the-a--
...
Memory Tracking: Add mechanism to register small writes when gpu page is contested by GPU
2023-07-02 11:29:01 -04:00
liamwhite
87080e71c5
Merge pull request #10710 from liamwhite/romfs2
...
fsmitm_romfsbuild: avoid full path lookups
2023-07-02 11:28:55 -04:00
comex
644c3ce609
Rename variables to avoid -Wshadow warnings under GCC
2023-07-01 22:03:21 -07:00
comex
0ed1cb7266
...actually add the SecureTransport backend to Git.
2023-07-01 17:48:36 -07:00
comex
0e191c2711
Updates:
...
- Address PR feedback.
- Add SecureTransport backend for macOS.
2023-07-01 17:27:35 -07:00
comex
98685d48e3
Merge remote-tracking branch 'origin/master' into ssl
2023-07-01 15:01:11 -07:00
Morph
b94e576653
kernel: Synchronize
2023-07-01 16:21:22 -04:00
Morph
1a46823ec5
parcel: Optimize small_vector sizes
2023-06-30 22:05:28 -04:00
Morph
310b6cf4af
general: Use ScratchBuffer where possible
2023-06-30 21:49:59 -04:00
Fernando Sahmkow
0e6b559c98
Memory Tracker: Use 64 bit atomics instead of 128 bits
2023-06-29 12:25:12 +02:00
Fernando Sahmkow
da440da9f5
Memory Tracking: Optimize tracking to only use atomic writes when contested with the host GPU
2023-06-28 21:32:45 +02:00
Fernando Sahmkow
47d0d292d5
MemoryTracking: Initial setup of atomic writes.
2023-06-28 19:34:21 +02:00
Liam
edd54abee4
fsmitm_romfsbuild: avoid full path lookups
2023-06-27 23:25:47 -04:00
Merry
e3c548d081
arm_dynarmic_32: Remove disabling of block linking on arm64
2023-06-27 23:51:49 +01:00
comex
d885dd5b64
PR feedback + constification
2023-06-25 19:24:49 -07:00
comex
b9f9d0a642
network.cpp: include expected.h
2023-06-25 18:51:39 -07:00
comex
cd4b8f037c
re-format
2023-06-25 17:09:54 -07:00