Commit Graph
372 Commits
Author SHA1 Message Date
Dean 5e2f04007b Merge pull request #9326 from erickerxhalli/feat/libkernel-mutex-prioceiling
feat(libkernel): implement pthread_mutex_getprioceiling and setprioceiling
2026-11-05 08:19:17 +13:00
Dean 0306b66963 Merge pull request #10335 from MarcZX10/codex/libkernel-sys-phys-page-size
feat(libkernel_sys): report physical page size
2026-11-05 06:35:01 +13:00
Dean 806b470399 Merge pull request #10332 from MarcZX10/codex/libkernel-sys-getcwd
feat(libkernel_sys): implement __getcwd
2026-11-05 06:34:56 +13:00
Dean c37bd59e6f Merge pull request #9537 from DavidSamir/feat/libkernel-sys-revoke
feat(libkernel_sys): implement revoke
2026-11-05 06:34:23 +13:00
Dean 0db469c769 Merge pull request #9019 from yabanana/feat/kernel-sys-pwrite
feat(libkernel_sys): implement pwrite through the shared POSIX provider
2026-11-05 06:34:17 +13:00
Dean GalvinandDavidSamir 80216cf93b fix(libkernel_sys): declare revoke_nid_postfix once in the public header
Apply review request from 2026-10-27: change the libkernel_sys Api.hpp
declaration of revoke_nid_postfix to take the path, and drop the local
revoke/stat/__error declarations from Export.Discovery.cpp and
GuestKernelSysRevoke.cpp in favour of the canonical headers.

Co-authored-by: DavidSamir <[email protected]>
2026-11-04 23:23:20 +13:00
Dean Galvin f9a0088ce1 Merge main into the branch 2026-11-04 23:17:16 +13:00
Dean 91ca312437 Merge pull request #9242 from DavidSamir/feat/libkernel-sys-tcgetsid
feat(libkernel): implement tcgetsid
2026-11-03 21:09:31 +13:00
Dean 4d816d3926 Merge pull request #15374 from BunnyFl/feat/libkernel-sys-constant-unknowns
feat(libkernel_sys): answer nine unnamed exports as firmware 13.42 does
2026-11-03 21:07:34 +13:00
Dean 97d57d5be5 Merge pull request #15025 from Gruzzberry/fix/kenv-set-unset-eperm
fix(libkernel_sys): fail kenv set and unset with EPERM for a jailed caller
2026-11-03 18:13:21 +13:00
BunnyFlandClaude Opus 5.5 cd341b465e feat(libkernel_sys): answer nine unnamed exports as firmware 13.42 does
Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-11-03 04:37:35 +01:00
Dean Galvin 2d8e93e6b4 Merge commit '88bb16c20e757658078b3efce912c96b1b03502a' into HEAD
# Conflicts:
#	core/libs/prx/libkernel_sys/Export.Discovery.cpp
#	core/libs/prx/libkernel_sys/include/Api.hpp
2026-11-03 11:45:12 +13:00
Dean Galvin 843f35fa2a Merge commit '88bb16c20e757658078b3efce912c96b1b03502a' into HEAD
# Conflicts:
#	core/libs/prx/libkernel_sys/Export.Discovery.cpp
#	core/libs/prx/libkernel_sys/include/Api.hpp
2026-11-03 11:45:11 +13:00
Dean 5c24846824 Merge pull request #14548 from Ragbie/fix/link-symbolic-link-limit
fix(libkernel_sys): stop link at 32 symbolic links as FreeBSD does
2026-11-03 11:39:05 +13:00
Dean Galvin 1e6b6947b3 Merge main 096c45570f into #9019 (79b02b3bdb) 2026-11-03 09:03:03 +13:00
Dean Galvin 73cebee9e1 Merge commit 'a4eca2a056bf3bbbec98ab42e9d28163e4ea9cb8' into HEAD
# Conflicts:
#	core/libs/prx/libkernel/Socket/src/Udp.cpp
2026-11-03 06:36:11 +13:00
Dean b4ac8256a1 Merge pull request #13127 from iAbdulrrahman/feat/libkernel-sys-cpuset-getid-which-cpuset
feat(libkernel_sys): implement cpuset_getid for WhichCpuset
2026-11-03 06:26:32 +13:00
Dean 98efa281cc Merge pull request #12826 from Nixitov/feat/libkernel-dmem-for-app
feat(libkernel): export sceKernelAllocateDirectMemoryForApp and sceKernelProtectDirectMemoryForPID
2026-11-03 05:14:04 +13:00
amazedturnip f9de9beaef feat(libkernel_sys): implement is_in_sandbox 2026-11-02 06:19:34 -06:00
GruzzberryandClaude Sonnet 5.5 683fa0329c fix(libkernel_sys): fail kenv set and unset with EPERM for a jailed caller
Co-Authored-By: Claude Sonnet 5.5 <[email protected]>
2026-11-02 10:48:35 +00:00
Dean 0669d85f1a Merge pull request #11416 from LeandroLP23/fix/aio-precise-timed-wait
fix(libkernel_sys): wait for AIO timeouts until one deadline, precisely on Windows
2026-11-02 23:27:50 +13:00
Dean 95175b5acf Merge pull request #11298 from Gruzzberry/fix/dangling-link-prefix-enoent
fix(libkernel): fail with ENOENT for a path below a dangling Windows symbolic link
2026-11-02 23:27:36 +13:00
Dean dab80aa136 Merge pull request #11216 from Gruzzberry/feat/kldload
feat(libkernel_sys): implement kldload argument and privilege checks
2026-11-02 23:27:13 +13:00
Dean 8b834be455 Merge pull request #10625 from Dom3005/feat/symlink-targets
feat(libkernel_sys): create symlink targets with parent-directory components
2026-11-02 23:23:34 +13:00
Dean 042c5fa5ce Merge pull request #12925 from KernelPanicNT/feat/libkernel-condattr-getclock-null-output
feat(libkernel): throw for a null pthread_condattr_getclock output
2026-11-02 20:55:04 +13:00
Dean 73771dcb72 Merge pull request #13187 from DeveshB-1/fix/uuidgen-efault
fix(libkernel_sys): return EFAULT from uuidgen for an unwritable store
2026-11-02 10:58:37 +13:00
Dean ba75ea7d55 Merge pull request #10427 from Retr0G28/fix/fpathconf-socket
fix(libkernel_sys): answer fpathconf on a socket as FreeBSD answers it for a pipe
2026-11-02 10:48:44 +13:00
erickerxhalli cdcea60a80 Merge remote-tracking branch 'upstream/main' into feat/libkernel-mutex-prioceiling
# Conflicts:
#	core/libs/prx/libkernel/Pthread/include/Pthread.hpp
#	docs/dev/debt/libkernel.md
2026-11-01 20:07:02 +00:00
Nixitov 646ef691ee Merge origin/main into feat/libkernel-dmem-for-app
AI-assisted: yes
2026-11-01 21:01:55 +01:00
Evrim Cicek de2b3c010f fix(libkernel_sys): stop link at 32 symbolic links as FreeBSD does 2026-11-01 18:35:34 +03:00
Dean Galvin 019e993acc Merge commit 'a644edf30c501a612d06f17d05ef1b7051350cef' into HEAD
# Conflicts:
#	core/libs/prx/libkernel/include/Api.hpp
2026-11-01 23:13:39 +13:00
Dean Galvin c4629cbbe0 Merge main into feat/libkernel-condattr-getclock-null-output
# Conflicts:
#	docs/dev/debt/libkernel.md
#	docs/dev/debt/libkernel_sys.md
2026-11-01 21:13:14 +13:00
GruzzberryandClaude Sonnet 5.5 5ba892d391 fix(libkernel): fail rtprio_thread, sched_setscheduler and setpriority with the jail privilege errors
A title is jailed (agreed on #11216). FreeBSD 11.4 prison_priv_check denies
PRIV_SCHED_RTPRIO, PRIV_SCHED_SET and PRIV_SCHED_SETPRIORITY to a jailed caller.

Co-Authored-By: Claude Sonnet 5.5 <[email protected]>
2026-11-01 07:56:25 +01:00
Adrià bc77a1512b Merge pull request #13792 from DeveshB-1/fix/title-workaround-efault
fix(libkernel_sys): return EFAULT from title workaround queries for invalid memory
2026-11-01 02:00:43 +01:00
Dean Galvin c27d72435d Merge main into feat/libkernel_sys-switch-utrace-tcsetsid 2026-11-01 12:50:11 +13:00
GruzzberryandClaude Sonnet 5.5 bfef134a9a fix(libkernel): fail with ENOENT for a path below a dangling Windows symbolic link
Co-Authored-By: Claude Sonnet 5.5 <[email protected]>
2026-10-31 10:16:00 +00:00
DeveshB-1 0043a78765 fix(libkernel_sys): return EFAULT from title workaround queries for invalid memory 2026-10-31 12:18:10 +05:30
Flamefusion 7b477b6d66 feat(libkernel): implement sceKernelHasTrinityMode for a base PS5
sceKernelHasTrinityMode returns 0, the answer of a base PS5, as
sceKernelIsTrinityMode already does. Two public readings of firmware
libkernel (OpenAGC for 11.60, Backport for 11.00 to 12.70) say it
compares hw.sce_main_socid with its low five bits cleared against
0x840fc0; the base PS5 SoC id recorded for sceKernelGetMainSocId,
0x840f80, fails that test. The prototype int (void) comes from the 23
calls in a UE5 title, each storing setne of the result in a guarded
static with no argument set up.

Titles import it from libkernel, but only the libkernel_sys placeholder
inventory exported it, as a throwing stub. The export moves to libkernel
next to sceKernelIsTrinityMode, and the inventory and its counts drop
the entry. guest_operation_mode checks the result.
2026-10-31 10:42:24 +05:30
GruzzberryandClaude Sonnet 5.5 451f080829 feat(libkernel_sys): implement kldload argument and privilege checks
Co-Authored-By: Claude Sonnet 5.5 <[email protected]>
2026-10-31 03:29:20 +00:00
BunnyFlandClaude Opus 5.5 069a2849fe Merge upstream main into feat/libkernel-amm-mapper-calls-1030
Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-10-30 23:16:47 +01:00
Adrià 0399b0a2c9 Merge pull request #13487 from BunnyFl/feat/libkernel-amm-remaining
feat(libkernel_sys): add the remaining AMM command writers
2026-10-30 22:41:55 +01:00
Adrià ce7bc15837 Merge pull request #13428 from BunnyFl/feat/libkernel-is-module-loaded
feat(libkernel_sys): implement sceKernelIsModuleLoaded
2026-10-30 21:35:35 +01:00
Adrià 4ac53f763c Merge pull request #12658 from xdCloudy/feat/libkernel-sys-vm-map-timestamp
feat(libkernel_sys): implement VM map timestamp proxy
2026-10-30 21:23:50 +01:00
erickerxhalli 3aa61cb9d4 Merge remote-tracking branch 'upstream/main' into feat/libkernel-mutex-prioceiling
# Conflicts:
#	core/libs/prx/libkernel_sys/Export.Discovery.cpp
#	core/libs/prx/libkernel_sys/include/Api.hpp
2026-10-30 19:41:06 +00:00
Adrià 0814d32375 Merge pull request #13351 from BunnyFl/feat/libkernel-title-workaround-limit
fix(libkernel_sys): accept all 128 title workaround bits and add the misspelled export
2026-10-30 19:52:35 +01:00
BunnyFlandClaude Opus 5.5 8794fec072 feat(libkernel_sys): add the AMM mapper calls
sceKernelCallIndirectBuffer, sceKernelCallIndirectBuffer2,
sceKernelCallIndirectBuffer3, sceKernelGiveDirectMemoryToMapper and
sceKernelMapperGetParam follow firmware 13.42's libkernel_sys: the
submit calls queue the buffer on the AMM queue, the direct memory call
keeps the library's 2 MiB checks and the parameter call copies the
size and the AMM address ranges. The kernel-side checks that are not
known throw.

Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-10-30 18:46:30 +01:00
BunnyFlandClaude Opus 5.5 dd0bc0b781 feat(libkernel_sys): add the AMM writers for PRT maps, address and counter writes, waits and event queues
sceKernelWriteMapCommand2, sceKernelWriteUnmapToPrtCommand,
sceKernelWriteWriteAddressCommand, sceKernelWriteWriteCounterCommand,
sceKernelWriteWaitOnAddressCommand, sceKernelWriteWaitOnCounterCommand
and sceKernelWriteEventQueueOnCompletionCommand follow the checks of
firmware 13.42's libkernel and record this project's command layout.
Without the PRT flag, sceKernelWriteMapCommand2 is
sceKernelWriteMapCommand, as on the console. The debt files record where
the existing writers' checks differ from the firmware.

Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-10-30 17:45:00 +01:00
BunnyFlandClaude Opus 5.5 004b47eda7 fix(libkernel_sys): accept all 128 title workaround bits and add the misspelled export
Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-10-30 15:41:32 +01:00
DeveshB-1 7b00701824 fix(libkernel_sys): return EFAULT from sceKernelGetCompiledSdkVersion for an unwritable store 2026-10-30 15:37:31 +01:00
BunnyFlandClaude Opus 5.5 d42d595b51 feat(libkernel_sys): implement sceKernelIsModuleLoaded
Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-10-30 15:12:19 +01:00