Adrià
57e44c4b3d
Merge pull request #11257 from orezraey/docs/libkernel-accept-option-inheritance-measured-ps5
...
docs(libkernel): record the socket options an accepted socket inherits as measured on a PS5
2026-10-27 08:28:31 +01:00
Adrià
5c356f41c3
Merge pull request #11048 from imellag/feat/libkernel-macos-main-thread
...
feat(libkernel): start the guest off the main thread on macOS
2026-10-27 08:27:20 +01:00
Adrià
a0aafc1dba
Merge pull request #11253 from orezraey/docs/libkernel-module-process-info-measured-ps5
...
docs(libkernel): record the text location, unwind info, SoC id and model queries as measured on a PS5
2026-10-27 08:26:53 +01:00
Emanuele
896ae02ab5
fix(libkernel): address the macOS stack protection review
2026-10-27 08:16:36 +01:00
Emanuele
62d80b578f
fix(libkernel): protect guest stack pages through the write watch on macOS
2026-10-27 08:16:36 +01:00
Emanuele
f2e8d5a3eb
fix(libkernel): address the macOS memory protection review
...
- mlock on macOS wires only the pages libkernel has not wired yet. XNU
counts each wire of a page, and the locked ranges merge overlapping
locks, so a page locked twice stayed wired after munlock and
munlockall. The mlock test checks the wire count on macOS.
- mprotect changes a watched page through GuestWriteWatchProtect, which
applies the host protection and records it under the write watch's
lock, so a collection on another thread cannot run between the two.
The write watch test covers it.
- sceKernelVirtualQuery takes a watched page's write permission from the
write watch for memory outside the guest allocation registry.
- GuestAllocationsGuestPages counts an image segment up to the end of
its last host page, as the image page collection does.
- The macOS includes stay in main's include block, so the host code
other pull requests add there still sees them; the unused Mach-O
headers and the end trim, which never changed the protected spans,
are gone, and the guest page size is passed in.
- The libc and libkernel debt entries describe what is wired now.
2026-10-27 08:16:36 +01:00
Emanuele and mugurc
190ed6c8fb
feat(libkernel): guest memory protection and VirtualQuery on macOS hosts
...
- mprotect: the guest rounds a range to its 16 KiB pages. A Mach-O image
is loaded at a multiple of the host page size only (4 KiB under
Rosetta), so the pages are counted from where the ELF address 0 of the
image holding the range was loaded, and a rounded edge smaller than a
guest page that lies in the gap between two segments, where no host page
exists, is left out. The write watch is told the new protection.
- sceKernelVirtualQuery reads the region with mach_vm_region.
- sceKernelMunlockall unlocks the ranges libkernel locked, one by one:
macOS has no munlockall, which fails there with ENOSYS and would
overwrite errno.
- The stack protect test reads page protections with mach_vm_region.
This is mugurc's f66a4df741 from his macOS series, without the mlock
check that #10889 adds.
Co-authored-by: mugurc <[email protected] >
2026-10-27 08:16:35 +01:00
Dean
81267b2204
Merge pull request #8725 from orezraey/fix/libkernel-sync-on-address-measured-ps5
...
fix(libkernel): follow sceKernelSyncOnAddressWait and Wake as measured on a PS5
2026-10-27 20:03:20 +13:00
Adrià
f1adec7eb1
Merge pull request #11230 from orezraey/docs/libkernel-sync-timeouts-eventflag-measured-ps5
...
docs(libkernel): record timed self-locks, event flag open and create, and the reltimed calls as measured on a PS5
2026-10-27 08:00:27 +01:00
milescoviello and Claude Opus 5.5
f198f05547
docs(libkernel): scope the sceKernelVirtualQuery reads to the inspected instructions
...
Co-Authored-By: Claude Opus 5.5 <[email protected] >
2026-10-27 06:47:14 +00:00
milescoviello and Claude Opus 5.5
d97cdbbb7f
docs(libkernel): note the sceKernelVirtualQuery fields seven titles read
...
Co-Authored-By: Claude Opus 5.5 <[email protected] >
2026-10-27 06:22:00 +00:00
orezraey and Claude Opus 5.5
8820aa309f
Merge main into docs/libkernel-module-process-info-measured-ps5
...
Co-Authored-By: Claude Opus 5.5 <[email protected] >
2026-10-27 02:49:54 -03:00
Dean
5023cd5a25
Merge pull request #9263 from imellag/fix/libkernel-macos-guest-unwind-info
...
fix(libkernel): report unwind information for guest and host addresses on macOS
2026-10-27 18:19:28 +13:00
Adrià
d093ea9ced
Merge pull request #10767 from Ragbie/fix/recvmsg-after-shut-rd
...
fix(libkernel): drop the data a socket held before shutdown(SHUT_RD) in every receive path
2026-10-27 06:14:18 +01:00
Felipebmaitan
e44cc5d463
chore: merge current main for AIO review fixes
2026-10-27 01:23:42 -03:00
orezraey and Claude Opus 5.5
8f16195370
Merge main into docs/libkernel-sync-timeouts-eventflag-measured-ps5
...
Co-Authored-By: Claude Opus 5.5 <[email protected] >
2026-10-27 01:08:10 -03:00
Adrià
b986c11a34
Merge pull request #10543 from maximilianfv/fix/libkernel-macos-append-positioned-writes
...
fix(libkernel): append positioned writes on an O_APPEND descriptor on macOS
2026-10-27 04:52:27 +01:00
Adrià
244bc628fd
Merge pull request #11116 from orezraey/docs/libkernel-version-boottime-socpower-measured-ps5
...
docs(libkernel): record the version stubs, kern.boottime and the SoC power block as measured on a PS5
2026-10-27 04:51:20 +01:00
Adrià
33d2affaa6
Merge pull request #10901 from EagleBearerYS/docs/debt-gaps-bf208
...
docs(debt): bring five libraries' debt files in line with the tree
2026-10-27 04:50:47 +01:00
Adrià
c93ba3b5a3
Merge pull request #10848 from xXPBSXx/docs/debt-kernel-getoperationmode-title
...
docs(debt): note what a title does with the sceKernelGetOperationMode values
2026-10-27 04:50:35 +01:00
Adrià
02f66c4e97
Merge pull request #10826 from xXPBSXx/docs/debt-kernel-createeventflag-title
...
docs(debt): note how titles call sceKernelCreateEventFlag
2026-10-27 04:50:20 +01:00
orezraey and Claude Opus 5.5
fc51fc0f6e
Merge main into docs/libkernel-sync-timeouts-eventflag-measured-ps5
...
Co-Authored-By: Claude Opus 5.5 <[email protected] >
2026-10-26 23:19:30 -03:00
orezraey and Claude Opus 5.5
cf1771ec7e
Merge main into fix/libkernel-mutex-yieldloops-destroyed-measured-ps5
...
Co-Authored-By: Claude Opus 5.5 <[email protected] >
2026-10-26 23:10:34 -03:00
Dean
af2a996527
Merge pull request #11263 from orezraey/fix/libkernel-cond-signalto-measured-ps5
...
fix(libkernel): fail scePthreadCondSignalto for a null or non-waiting thread as measured on a PS5
2026-10-27 15:01:44 +13:00
Dean
4571f48bff
Merge pull request #11173 from p3n1cillin/claude/mmap-excl-ignored
...
fix(libkernel): ignore MAP_EXCL in fixed anonymous mmap as measured on a PS5
2026-10-27 15:01:30 +13:00
Dean
169f3e3e73
Merge pull request #10666 from WallisSkill/fix/libkernel-raise-at-guest-return
...
fix(libkernel): deliver a raised exception at the guest return of a thread in host code
2026-10-27 14:59:25 +13:00
Dean
8056827ea8
Merge pull request #10133 from orezraey/fix/libkernel-posix-thread-attr-measured-ps5
...
fix(libkernel): follow the thread priority ranges and POSIX attribute errors measured on a PS5
2026-10-27 14:58:57 +13:00
Dean
6e98696398
Merge pull request #10061 from elieh999/fix/rwlockattr-destroyed-pshared
...
fix(libkernel): preserve destroyed rwlock attributes
2026-10-27 14:58:42 +13:00
Dean
86a38cdf6c
Merge pull request #9187 from slider/feat/libkernel-sched-params
...
feat(libkernel): implement sched_getparam, sched_getscheduler and sched_setparam for the calling thread
2026-10-27 14:57:32 +13:00
Henryisdjfunkyho
42bbc98235
chore: merge main into cancellable timed sleeps
2026-10-26 17:13:30 -07:00
Dean Galvin
f733f7dc43
Merge branch 'main' into feat/lchflags
2026-10-27 11:58:22 +13:00
orezraey and Claude Opus 5.5
a09cef91b1
Merge main into fix/libkernel-sync-on-address-measured-ps5
...
Co-Authored-By: Claude Opus 5.5 <[email protected] >
2026-10-26 19:31:46 -03:00
orezraey and Claude Opus 5.5
717bfa18c8
Merge main into docs/libkernel-version-boottime-socpower-measured-ps5
...
Co-Authored-By: Claude Opus 5.5 <[email protected] >
2026-10-26 19:31:21 -03:00
orezraey and Claude Opus 5.5
b131fa34c6
Merge main into docs/libkernel-sync-timeouts-eventflag-measured-ps5
...
Co-Authored-By: Claude Opus 5.5 <[email protected] >
2026-10-26 19:12:16 -03:00
orezraey and Claude Opus 5.5
ed019e3e73
Merge main into docs/libkernel-module-process-info-measured-ps5
...
Co-Authored-By: Claude Opus 5.5 <[email protected] >
2026-10-26 19:11:32 -03:00
orezraey and Claude Opus 5.5
7b355abdb9
docs(libkernel): shorten the socket option debt entries
...
Co-Authored-By: Claude Opus 5.5 <[email protected] >
2026-10-26 19:10:59 -03:00
orezraey and Claude Opus 5.5
92581772df
Merge main into docs/libkernel-accept-option-inheritance-measured-ps5
...
Co-Authored-By: Claude Opus 5.5 <[email protected] >
2026-10-26 19:09:54 -03:00
Evrim Cicek
3f67bbcd4e
Merge branch 'main' of https://github.com/boykopovar/AnyPS5 into fix/recvmsg-after-shut-rd
...
# Conflicts:
# core/libs/prx/libkernel/Socket/src/Udp.cpp
# docs/dev/debt/libkernel.md
2026-10-27 01:04:45 +03:00
Dean
3ae0fb5601
Merge pull request #11224 from orezraey/fix/libkernel-module-list-null-count-measured-ps5
...
fix(libkernel): write the module handles before failing a null count as measured on a PS5
2026-10-27 11:04:12 +13:00
Dean
7401a472fe
Merge pull request #11195 from orezraey/fix/libkernel-sema-invalid-arguments-measured-ps5
...
fix(libkernel): return EINVAL for the semaphore arguments a PS5 rejects
2026-10-27 11:02:54 +13:00
Dean
94d981d20b
Merge pull request #11194 from orezraey/fix/libkernel-socket-address-length-first-measured-ps5
...
fix(libkernel): check the socket address length before its family as measured on a PS5
2026-10-27 11:02:40 +13:00
Dean
45b71b5074
Merge pull request #11190 from zaryabzip/feat/system-flexible-memory
...
feat(libkernel): implement sceKernelMapNamedSystemFlexibleMemory
2026-10-27 11:02:21 +13:00
Dean
d018922066
Merge pull request #11141 from orezraey/fix/libkernel-recvmsg-timestamps-measured-ps5
...
fix(libkernel): report SCM_BINTIME and SCM_TIMESTAMP from recvmsg as measured on a PS5
2026-10-27 11:01:32 +13:00
Dean
5dd28e5682
Merge pull request #11135 from orezraey/fix/libkernel-dupfd-cloexec-measured-ps5
...
fix(libkernel): fail F_DUPFD_CLOEXEC and make F_DUP2FD_CLOEXEC ignore its target as measured on a PS5
2026-10-27 11:01:17 +13:00
Dean
8600cbc763
Merge pull request #11108 from orezraey/fix/libkernel-nice-stays-zero-measured-ps5
...
fix(libkernel): keep the nice value at 0 after setpriority as measured on a PS5
2026-10-27 11:00:52 +13:00
Dean
2da4d74cac
Merge pull request #11025 from orezraey/fix/libkernel-sw-version-block-measured-ps5
...
fix(libkernel): accept any block size and a null block in the system software version getters as measured on a PS5
2026-10-27 10:59:21 +13:00
Dean
be0bbc6518
Merge pull request #11006 from harisibrar1/fix/so-acceptfilter-einval
...
fix(libkernel): fail SO_ACCEPTFILTER with EINVAL on a socket that is not listening
2026-10-27 10:59:07 +13:00
Dean
3c4aab5acc
Merge pull request #10830 from babyhuey/feat/libkernel-kern-proc-pid
...
feat(libkernel): answer kern.proc.pid for the calling process
2026-10-27 10:54:49 +13:00
Dean
ad1caa840c
Merge pull request #10385 from alvaroelpob/feat/libkernel-pthread-setname
...
feat(libkernel): implement pthread_mutex_setname_np, pthread_rwlock_setname_np and pthread_barrier_setname_np
2026-10-27 10:54:00 +13:00
p3nicillin and Claude Opus 5.5
1ac38cc5c4
docs(libkernel): drop the closed execute gap and name the batch map callers
...
Co-Authored-By: Claude Opus 5.5 <[email protected] >
2026-10-26 21:40:48 +00:00