Commit graph

10310 commits

Author SHA1 Message Date
Liam
f0ee3e29cb arm: fix context save of vector regs 2023-12-04 22:19:11 -05:00
Liam
45c87c7e6e core: refactor emulated cpu core activation 2023-12-04 10:37:16 -05:00
Liam
0751488727 fsmitm_romfsbuild: optimize for data locality 2023-12-03 16:29:57 -05:00
Liam
4bc932261b romfs: cache file and directory metadata tables 2023-12-03 16:29:57 -05:00
Liam
9de99839bd nce: fix pre-text patch for single modules 2023-12-02 16:14:52 -05:00
Liam
45b6161582 file_sys: handle null romfs 2023-12-01 23:39:48 -05:00
liamwhite
e9a43bae6f
Merge pull request #12255 from german77/amiibo
service: nfc: Don't tag amiibos as corrupted if they are loaded as read only
2023-12-01 18:39:38 -05:00
Narr the Reg
e40a2d2fd2 service: nfc: Don't tag amiibos as corrupted if they are loaded as read only 2023-12-01 14:21:55 -06:00
liamwhite
57a391e71d
Merge pull request #12074 from GPUCode/yuwu-on-the-metal
Implement Native Code Execution (NCE)
2023-11-30 09:20:55 -05:00
GPUCode
4a3abba16d core: Rename patcher file 2023-11-29 23:49:16 +02:00
liamwhite
80c4743754
Merge pull request #12203 from liamwhite/crash-fix
set: don't load version nca with null romfs
2023-11-29 12:34:02 -05:00
Liam
fd29227bc4 set: don't load version nca with null romfs 2023-11-27 15:20:18 -05:00
FrozenAra
e21f96ffde Fixed controller applet crashing when on FW17+ 2023-11-27 20:01:30 +01:00
liamwhite
c7649a0cdb
Merge pull request #12183 from german77/justmii
service: nfc: Validate mii data
2023-11-27 11:56:37 -05:00
liamwhite
5a96c525e3
Merge pull request #12160 from german77/mouse_constrain
yuzu: Constrain mouse in render window when emulated
2023-11-27 11:56:24 -05:00
amazingfate
a76a8fb5fe qt: add cpu_backend configuration 2023-11-26 20:44:07 -05:00
Liam
15f35b8657 general: fix mac compile 2023-11-26 19:50:10 -05:00
Liam
7482e03c77 loader: fix gcc compile 2023-11-26 19:34:07 -05:00
liamwhite
e0c894408a
Merge pull request #12180 from german77/cabinetmii
service: am: Create random mii for cabinet applet
2023-11-26 09:50:08 -05:00
liamwhite
257a1c884d
Merge pull request #12156 from german77/firmwarevs
yuzu: Display firmware version
2023-11-26 09:49:53 -05:00
german77
281eb020ea service: nfc: Validate mii data 2023-11-25 23:40:01 -06:00
german77
4ce6762945 service: am: Create random mii for cabinet applet 2023-11-25 21:31:05 -06:00
Liam
e6847c65a8 time: undef GetCurrentTime for Windows 2023-11-25 16:18:02 -05:00
liamwhite
bc4818b058
Merge pull request #12151 from german77/no-crash
core: hid: Ensure output devices are initialized
2023-11-25 10:17:11 -05:00
GPUCode
6432508740 oaknut: Address warnings 2023-11-25 00:47:43 -05:00
GPUCode
9ff8d0f3e6 Address more review comments 2023-11-25 00:47:43 -05:00
Liam
d040b27a35 loader: apply nso patch to offset program image 2023-11-25 00:47:36 -05:00
Liam
cf534f5149 arm_nce: skip data aborts for crash handling parity 2023-11-25 00:47:36 -05:00
GPUCode
1cde01c8c8 arm: Print backtrace on data abort 2023-11-25 00:47:36 -05:00
Liam
f542a3bb7a patch: check offsets from first code word 2023-11-25 00:47:36 -05:00
GPUCode
3ec3cca4d8 core: Define HAS_NCE macro 2023-11-25 00:47:36 -05:00
Liam
263b7a44f9 arm_nce: skip dc cvac on possibly write-protected areas 2023-11-25 00:47:36 -05:00
GPUCode
6de2edcca1 Address some review comments 2023-11-25 00:47:35 -05:00
GPUCode
8fab363237 android: Add cpu bakend gui toggle 2023-11-25 00:47:28 -05:00
Liam
9f91ba1f73 arm: Implement native code execution backend 2023-11-25 00:46:47 -05:00
GPUCode
4838837620 device_memory: Enable direct mapped addresses for nce 2023-11-25 00:46:47 -05:00
Liam
f2a8409083 kernel: Manually specify aslr region start 2023-11-25 00:46:15 -05:00
GPUCode
5938a9582a core: Respect memory permissions in Map 2023-11-25 00:46:15 -05:00
Narr the Reg
f61cf14646 yuzu: Constrain mouse in render window when emulated 2023-11-24 19:32:35 -06:00
Narr the Reg
2d4e7c8264 yuzu: Display firmware version 2023-11-24 12:58:07 -06:00
Narr the Reg
02a0b41a15 core: hid: Ensure output devices are initialized 2023-11-24 10:18:16 -06:00
liamwhite
0b766e4523
Merge pull request #12076 from german77/resource
service: hid: Create appropriate hid resources
2023-11-23 12:36:19 -05:00
liamwhite
cddb28cf26
Merge pull request #12107 from daisymlleung/patch-1
Stub CheckBlockedUserListAvailability for Super Bomberman R 2
2023-11-21 09:19:41 -05:00
Narr the Reg
cff2d0e19e service: hid: Create appropriate hid resources 2023-11-20 17:19:17 -06:00
Narr the Reg
8da5bd27e9
Merge pull request #12011 from Macj0rdan/controller-applet
Implemented qlaunch version of the controller applet
2023-11-20 16:53:33 -06:00
daisymlleung
0216aa55b4
Stub CheckBlockedUserListAvailability 2023-11-21 01:57:58 +08:00
Squall-Leonhart
8ae26df15c service: hid: Ensure resource manager is initialized
Ensures the proper initialization of the IActiveVibrationDeviceList. By using GetResourceManager() instead of resource_manager, we make sure that the IActiveVibrationDeviceListis initialized before it's used, preventing potential null issues.

Fixes #12088
2023-11-20 11:43:56 +11:00
FrozenAra
cb004d1ba1 Implemented qlaunch version of the controller applet 2023-11-19 18:38:58 +01:00
liamwhite
f131b0faeb
Merge pull request #11912 from liamwhite/nv-graphic-buffer
nvnflinger: use graphic buffer lifetime for map handle
2023-11-17 20:41:34 -05:00
liamwhite
6c64d5aff2
Merge pull request #11917 from liamwhite/abandonment
nvnflinger: implement consumer abandonment
2023-11-17 20:41:23 -05:00
Narr the Reg
862e66202c service: hid: Introduce firmware settings and update activate controller calls 2023-11-16 18:51:14 -06:00
Narr the Reg
b9c7e5c2c8 service: hid: Implement xpad calls 2023-11-16 11:18:11 -06:00
liamwhite
d86e88a622
Merge pull request #11995 from FernandoS27/you-dont-need-the-new-iphone
Revert PR #11806 and do a proper fix to the memory handling.
2023-11-16 09:17:13 -05:00
liamwhite
7eac28e410
Merge pull request #12038 from german77/no_implement
service: hid: Split hid.cpp into individual interfaces
2023-11-16 09:13:56 -05:00
liamwhite
ea4c92f734
Merge pull request #12007 from german77/moar_buttons
core: hid: Split SL and SR buttons
2023-11-16 09:13:39 -05:00
Narr the Reg
c9cd938dfd service: hid: Split hid.cpp into individual interfaces 2023-11-15 09:59:54 -06:00
liamwhite
a134e924ff
Merge pull request #12032 from liamwhite/fruit-compiler
fix apple clang build again
2023-11-14 12:23:28 -05:00
liamwhite
9a5ef835cc
Merge pull request #12028 from liamwhite/coretiming-shutdown
core_timing: lock event queue access
2023-11-14 12:23:11 -05:00
Liam
b30e19ba24 fix apple clang build again 2023-11-14 11:53:02 -05:00
Liam
ec6b67d862 core_timing: lock event queue access 2023-11-14 11:51:04 -05:00
Liam
e3b510a4b4 core: check for thread dpc before eret 2023-11-13 11:28:23 -05:00
Fernando Sahmkow
f1806d237f Memory: Fix invalidation handling from the CPU/Services 2023-11-12 14:10:40 +01:00
german77
ae57a99d7d core: hid: Split SL and SR buttons 2023-11-11 21:03:15 -06:00
liamwhite
767c4b5a99
Merge pull request #11980 from german77/moment
service: irs: Implement moment image processor
2023-11-11 20:02:23 -05:00
liamwhite
9f1c9599a2
Merge pull request #12004 from liamwhite/fix-hbl
k_capabilities: ignore map region when KTrace is disabled
2023-11-11 20:02:01 -05:00
Liam
a6735cba5f k_capabilities: ignore map region when KTrace is disabled 2023-11-11 10:45:43 -05:00
Liam
3b872b89d1 gdbstub: read module information from memory layout 2023-11-11 10:41:06 -05:00
Narr the Reg
e588f341ed service: irs: Implement moment image processor 2023-11-11 00:28:12 -06:00
Liam
875246f5b2 k_page_table: fix shutdown 2023-11-10 12:01:35 -05:00
Liam
b16fefa106 k_page_table: use more precise icache invalidates 2023-11-10 12:01:35 -05:00
Liam
2a255b2d61 kernel: add KPageTableBase
Co-authored-by: Kelebek1 <eeeedddccc@hotmail.co.uk>
2023-11-10 12:01:35 -05:00
liamwhite
40357098a2
Merge pull request #11896 from liamwhite/crop
renderer_vulkan: fix cropping for presentation
2023-11-06 12:08:03 -05:00
liamwhite
e7f4110791
Merge pull request #11873 from liamwhite/buffer-control
nvdrv: add ioctl command serialization wrapper
2023-11-06 12:07:50 -05:00
german77
a5a3167eba service: am: Set the correct album program id 2023-11-05 17:26:34 -06:00
liamwhite
8369fcd71a
Merge pull request #11969 from german77/profile
service: acc: Ensure proper profile size
2023-11-05 13:15:14 -05:00
liamwhite
626916e9a4
Merge pull request #11961 from german77/recent
yuzu: Only store games in the recently played list
2023-11-05 13:15:07 -05:00
german77
507f360a81 yuzu: Only store games in the recently played list 2023-11-05 09:34:16 -06:00
german77
5323d9f6b3 service: acc: Ensure proper profile size 2023-11-05 09:28:22 -06:00
Narr the Reg
f07484bc64 core: hid: Signal color updates 2023-11-04 14:13:18 -06:00
liamwhite
409fa5dda2
Merge pull request #11960 from german77/silence
service: hid: Silence EnableUnintendedHomeButtonInputProtection
2023-11-04 11:14:27 -04:00
liamwhite
f0cd02b9bd
Merge pull request #11881 from liamwhite/sockets-safe-access
sockets: use safe access helpers
2023-11-04 11:14:08 -04:00
german77
bf8d7bc0da service: hid: Silence EnableUnintendedHomeButtonInputProtection 2023-11-03 23:22:28 -06:00
liamwhite
eda403388a
Merge pull request #11948 from german77/hard_ring
service: hid: Ensure GetNextEntryIndex can't fail
2023-11-03 09:14:17 -04:00
liamwhite
3032980478
Merge pull request #11947 from german77/battery
core: hid: Fix wrong battery values
2023-11-03 09:14:10 -04:00
liamwhite
a0f9a3ab5b
Merge pull request #11936 from liamwhite/romfs-nonsense
romfs: fix extraction of single-directory root
2023-11-03 09:13:46 -04:00
german77
b36fec486e service: hid: Ensure GetNextEntryIndex can't fail 2023-11-02 20:33:19 -06:00
german77
57cf830862 core: hid: Fix wrong battery values 2023-11-02 18:39:08 -06:00
Liam
b0c6bf497a romfs: fix extraction of single-directory root 2023-10-31 23:26:51 -04:00
liamwhite
324c93e4aa
Merge pull request #11929 from dima-xd/swkbd-applet
service: am: Add support for LLE Software Keyboard Applet
2023-10-31 16:55:49 -04:00
Dzmitry Dubrova
361dbdddcc service: am: Add support for LLE Software Keyboard Applet 2023-10-31 21:14:37 +03:00
liamwhite
db5c24eb66
Merge pull request #11892 from german77/pkm_screenshot
service: am: Implement ISelfController::SaveCurrentScreenshot
2023-10-31 09:47:19 -04:00
Liam
a872030a35 nvnflinger: implement consumer abandonment 2023-10-29 23:38:24 -04:00
Liam
79e7d7f4ba nvnflinger: use graphic buffer lifetime for map handle 2023-10-29 22:12:16 -04:00
liamwhite
adb0900906
Merge pull request #11911 from german77/leak_event
core: Close all KEvents
2023-10-29 19:46:47 -04:00
german77
6e883a26da core: Close all KEvents 2023-10-29 13:52:12 -06:00
liamwhite
6aee148b17
Merge pull request #11843 from liamwhite/sync-process
kernel: update KProcess
2023-10-29 11:24:52 -04:00
liamwhite
b5b93e6741
Merge pull request #11827 from liamwhite/preallocated
nvnflinger: fix reporting and freeing of preallocated buffers
2023-10-29 11:24:44 -04:00
Liam
65d4a16afd renderer_vulkan: fix cropping for presentation 2023-10-28 00:05:06 -04:00
Narr the Reg
f26dddf3b5 service: am: Implement ISelfController::SaveCurrentScreenshot 2023-10-26 22:29:52 -06:00
Alexandre Bouvier
79ba5d9c26 cmake: prefer system stb headers 2023-10-25 21:47:32 +02:00
Liam
ca75c58f43 sockets: use safe access helpers 2023-10-25 14:07:22 -04:00
Liam
723df0f368 nvdrv: rework to remove memcpy 2023-10-25 13:05:56 -04:00
Liam
94b7ac50bb nvdrv: fix up remaining copy calls 2023-10-25 13:05:56 -04:00
Liam
18450ebd78 nvdrv: convert nvmap 2023-10-25 13:05:56 -04:00
Liam
efdb2e8f3d nvdrv: convert codec devices 2023-10-25 13:05:56 -04:00
Liam
7a84a1a974 nvdrv: convert nvhost_gpu 2023-10-25 13:05:56 -04:00
Liam
789d9c8af9 nvdrv: convert nvhost_ctrl 2023-10-25 13:05:56 -04:00
Liam
4df063209b nvdrv: convert nvhost_ctrl_gpu 2023-10-25 13:05:55 -04:00
Liam
6256e3ca8e nvdrv: add ioctl command serialization, convert nvhost_as_gpu 2023-10-25 13:05:55 -04:00
Liam
19e9bde9e0 kernel: make sure new process is in list 2023-10-25 10:05:45 -04:00
liamwhite
6eb3a583cb
Merge pull request #11812 from german77/save_capture
service: caps: Implement SaveScreenShotEx0 and variants
2023-10-24 21:43:51 -04:00
Narr the Reg
c733620024 service: ipc: Add third read buffer index 2023-10-23 10:33:01 -06:00
german77
897b411ae7 service: caps: Implement SaveScreenShotEx0 and variants 2023-10-23 10:18:22 -06:00
liamwhite
1cc764988f
Merge pull request #11846 from german77/cheats
cheats: Clamp cheat names without failing
2023-10-23 10:33:37 -04:00
german77
bbdaa62175 cheats: Clamp cheat names without failing 2023-10-21 21:04:03 -06:00
Liam
31bffc7299 kernel: fix extraneous ref 2023-10-21 22:16:41 -04:00
Liam
5f8f09d750 kernel: shutdown app before gpu 2023-10-21 20:35:18 -04:00
Liam
dcfe674ed4 kernel: signal thread on termination completed 2023-10-21 20:03:41 -04:00
Liam
bb195c2c2b kernel: add missing TLR clear 2023-10-21 20:03:41 -04:00
Liam
8c59543ee3 kernel: update KProcess 2023-10-21 20:03:41 -04:00
liamwhite
db37e583ff
Merge pull request #11831 from liamwhite/hosversionbetween
set: return version info from system archive
2023-10-21 18:22:20 -04:00
Liam
12ebc8d9d1 set: return version info from system archive 2023-10-20 13:29:52 -04:00
Liam
2b85e9e997 ts: add OpenSession 2023-10-20 13:29:32 -04:00
Fernando S
2e760a9833
Merge pull request #11748 from liamwhite/kern_1700
kernel: update for 17.0.0
2023-10-20 17:08:00 +02:00
Liam
689f346e97 nvnflinger: fix reporting and freeing of preallocated buffers
Co-authored-by: Kelebek1 <eeeedddccc@hotmail.co.uk>
2023-10-20 10:17:32 -04:00
Liam
249db0a59b kernel: fix incorrect calculation of used non system memory value 2023-10-20 09:12:10 -04:00
Liam
9526ce95dd gdbstub: add PermissionLocked to mappings table 2023-10-20 02:53:31 -04:00
Liam
687158fe00 kernel: fix format string error 2023-10-20 02:41:32 -04:00
Liam
d8507332c1 kernel: make check fully constexpr for broken msvc constant folding 2023-10-20 02:34:15 -04:00
Liam
f21058a6c0 k_page_table: add MapFirstGroup 2023-10-20 02:34:15 -04:00
Liam
b456af31e6 kernel: update KMemoryRegionType values 2023-10-20 02:34:15 -04:00
Liam
0441853d0f k_page_table: implement PermissionLocked 2023-10-20 02:34:15 -04:00
Liam
60a1c6b95b k_page_table: add new CheckMemoryState helper 2023-10-20 02:34:15 -04:00
Liam
794e6c7a96 kernel: split Io memory state, add PermissionLocked attribute 2023-10-20 02:34:15 -04:00
Liam
22afa2c7a3 kernel: reshuffle ini1 size, add slab clear note 2023-10-20 02:34:15 -04:00
liamwhite
85a89ca3e3
Merge pull request #11822 from german77/no-name
service: mii: Create random mii with name
2023-10-19 16:54:05 -04:00
Narr the Reg
26776c0e60 service: mii: Create random mii with name 2023-10-19 13:35:02 -06:00
liamwhite
765ea9b79d
Merge pull request #11791 from german77/bufferx
service: hle: Allow to access read buffer A and X directly
2023-10-18 09:21:58 -04:00
liamwhite
bd05ace08d
Merge pull request #11774 from liamwhite/refcount-issue
fsmitm_romfsbuild: avoid unnecessary copies of vfs pointers
2023-10-17 11:49:11 -04:00
german77
c73bb33ff1 service: hle: Allow to access read buffer A and X directly 2023-10-16 23:36:46 -06:00
Narr the Reg
bcce184e60
service: acc: Implement functions needed for profile select (#11653) 2023-10-17 05:12:55 +02:00
Liam
053a16799e fsmitm_romfsbuild: avoid unnecessary copies of vfs pointers 2023-10-13 14:22:52 -04:00
liamwhite
c00b63b9e1
Merge pull request #11766 from liamwhite/open-sesame
k_page_table: add missing page group open when locking memory
2023-10-13 09:29:05 -04:00
liamwhite
519c12da15
Merge pull request #11746 from liamwhite/relr
jit: add support for relr-type relocations
2023-10-12 18:23:31 -04:00
liamwhite
d74fd9e2fe
Merge pull request #11763 from liamwhite/lto-noinline
kernel: mark TLS accessors as noinline for non-MSVC LTO
2023-10-12 18:23:25 -04:00
Liam
c4ec76edba k_page_table: add missing page group open when locking memory 2023-10-12 15:00:26 -04:00
Narr the Reg
3f05b8facd service: caps: Remove ambiguous call 2023-10-12 12:52:55 -06:00
Liam
2212c9653d kernel: mark TLS accessors as noinline for non-MSVC LTO 2023-10-12 09:16:22 -04:00
Narr the Reg
fe04a7523a service: caps: Fix GetAlbumFileList3AaeAruid and GetAlbumFileList0AafeAruidDeprecated 2023-10-11 20:01:33 -06:00
Liam
7b5d234558 jit: add support for relr-type relocations 2023-10-11 11:13:19 -04:00
Fernando S
8151a4d301
Merge pull request #11650 from german77/lle_album
service: am: Add support for LLE Album Applet
2023-10-10 11:47:13 +02:00
Fernando S
8ac8d703b9
Merge pull request #11686 from liamwhite/trmem
kernel: implement transfer memory
2023-10-10 11:45:56 +02:00
Narr the Reg
8347e5cdb9 service: caps: Implement album manager and reorganize service 2023-10-07 20:57:20 -06:00
Narr the Reg
0bb7990c49 service: Stub multiple functions to increase stability of album applet 2023-10-07 20:57:10 -06:00
liamwhite
bf15aa093c
Merge pull request #11639 from liamwhite/no-program-id-change
loader: don't reassign program ID on npdm reparse
2023-10-07 12:49:32 -04:00
liamwhite
0e9b839b6f
Merge pull request #11648 from liamwhite/unicode-nonsense
gdbserver: use numeric character references for unicode
2023-10-07 12:49:27 -04:00
liamwhite
fc4cde7513
Merge pull request #11669 from german77/settings2
yuzu: Fix custom rtc and mute audio settings
2023-10-07 10:55:21 -04:00
Liam
e797a917a9 kernel: implement transfer memory 2023-10-04 22:32:27 -04:00
Narr the Reg
0fe935a5de core: Update clocks when settings are saved 2023-10-03 20:20:26 -06:00
Liam
0448eb6f0f ci: fix new codespell errors 2023-10-02 18:03:05 -04:00
Narr the Reg
c334959440 service: caps: Partially implement IAlbumAccessorService 2023-10-02 12:38:03 -06:00
Narr the Reg
2fa53ec1d9 yuzu: Allow to launch album applet from firmware 2023-10-02 11:29:12 -06:00
liamwhite
ff57c66773
Merge pull request #11652 from liamwhite/shutdown-goes-brrr
k_page_table: skip page table clearing on finalization
2023-10-02 11:28:24 -04:00
Liam
8fb13372c2 k_page_table: skip page table clearing on finalization 2023-10-01 23:38:56 -04:00
Liam
f9521f5bd4 fsp-srv: enable auto save data creation on init 2023-10-01 23:33:19 -04:00
liamwhite
99e2568304
Merge pull request #11632 from german77/hle_cabinet
service: am: Add support for LLE Cabinet Applet
2023-10-01 19:24:46 -04:00
Liam
38394f36d7 gdbserver: use numeric character references for unicode 2023-10-01 19:22:08 -04:00
Narr the Reg
9cd5c44019 service: nfc: Implement SetRegisterInfoPrivate mii support 2023-10-01 11:38:30 -06:00
Narr the Reg
2687a83f6a service: am: Implement shared buffer
Co-authored-by: Liam <byteslice@airmail.cc>
2023-10-01 11:38:30 -06:00
Narr the Reg
35f25882e0 service: nvnflinger: Implement shared buffer
Co-authored-by: Liam <byteslice@airmail.cc>
2023-10-01 11:38:30 -06:00
Narr the Reg
f1f3d490ef service: ldn: Implement lp2p:m and stub IMonitorService 2023-10-01 11:38:30 -06:00
Narr the Reg
ae5c134ac6 service: am: Set push in arguments according to the launched applet 2023-10-01 11:38:30 -06:00
Liam
2f0db2708c loader: don't reassign program ID on npdm reparse 2023-09-30 11:35:42 -04:00
Fernando S
184ee2d890
Merge pull request #11493 from merryhime/evt
core_timing: Replace queue with a fibonacci heap
2023-09-29 13:37:19 +02:00
Fernando S
d6b3e7f195
Merge pull request #11546 from Kelebek1/core_timing_mutex
Reduce core timing mutex contention
2023-09-29 13:36:57 +02:00
Kelebek1
c62e089260 Don't send a double focus change message 2023-09-28 23:47:10 +01:00
liamwhite
257a6aa2ba
Merge pull request #11626 from german77/mii-fix
service: mii: Fix reported bugs
2023-09-28 09:37:02 -04:00
liamwhite
7bae22a3ca
Merge pull request #11402 from FernandoS27/depth-bias-control
Vulkan: Implement Depth Bias Control
2023-09-28 09:35:37 -04:00
german77
e3f7e02555 service: mii: Fix reported bugs 2023-09-27 23:34:03 -06:00
Liam
00a612eaea fsp-srv: add GetFileSystemAttribute 2023-09-25 21:40:23 -04:00
german77
bb28f4a0c4 service: mii: Limit checks to string size 2023-09-23 20:14:37 -06:00
german77
0993c71335 service: hid: Set last connected controller as active 2023-09-23 20:14:37 -06:00
german77
6e1b113c89 service: am: Stub to exit applet cleanly 2023-09-23 20:14:37 -06:00
german77
c46f54b091 service: am: Implement stuff needed for Mii Edit 2023-09-23 20:14:33 -06:00
german77
3983ce9b5c service: fsp: Implement CreateSaveDataFileSystemBySystemSaveDataId and OpenSaveDataFileSystemBySystemSaveDataId 2023-09-23 20:13:36 -06:00
german77
d2cd08e3e1 service: ns: Implement GetSharedFontInOrderOfPriorityForSystem 2023-09-23 20:13:36 -06:00
Narr the Reg
a57ca3fb66 am: mii_edit: Implement DB operations 2023-09-21 18:21:39 -06:00
rkfg
753bc3a448 pfs: Fix reading filenames past the buffer end 2023-09-21 05:12:05 +03:00
Kelebek1
8992a62da4 Reduce core timing mutex contention 2023-09-19 23:10:03 +01:00
liamwhite
49cb89e324
Merge pull request #11526 from german77/mii_service_v2
service: mii: Update implementation Part2 - Mii database support
2023-09-19 09:24:49 -04:00
liamwhite
da8cbbf958
Merge pull request #11536 from abouvier/renderdoc
cmake: prefer system renderdoc header
2023-09-19 09:24:36 -04:00
liamwhite
55087ab08a
Merge pull request #11538 from cathyjf/renderdoc-check-correct-win32-symbol
renderdoc: Check for `_WIN32` symbol rather than `WIN32`
2023-09-19 09:24:23 -04:00
Liam
3ff29de4a1 aoc: stub purchase info calls 2023-09-18 16:20:53 -04:00
Cathy J. Fitzpatrick
9fef6560f0
renderdoc: Check for _WIN32 symbol rather than WIN32 2023-09-18 12:09:51 -07:00
german77
dca36ebb87 service: mii: Address review comments 2023-09-18 11:08:04 -06:00
Alexandre Bouvier
f93f31f4ae cmake: prefer system renderdoc header 2023-09-18 18:35:20 +02:00
german77
2fb71aecb0 service: mii: Implement the rest of the service 2023-09-17 16:06:25 -06:00
german77
9a878de33f service: mii: Implement database manager 2023-09-17 16:06:25 -06:00
german77
a50b50f8b4 service: mii: Implement figurine database 2023-09-17 16:06:25 -06:00
german77
bd409c3416 service: mii: Add device crc16 2023-09-17 16:06:25 -06:00
german77
2f22b53732 service: nfc: Fully Implement GetRegisterInfoPrivate 2023-09-17 16:06:25 -06:00
german77
1e8616bd01 service: mii: Complete structs and fix mistakes 2023-09-17 16:06:23 -06:00
lat9nq
77682aabd3 mii_types: Remove null terminator check
This is an OoB array access, causing a crash on at least the Linux
Flatpak releases.

Co-authored-by: german77 <juangerman-13@hotmail.com>
2023-09-17 15:23:57 -04:00
liamwhite
e1b79610f8
Merge pull request #11522 from liamwhite/vfs-needs-results
registered_cache: correct file deletion case
2023-09-17 10:42:51 -04:00
Liam
13a7a297bb registered_cache: correct file deletion case 2023-09-16 18:25:17 -04:00
Fernando Sahmkow
b99f94a7ff Vulkan: add temporary workaround for AMDVLK 2023-09-16 11:59:20 -04:00
Kelebek1
67e2d5c28b Reimplement HardwareOpus 2023-09-16 11:56:25 -04:00
liamwhite
9912704234
Merge pull request #11519 from german77/system-policy
service: hid: Implement ApplyNpadSystemCommonPolicy
2023-09-16 11:40:42 -04:00
liamwhite
fe771b59f4
Merge pull request #11518 from german77/bad-npad
service: hid: Implement last active Npad and fix some errors.
2023-09-16 11:40:35 -04:00
liamwhite
d26c76180d
Merge pull request #11517 from german77/amiibo-format
service: nfc: Fix amiibo formatting
2023-09-16 11:40:26 -04:00
liamwhite
62d473305d
Merge pull request #11500 from liamwhite/debug-stuff
core: improve debug workflow
2023-09-16 11:40:17 -04:00
liamwhite
c05ea35f78
Merge pull request #11492 from lat9nq/c-numeric-conversions
general: Remove uncaught usages of C++ string number conversions
2023-09-16 11:40:03 -04:00
liamwhite
7f705870d2
Merge pull request #11483 from FearlessTobi/save-size-max
am: Stub GetSaveDataSizeMax
2023-09-16 11:39:56 -04:00
german77
a3f235f8a2 service: hid: Implement ApplyNpadSystemCommonPolicy 2023-09-16 08:38:10 -06:00
Merry
f70bafff1a core_timing: Attempt to reduce heap sifting 2023-09-16 07:42:45 +01:00
Merry
3ad7eec9de core_timing: Use a fibonacci heap 2023-09-16 07:42:45 +01:00
german77
260bfc4bd2 hid: service: Remove outdated field from npad 2023-09-16 00:31:45 -06:00
german77
8950fe79ad hid: service: Implement Last active Npad 2023-09-16 00:31:19 -06:00
german77
c8b9467f50 service: hid: Ensure state is correct 2023-09-16 00:31:09 -06:00
german77
0d4aa9125e service: nfc: Fix amiibo formatting 2023-09-15 22:02:57 -06:00
Liam
3ef9673360 core: improve debug workflow 2023-09-14 16:44:15 -04:00
GPUCode
c656105a6c debug: Add renderdoc capture hotkey 2023-09-14 16:37:41 +03:00
Liam
9d7eebde7b ngc: implement service 2023-09-14 09:14:08 -04:00
liamwhite
8fb9f78e83
Merge pull request #11385 from liamwhite/acceptcancel
internal_network: cancel pending socket operations on application process termination
2023-09-13 15:40:58 -04:00
lat9nq
0eef4a6c94 cheat_engine: Remove uncaught usage of stoul 2023-09-13 13:51:58 -04:00
lat9nq
22be3008f8 ips_layer: Remove uncaught usage of stoul/ll 2023-09-13 13:36:25 -04:00
lat9nq
7f98f4a38b key_manager: Remove uncaught usage of stoul 2023-09-13 13:36:25 -04:00
liamwhite
3f52b5167b
Merge pull request #11486 from liamwhite/system-verification
qt: add verification for installed contents
2023-09-13 09:39:27 -04:00
liamwhite
5b5c69b8f6
Merge pull request #11480 from german77/mii_service
service: mii: Update implementation Part1
2023-09-13 09:39:16 -04:00
liamwhite
9a0ea90018
Merge pull request #11473 from liamwhite/fix-launch-param
am: Implement UserChannel parameters
2023-09-13 09:39:06 -04:00
Liam
f8985d1cc5 qt: add verification for installed contents 2023-09-12 09:20:50 -04:00
Narr the Reg
4d138b760b service: mii: Remove most magic values 2023-09-11 22:07:55 -06:00
FearlessTobi
a2150e456c am: Stub GetSaveDataSizeMax
Needed for Minecraft Legends.
2023-09-12 00:21:03 +02:00
FearlessTobi
1b6852a36c bsd: Demote "Select" log to dehug
This is very spammy in Minecraft Legends.
2023-09-12 00:20:42 +02:00
german77
ec25f847d8 mii: service: Address review 2023-09-11 09:54:32 -06:00
german77
bd169f417f mii: Prepare Interface for new implementation 2023-09-11 00:58:46 -06:00
german77
571399930c service: mii: Fix ver3 inconsistencies 2023-09-11 00:23:46 -06:00
german77
36290f9a0a service: mii: move char info operations 2023-09-10 23:18:08 -06:00
german77
d6037efe5e service: mii: Move store data operations 2023-09-10 23:18:03 -06:00
german77
81f50d5132 service: mii: Move core data operations 2023-09-10 22:52:33 -06:00
german77
8d7d62dc24 service: mii: Move ver3 operations 2023-09-10 22:42:38 -06:00
german77
27929d7ca2 service: mii: separate mii types into their own file 2023-09-10 22:18:25 -06:00
german77
63b239f5c6 service: mii: Move all raw data to it's file 2023-09-10 22:14:37 -06:00
german77
0cdc8b13b7 service: mii: Add mii util and result 2023-09-10 20:43:26 -06:00
FearlessTobi
87c0ba129c am: Implement UserChannel parameters
Used by the Super Mairo 3D All-Stars collection.
2023-09-10 15:39:25 -04:00
liamwhite
64130d9f01
Merge pull request #11456 from liamwhite/worse-integrity-verification
core: implement basic integrity verification
2023-09-10 13:40:39 -04:00
FearlessTobi
36917d8a8f am: Remove bcat from PopLaunchParameter
This never belonged here and has no use anymore since the Boxcat backend was removed.

.
2023-09-09 20:44:05 -04:00
Liam
7bec8d1c5b internal_network: log error on interrupt pipe read failure 2023-09-08 14:00:07 -04:00
Narr the Reg
57e7eed54c service: mii: Fix broken mii on MK8 2023-09-07 11:46:12 -06:00
Liam
716e0a126a core: implement basic integrity verification 2023-09-06 16:49:27 -04:00
liamwhite
69949e7964
Merge pull request #11428 from Kelebek1/adsp_rework
Rework ADSP into a wrapper for apps
2023-09-06 09:13:06 -04:00
liamwhite
5e424d791b
Merge pull request #11434 from danilaml/fix-warnings
msvc: set warning level to /W4 globally
2023-09-06 09:12:58 -04:00
liamwhite
d2e519494f
Merge pull request #11451 from german77/mob_mii
service: mii: Fix default mii database
2023-09-06 09:12:33 -04:00
Steveice10
0a51fe7854
core: Add support for loading NSPs with personalized tickets. (#10048)
Co-authored-by: Morph <39850852+Morph1984@users.noreply.github.com>
2023-09-05 21:09:42 +02:00
german77
ba4e5068bc service: mii: Fix default mii database 2023-09-05 01:17:06 -06:00
Kelebek1
ebd19dec99 Rework ADSP into a wrapper for apps 2023-09-04 17:12:16 +01:00
Danila Malyutin
785e480b62 msvc: set warning level to /W4 globally
And fix a bunch of warnings
2023-09-03 18:42:10 +04:00
liamwhite
2c5e8e6d40
Merge pull request #11384 from liamwhite/am-shutdown
am: shorten shutdown timeout when lock is not held
2023-09-02 14:42:35 -04:00
liamwhite
02e2aea50d
Merge pull request #11412 from liamwhite/key-area-keys
vfs: ensure key area keys are validated
2023-09-02 14:42:20 -04:00
FearlessTobi
a7a5835ffb hwopus: Implement GetWorkBufferSizeExEx
Allows Sea of Stars to boot.

Fixes https://github.com/yuzu-emu/yuzu/issues/11415.
2023-08-30 18:29:43 +02:00
liamwhite
1f04a3dd55
Merge pull request #11409 from liamwhite/splatoon-nsd-v2
sfdnsres: ensure lp1 is not resolved
2023-08-29 09:27:32 -04:00
Liam
5a09ba7255 vfs: ensure key area keys are validated 2023-08-28 22:22:00 -04:00
Liam
6c68b07a67 sfdnsres: ensure lp1 is not resolved 2023-08-28 11:55:53 -04:00
FearlessTobi
c2f827b85e hwopus: Implement OpenHardwareOpusDecoderForMultiStreamEx and DecodeInterleavedForMultiStream
Allows MLB The Show 22 to boot.

Fixes https://github.com/yuzu-emu/yuzu/issues/7911.
2023-08-27 18:03:10 +02:00
liamwhite
6c4abd23be
Merge pull request #11356 from lat9nq/console-mode-pg
general,config-qt: Present Console Mode as an enum with separate options in game properties
2023-08-26 19:15:00 -04:00
Liam
531572b411 internal_network: cancel pending socket operations on application process termination 2023-08-26 18:19:51 -04:00
Liam
b7523d6fa7 am: shorten shutdown timeout when lock is not held 2023-08-26 17:12:05 -04:00
liamwhite
a8edbb7019
Merge pull request #11370 from FearlessTobi/fix-filesize
filesystem: Return correct error for RenameFile when dest_path already exists
2023-08-25 18:02:54 -04:00
liamwhite
234cc45192
ssl: tolerate handshake without hostname set (#11328) 2023-08-26 00:02:32 +02:00
liamwhite
b923f5aa7e
registered_cache: create fake CNMT entries for program updates of multiprogram applications (#11319) 2023-08-26 00:00:15 +02:00
liamwhite
18ad55be0b
kernel: offset code entry point for 39-bit address space type (#11326) 2023-08-25 23:59:32 +02:00
Liam
9e134c3da2 nvhost_as_gpu: ensure mappings are aligned to big page size when deallocated 2023-08-25 09:39:18 -04:00
FearlessTobi
a669e37ddb filesystem: Return correct error for RenameFile when dest_path already exists
Allows Grid Autosport to boot.

Fixes https://github.com/yuzu-emu/yuzu/issues/8287.
2023-08-24 17:07:39 +02:00
liamwhite
7d89f2c146
Merge pull request #11327 from liamwhite/skyline-2
sockets: avoid locking around socket session calls
2023-08-24 10:33:53 -04:00
lat9nq
3c45452fae general: Use console mode helper across project 2023-08-22 21:58:23 -04:00
lat9nq
387ede76d2 general: Convert use_docked_mode to an enumeration
Allows some special interactions with it in the Qt frontend.
2023-08-22 16:07:52 -04:00
liamwhite
9d6ac28999
Merge pull request #11309 from liamwhite/full-xci
file_sys/card_image: support dumps with prepended key area
2023-08-21 16:09:22 -04:00
Liam
133ff3989b patch_manager: apply manual HTML patches when present 2023-08-21 10:58:23 -04:00
Fernando S
861597eb2e
Merge pull request #11284 from liamwhite/nca-release
vfs: expand support for NCA reading
2023-08-21 16:29:04 +02:00
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