bunnei
770f23db34
Merge pull request #9182 from liamwhite/services-are-processes
...
kernel: assign KProcess to service threads
2022-11-09 15:52:23 -08:00
Liam
cbaf642ffe
Initial ARM64 support
2022-11-09 16:58:49 -05:00
Fernando S
3161b34ff6
Merge pull request #9215 from liamwhite/swordfight
...
Ensure correctness of atomic store ordering
2022-11-09 14:50:49 +01:00
Liam
71c0e20f95
Ensure correctness of atomic store ordering
2022-11-09 08:09:50 -05:00
Liam
6a0d8b2aa1
service_thread: fix deletion
2022-11-06 19:50:51 -05:00
liamwhite
4c198bbf06
Merge pull request #9173 from bunnei/kern-update-15
...
Kernel: Various updates for FW 15.0.x
2022-11-05 13:25:29 -04:00
Liam
cf0f821565
core: hle: kernel: Address review comments.
2022-11-05 12:23:47 -04:00
Liam
e6fe40428c
service_thread: register service threads to the logical owner process
2022-11-04 09:18:57 -04:00
Liam
85527cc7c7
kernel: avoid racy behavior in global suspension
2022-11-04 09:18:57 -04:00
Jan Beich
717c8ded82
network: add missing header for SO_* on Unix after f80c7c4cd5
...
src/core/internal_network/socket_proxy.cpp: In member function 'virtual Network::Errno Network::ProxySocket::Initialize(Network::Domain, Network::Type, Network::Protocol)':
src/core/internal_network/socket_proxy.cpp:51:20: error: 'SO_TYPE' was not declared in this scope
51 | SetSockOpt(fd, SO_TYPE, type);
| ^~~~~~~
src/core/internal_network/socket_proxy.cpp: In member function 'virtual Network::Errno Network::ProxySocket::SetLinger(bool, u32)':
src/core/internal_network/socket_proxy.cpp:253:27: error: 'SO_LINGER' was not declared in this scope
253 | return SetSockOpt(fd, SO_LINGER, values);
| ^~~~~~~~~
src/core/internal_network/socket_proxy.cpp: In member function 'virtual Network::Errno Network::ProxySocket::SetReuseAddr(bool)':
src/core/internal_network/socket_proxy.cpp:257:32: error: 'SO_REUSEADDR' was not declared in this scope
257 | return SetSockOpt<u32>(fd, SO_REUSEADDR, enable ? 1 : 0);
| ^~~~~~~~~~~~
src/core/internal_network/socket_proxy.cpp: In member function 'virtual Network::Errno Network::ProxySocket::SetBroadcast(bool)':
src/core/internal_network/socket_proxy.cpp:262:32: error: 'SO_BROADCAST' was not declared in this scope
262 | return SetSockOpt<u32>(fd, SO_BROADCAST, enable ? 1 : 0);
| ^~~~~~~~~~~~
src/core/internal_network/socket_proxy.cpp: In member function 'virtual Network::Errno Network::ProxySocket::SetSndBuf(u32)':
src/core/internal_network/socket_proxy.cpp:266:27: error: 'SO_SNDBUF' was not declared in this scope
266 | return SetSockOpt(fd, SO_SNDBUF, value);
| ^~~~~~~~~
src/core/internal_network/socket_proxy.cpp: In member function 'virtual Network::Errno Network::ProxySocket::SetRcvBuf(u32)':
src/core/internal_network/socket_proxy.cpp:274:27: error: 'SO_RCVBUF' was not declared in this scope
274 | return SetSockOpt(fd, SO_RCVBUF, value);
| ^~~~~~~~~
src/core/internal_network/socket_proxy.cpp: In member function 'virtual Network::Errno Network::ProxySocket::SetSndTimeo(u32)':
src/core/internal_network/socket_proxy.cpp:279:27: error: 'SO_SNDTIMEO' was not declared in this scope
279 | return SetSockOpt(fd, SO_SNDTIMEO, static_cast<int>(value));
| ^~~~~~~~~~~
src/core/internal_network/socket_proxy.cpp: In member function 'virtual Network::Errno Network::ProxySocket::SetRcvTimeo(u32)':
src/core/internal_network/socket_proxy.cpp:284:27: error: 'SO_RCVTIMEO' was not declared in this scope
284 | return SetSockOpt(fd, SO_RCVTIMEO, static_cast<int>(value));
| ^~~~~~~~~~~
2022-11-04 07:28:46 +00:00
bunnei
37de88040c
Merge pull request #9135 from liamwhite/service-thread-event
...
kernel: invert session request handling flow
2022-11-03 21:45:56 -07:00
bunnei
05ae0cab0e
core: hle: kernel: k_page_table: Remove unnecessary casts.
2022-11-03 21:17:08 -07:00
bunnei
119315af08
core: hle: kernel: k_page_table: Manually open/close pages for IPC methods.
2022-11-03 21:17:08 -07:00
bunnei
661fe06d9d
core: hle: kernel: k_page_table: Implement IPC memory methods.
2022-11-03 21:17:07 -07:00
bunnei
ba21ba0c5c
core: hle: kernel: k_memory_manager: Refresh.
2022-11-03 21:17:07 -07:00
bunnei
32d7faafa8
core: hle: kernel: Integrate system KSystemResource.
2022-11-03 21:17:07 -07:00
bunnei
b7b47f3099
core: hle: kernel: k_dynamic_page_manager: Refresh.
2022-11-03 21:17:07 -07:00
bunnei
6f941121e6
core: hle: kernel: Add KSystemResource.
2022-11-03 21:17:07 -07:00
bunnei
6636b81573
core: hle: kernel: k_handle_table: Refresh.
2022-11-03 21:17:07 -07:00
bunnei
1f21fa866d
core: hle: kernel: k_memory_layout: Refresh.
2022-11-03 21:17:07 -07:00
bunnei
84d130f143
core: hle: kernel: k_memory_region_type: Refresh.
2022-11-03 21:17:07 -07:00
bunnei
d928ba8e40
core: hle: kernel: slab_helpers: Add KAutoObjectWithSlabHeap.
2022-11-03 21:17:06 -07:00
bunnei
3aab7d4473
core: hle: kernel: k_dynamic_resource_manager: Add KBlockInfoManager, KBlockInfoSlabHeap.
2022-11-03 21:17:06 -07:00
bunnei
6b6c02f541
core: hle: kernel: k_page_bitmap: Refresh.
2022-11-03 21:17:06 -07:00
bunnei
50bfacca88
core: hle: kernel: k_memory_block: Refresh.
2022-11-03 21:17:06 -07:00
bunnei
0cb9bc12fc
core: hle: kernel: k_page_heap: Refresh.
2022-11-03 21:17:06 -07:00
bunnei
6257461684
core: hle: kernel: k_page_group: Add KPageBufferSlabHeap.
2022-11-03 21:17:06 -07:00
bunnei
d353c45f7d
core: hle: kernel: k_system_control: Add SecureAppletMemorySize.
2022-11-03 21:17:06 -07:00
bunnei
f76b4417e6
core: hle: kernel: k_page_buffer: Add KPageBufferSlabHeap.
2022-11-03 21:17:06 -07:00
bunnei
0897f4f96c
core: hle: kernel: Add KPageTableManager.
2022-11-03 21:17:06 -07:00
bunnei
6d4f411c08
core: hle: kernel: Add KPageTableSlabHeap.
2022-11-03 21:17:06 -07:00
bunnei
37b17252d1
core: hle: kernel: Add KEventInfo.
2022-11-03 21:17:06 -07:00
bunnei
ddd3f48736
core: hle: kernel: Add KDebug.
2022-11-03 21:17:06 -07:00
bunnei
46322be735
core: hle: result: Fix code for compilers.
2022-11-03 21:17:06 -07:00
bunnei
75ab52f05b
core: hle: service: acc: Fix ListOpenContextStoredUsers/StoreOpenContext.
...
- These APIs are used to capture the opened users and allow that state to be persisted across processes.
- They are not intended to just return the system opened users, that is what ListOpenUsers is for.
- Fixes the launch hang with Bayonetta 3.
2022-11-02 16:09:30 -07:00
Liam
77b74f5d95
sm:: avoid excessive port recreation
2022-10-31 17:47:39 -04:00
Liam
633411c20f
kernel: fix single core for service threads
2022-10-31 17:45:46 -04:00
Liam
2228383322
kernel: fix port tracking
2022-10-31 17:45:46 -04:00
Liam
7aa91c8d9c
k_server_session: add SendReplyHLE
2022-10-31 17:45:45 -04:00
Liam
7837185f0a
service_thread: convert to map for session management
2022-10-31 17:44:07 -04:00
Liam
983f2b7074
kernel: invert session request handling flow
2022-10-31 17:44:06 -04:00
Liam
4e9adae5da
kernel: more complete fix for KPort reference counting
2022-10-31 08:23:29 -04:00
Liam
eec3184bb0
k_thread: fix single core
2022-10-30 18:44:29 -04:00
Liam
8f00c59462
kernel: reinitialize after dram layout change
2022-10-30 11:01:22 -04:00
bunnei
ccfdb7c1af
Merge pull request #9149 from german77/volum
...
service: am: Stub SetRecordVolumeMuted
2022-10-29 23:36:15 -07:00
german77
6f0f7f1547
service: am: Stub SetRecordVolumeMuted
...
Used by bayonetta 3
2022-10-30 00:34:33 -05:00
Liam
d867ae5ab6
k_server_session: fix crashes
2022-10-29 23:05:56 -04:00
bunnei
c4d91488d9
Merge pull request #9137 from liamwhite/hbmenu
...
Improved support for nx-hbmenu
2022-10-29 16:11:26 -07:00
liamwhite
8ce6256722
Merge pull request #9138 from liamwhite/hbl-stacktrace
...
arm_interface: curb infinite recursion in stacktrace generation
2022-10-27 20:07:48 -04:00
Liam
3e6840a74c
arm_interface: curb infinite recursion in stacktrace generation
2022-10-27 16:01:05 -04:00
bunnei
25d53e66d1
Merge pull request #9115 from vonchenplus/game_name_by_language
...
file_sys: Priority display of game titles in the current language
2022-10-27 11:33:02 -07:00
Liam
2cdfbbc07d
nvnflinger: release queued handles immediately on disconnection
2022-10-27 08:28:02 -04:00
Liam
cdb9fe978f
vi: implement CloseDisplay
2022-10-27 08:27:38 -04:00
liamwhite
86a3a0b1b4
Merge pull request #9134 from lioncash/init
...
audio_in/out_system: Pass Initialize members by value where applicable
2022-10-27 08:10:24 -04:00
bunnei
2dd6a2352d
Merge pull request #9125 from liamwhite/dummy-scheduler
...
kernel: refactor dummy thread wakeups
2022-10-26 09:51:44 -07:00
Lioncash
e0ec9ffc36
audio_in/out_system: Pass Initialize members by value where applicable
...
applet_resource_user_id isn't actually modified and is just assigned to
a member variable, so this doesn't need to be a mutable reference.
Similarly, the device name itself isn't modified and is only moved. We
pass by value here, since we can still perform the move, but eliminate a
sneaky set of calls that can unintentionally destroy the original
string. Given how nested the calls are, it's good to get rid of this
potential vector for a use-after-move bug.
2022-10-26 11:21:48 -04:00
Morph
8b4d5aeb4f
concepts: Use the std::contiguous_iterator concept
...
This also covers std::span, which does not have a const iterator.
Also renames IsSTLContainer to IsContiguousContainer to explicitly convey its semantics.
2022-10-26 00:41:54 -04:00
liamwhite
e59bd6c335
Merge pull request #9113 from german77/peer_pressure
...
service: nfp: Allow amiibos without keys
2022-10-25 12:13:31 -04:00
liamwhite
77803d96be
Merge pull request #9107 from german77/gidoly_rules
...
input_common: cache vibration tests
2022-10-25 12:13:18 -04:00
liamwhite
3c38bd7cf0
Merge pull request #9119 from liamwhite/shutdown-barrier
...
core: barrier service thread shutdown
2022-10-25 06:45:51 -04:00
Liam
1a378a7769
kernel: refactor dummy thread wakeups
2022-10-24 19:52:01 -04:00
FengChen
1689e0a71f
file_sys: Priority display of game titles in the current language
2022-10-24 21:55:25 +08:00
Fernando S
2e782a154d
Merge pull request #9122 from liamwhite/burnt-chicken
...
nvdrv: fix container destruction order
2022-10-24 12:41:46 +02:00
Liam
05f2673648
nvdrv: fix container destruction order
2022-10-23 19:25:57 -04:00
Liam
2d90a927c9
core: barrier service thread shutdown
2022-10-23 05:45:45 -04:00
german77
2ccbf5abdd
core: hid: Add handheld to nfc devices
2022-10-22 14:05:00 -05:00
Morph
c7e079a5d4
general: Resolve -Wunused-lambda-capture and C5233
2022-10-22 15:02:04 -04:00
Morph
347432524c
ipc_helpers: Ignore GCC compiler warnings only on GCC
...
Clang and ICC for whatever reason also defines __GNUC__. Exclude them from this check.
2022-10-22 15:02:04 -04:00
Morph
e6ab1f673b
general: Enforce C4800 everywhere except in video_core
2022-10-22 15:02:04 -04:00
Morph
93297d14d8
CMakeLists: Remove all redundant warnings
...
These are already explicitly or implicitly set in src/CMakeLists.txt
2022-10-22 15:02:04 -04:00
Narr the Reg
3e0aaeba98
service: nfp: Allow amiibos without keys
2022-10-21 23:08:07 -05:00
Narr the Reg
82fdfb33ac
service: nfp: remove unnecessary include
2022-10-21 21:54:31 -05:00
liamwhite
efaedcab31
Merge pull request #9106 from lioncash/copy-err
...
hid/npad: Fix copy size in GetSupportedNpadIdTypes
2022-10-21 03:47:02 -04:00
Lioncash
93a7058d8e
k_session_request: Add missing override specifier
2022-10-21 01:56:14 -04:00
Lioncash
969387a79a
k_session_request: Turn C-style array into std::array
...
Makes for stronger typing and allows tooling bounds checks provided by
the standard library for debugging purposes.
2022-10-21 01:54:34 -04:00
Lioncash
3968faec06
k_session_request: Simplify constructor initialization
2022-10-21 01:53:10 -04:00
german77
7f66050f0c
input_common: cache vibration tests
2022-10-21 00:24:08 -05:00
Lioncash
0b181eeef4
hid/npad: Fix copy size in GetSupportedNpadIdTypes
...
Previously this was passing the size of the vector into memcpy rather
than the size in bytes to copy, which would result in a partial read.
Thankfully, this function isn't used yet, so this gets rid of a bug
before it's able to do anything.
2022-10-21 00:09:22 -04:00
liamwhite
a6628e8dba
Merge pull request #9078 from liamwhite/session-request
...
kernel: Session request cleanup
2022-10-20 18:07:30 -04:00
bunnei
c0b1bdd237
Merge pull request #9096 from Kelebek1/audio_15
...
[audio_core] Update for firmware 15.0.0
2022-10-20 13:17:26 -07:00
Liam
fca195b4fb
kernel: remove most SessionRequestManager handling from KServerSession
2022-10-19 16:31:12 -04:00
Liam
3efb8eb2dc
kernel: add KSessionRequest
2022-10-19 16:31:12 -04:00
liamwhite
5ffb8b8039
Merge pull request #9082 from Morph1984/future
...
savedata_factory: Detect future save data paths
2022-10-19 16:28:42 -04:00
liamwhite
925fb63478
Merge pull request #9083 from liamwhite/take-a-chance-on-me
...
kernel: fix slab heap ABA
2022-10-19 16:27:59 -04:00
liamwhite
560bca57a2
Merge pull request #9071 from bunnei/mp-mm
...
Kernel Multiprocess (Part 1) - Persist memory & core timing
2022-10-19 16:27:43 -04:00
bunnei
97879faea4
core: hle: kernel: Migrate ProcessState to enum class.
2022-10-19 14:03:50 -04:00
Kelebek1
7bd3930939
Update audio_core for firmware 15.0.0
2022-10-19 06:16:15 +01:00
Fernando S
b8a70c9999
Merge pull request #9084 from vonchenplus/dma_copy
...
video_core: implement 1D copies based on VMM 'kind'
2022-10-19 06:56:00 +02:00
bunnei
a264b54022
core: Initialize: Add missing braces.
2022-10-18 19:13:35 -07:00
bunnei
638fa6170a
core: core_timing: Re-initialize if single/multicore state changes.
2022-10-18 19:13:35 -07:00
bunnei
11f85ea713
core: core_timing: Remove unused IsHostTiming.
2022-10-18 19:13:35 -07:00
bunnei
829e82e264
core: hle: kernel: Use result macros for new/changed code.
2022-10-18 19:13:35 -07:00
bunnei
a4d11f4427
core: Partially persist emulation state across game boots.
2022-10-18 19:13:35 -07:00
bunnei
1b787adbd0
core: hle: kernel: Fix InitializePreemption order.
2022-10-18 19:13:35 -07:00
bunnei
abcc009dff
core: hle: kernel: k_process: Improve management of page table & cleanup.
2022-10-18 19:13:35 -07:00
bunnei
79bcb38321
core: hle: kernel: k_interrupt_manager: HandleInterrupt should not depend on current process.
2022-10-18 19:13:35 -07:00
bunnei
8d4e026d05
core: hle: kernel: Remove junk.
2022-10-18 19:13:35 -07:00
bunnei
ff26190d42
core: hle: kernel: k_page_table: Impl. LockForUn/MapDeviceAddressSpace, cleanup.
2022-10-18 19:13:35 -07:00
bunnei
1baedfa12c
core: hle: kernel: Integration application memory block slab manager.
2022-10-18 19:13:34 -07:00
bunnei
ed591934fb
core: hle: kernel: k_page_table: Update, and integrate with new KMemoryBlockManager/SlabManager.
2022-10-18 19:13:34 -07:00
bunnei
58eb6953d1
core: hle: kernel: k_memory_block: Update.
2022-10-18 19:13:34 -07:00
bunnei
2bb41cffca
core: hle: kernel: k_memory_block_manager: Update.
2022-10-18 19:13:34 -07:00
bunnei
57a77e9ff4
core: hle: kernel: k_thread: Implement thread termination DPC.
2022-10-18 19:13:34 -07:00
bunnei
d02ccfb15d
core: hle: kernel: Add KDynamicResourceManager.
2022-10-18 19:13:34 -07:00
bunnei
9ec5f75f43
core: hle: kernel: Add KDynamicSlabHeap.
2022-10-18 19:13:34 -07:00
bunnei
345b9e6a08
core: hle: kernel: Add KDynamicPageManager.
2022-10-18 19:13:34 -07:00
bunnei
25dcaf1eca
core: hle: kernel: k_process: Change Status -> State.
2022-10-18 19:13:34 -07:00
bunnei
113a5ed68f
core: hle: kernel: svc_types: Add SystemThreadPriorityHighest and ProcessState.
2022-10-18 19:13:34 -07:00
bunnei
47b8160666
core: device_memory: Templatize GetPointer(..).
2022-10-18 19:13:34 -07:00
bunnei
cb073f95dc
core: hle: result: Add GetInnerValue and Includes methods.
2022-10-18 19:13:34 -07:00
bunnei
e63a5459e3
core: hle: kernel: svc_common: Add WaitInfinite & cleanup.
2022-10-18 19:13:34 -07:00
bunnei
1deb997eba
Merge pull request #9087 from Morph1984/once
...
general: Add missing pragma once
2022-10-17 22:50:02 -07:00
Liam
282cd3e5fe
kernel: fix slab heap ABA
2022-10-17 17:53:32 -04:00
FengChen
99507d0188
video_core: Implement memory manager page kind
2022-10-17 15:33:29 +08:00
Morph
bffbaddb79
general: Add missing pragma once
2022-10-17 03:14:31 -04:00
Morph
ae453ab6a8
savedata_factory: Detect future save data paths
...
Enable compatibility for new account/device save paths planned on a future implementation.
2022-10-16 23:49:55 -04:00
Morph
f706b3bd24
general: Fix spelling of "unknown"
2022-10-16 00:46:22 -04:00
liamwhite
ae6dd1143c
Merge pull request #9061 from liamwhite/writable-event
...
kernel: remove KWritableEvent
2022-10-14 17:30:38 -04:00
liamwhite
1d38109714
Merge pull request #9055 from liamwhite/hbl
...
Preliminary support for nx-hbloader
2022-10-14 17:30:11 -04:00
liamwhite
3c925a7282
Merge pull request #9032 from liamwhite/stub-friends
...
IFriendService: stub CheckFriendListAvailability
2022-10-13 20:12:08 -04:00
Liam
c0fb5e876d
result: enforce reference check specialization
2022-10-13 12:10:39 -04:00
Liam
a9ace6856d
kernel: remove KWritableEvent
2022-10-12 20:29:29 -04:00
bunnei
64c2ccb0cb
Merge pull request #9034 from liamwhite/result-macros
...
kernel: add expanded result macros
2022-10-12 17:11:07 -07:00
bunnei
0b9f2c2f14
Merge pull request #9040 from liamwhite/woe-thirty-two
...
core_timing: use high-precision sleeps on non-Windows targets
2022-10-12 15:35:06 -07:00
bunnei
3da4280e81
Merge pull request #9047 from german77/steam-aspect
...
yuzu: Add 16:10 aspect ratio
2022-10-12 12:54:23 -07:00
Liam
61a8696510
k_server_session: preliminary support for userspace server sessions
2022-10-11 18:40:40 -04:00
Liam
9b34afa588
Add implementation of svcCreateSession
2022-10-11 18:15:45 -04:00
Liam
6bcd676b61
general: preliminary support for hbl
2022-10-11 18:15:30 -04:00
Narr the Reg
eb74ef474b
yuzu: Add 16:10 aspect ratio
2022-10-10 13:32:33 -05:00
liamwhite
c3cae9d992
Merge pull request #9043 from german77/vector_data
...
input_common: have an unique vector in callback status
2022-10-09 17:46:45 -04:00
german77
224a19758e
input_common: have an unique vector in callback status
2022-10-09 12:49:18 -05:00
Liam
9632434243
core_timing: use high-precision sleeps on non-Windows targets
2022-10-08 18:27:40 -04:00
Liam
47a2efee73
kernel: add expanded result macros
2022-10-08 12:41:27 -04:00
Liam
5b7c0f13d3
fsp_srv: stub GetCacheStorageSize
2022-10-08 12:24:00 -04:00
Liam
ddf64e56af
IFriendService: stub CheckFriendListAvailability
2022-10-07 22:19:41 -04:00
Liam
9574429c5f
nfp_types: silence -Wtype-limits
2022-10-07 06:52:28 -04:00
bunnei
61883d8820
Merge pull request #6142 from lat9nq/prog_meta_ref_bind_address
...
program_metadata: Avoid reference binding to misaligned address
2022-10-06 20:42:15 -07:00
Fernando Sahmkow
ca3db0d7c9
General: address feedback
2022-10-06 21:00:54 +02:00
Liam
c80ed6d81f
general: rework usages of UNREACHABLE macro
2022-10-06 21:00:54 +02:00
Morph
903705043d
nvdisp: End system frame after requesting to swap buffers
...
Fixes frametime reporting
2022-10-06 21:00:54 +02:00
Morph
fa342cae22
address_space: Address feedback
2022-10-06 21:00:54 +02:00
Morph
fedd983f96
general: Format licenses as per SPDX guidelines
2022-10-06 21:00:54 +02:00
Fernando Sahmkow
d97d409647
NvHostChannels: improve hack for supporting multiple channels.
2022-10-06 21:00:54 +02:00
Fernando Sahmkow
c2b7de66b3
Address Feedback from bylaws.
2022-10-06 21:00:53 +02:00
Fernando Sahmkow
8a372035db
Nvflinger: correct duplication.
2022-10-06 21:00:53 +02:00
VonChenPlus
9982cff98b
Core: Fix get nvmap object random crash
2022-10-06 21:00:53 +02:00
Fernando Sahmkow
8d774e7415
NvDec: Fix regressions.
2022-10-06 21:00:53 +02:00
Liam White
afab6c143c
General: Fix compilation for GCC
2022-10-06 21:00:53 +02:00
Fernando Sahmkow
a9ca39f859
NVDRV: Further improvements.
2022-10-06 21:00:53 +02:00
Fernando Sahmkow
5a568b1655
MemoryManager: Fix errors popping out.
2022-10-06 21:00:53 +02:00