Adrià
225ebc5eee
Merge pull request #11264 from Gruzzberry/fix/sysctl-faults
...
fix(libkernel): fail sysctl and sysctlbyname with EFAULT on an unreadable or unwritable pointer
2026-10-27 21:16:21 +01:00
Dean
5ad1c72e33
Merge pull request #11603 from milescoviello/test/apr-queries
...
test(libkernel): cover the APR prefixed resolve, file size and stat queries and the submission with a result
2026-10-28 06:01:07 +13:00
Adrià
a1053d987b
Merge pull request #11273 from Gruzzberry/fix/signal-pointer-faults
...
fix(libkernel): fail the signal action, mask, stack and pending calls with EFAULT on an unusable pointer
2026-10-27 17:55:35 +01:00
Adrià
e2a5118839
Merge pull request #11047 from imellag/feat/libkernel-macho-tls
...
feat(libkernel): thread-local storage for Mach-O guests
2026-10-27 15:18:46 +01:00
Adrià
a40ad89e2c
Merge pull request #11236 from orezraey/fix/libkernel-kqueue-timer-readd-measured-ps5
...
fix(libkernel): accept EVFILT_TIMER re-adds with a time unit or on a disabled timer as measured on a PS5
2026-10-27 14:28:05 +01:00
Adrià
1089f2bbfd
Merge pull request #11039 from orezraey/fix/libkernel-mutex-yieldloops-destroyed-measured-ps5
...
fix(libkernel): fail the yield loop setter on a destroyed mutex as measured on a PS5
2026-10-27 14:08:31 +01:00
Adrià
62b3ba2522
Merge pull request #11125 from MarcZX10/marc/fix-equeue-close-during-measure
...
fix(libkernel): wait for an in-flight file measurement before closing a watched descriptor
2026-10-27 13:30:54 +01:00
Adrià
b71d5db752
Merge pull request #10855 from Felipebmaitan/feat/async-storage-engine
...
fix(libkernel): preserve AIO request ownership and identities
2026-10-27 13:30:47 +01:00
Adrià
eece5da035
Merge pull request #10838 from EagleBearerYS/feat/libkernel-sys-finish-calls-v2
...
feat(libkernel_sys): finish sched_setscheduler and sigreturn
2026-10-27 13:20:31 +01:00
Dean
c28cf99512
Merge pull request #11438 from p3n1cillin/claude/direct-map-refuses-execute
...
fix(libkernel): refuse to map direct memory with execute as the console does
2026-10-27 21:26:17 +13:00
Dean
7f02cb1802
Merge pull request #11402 from 00xDisaster/fix/libkernel-settime-efault
...
fix(libkernel): check settimeofday and clock_settime pointers
2026-10-27 21:25:30 +13:00
Dean
efed902d27
Merge pull request #10936 from AdnanKhan-ak47/fix/ampr-nop-encoding
...
fix(libSceAmpr): record Nop as n dwords with a one-dword header
2026-10-27 21:15:40 +13:00
Dean
699ffce388
Merge pull request #10550 from GitamarT045T3R/fix/libkernel-munmap-unaligned
...
fix(libkernel): round an unaligned munmap address down like FreeBSD
2026-10-27 21:11:19 +13:00
Adrià
12686b52de
Merge pull request #11060 from pushkarreddyy/fix/libkernel-writev-append-efault
...
fix(libkernel): return EFAULT for unreadable append iovec buffers on Windows
2026-10-27 08:56:20 +01:00
Adrià Franch and Claude Sonnet 5.5
c8cac8e090
fix(libkernel): initialise the CPU model before reading AVX support for guest TLS
...
Co-Authored-By: Claude Sonnet 5.5 <[email protected] >
2026-10-27 08:42:09 +01:00
Emanuele and mugurc
86cdfb8647
feat(libkernel): thread-local storage for Mach-O guests
...
FreeBSD code reaches its thread pointer through %fs and macOS cannot set
the fs base. The macOS relinker turns each %fs access of a guest image
into a stub that reads the thread pointer from a pthread key and calls
Aps5GuestTlsAllocate on a thread's first access, registers the TLS
descriptor of an image with Aps5GuestTlsRegister, and routes
__tls_get_addr to Aps5GuestTlsGetAddr. No library provided them, so a
relinked executable could not start.
- Aps5GuestTlsRegister validates the descriptor the relinker wrote and
creates the key; its destructor frees the block of a thread.
- Aps5GuestTlsAllocateThreadPointer allocates the block (the TLS template
followed by zeros, then a 0x100-byte thread control block whose first
word points at itself, as on FreeBSD) and stores the thread pointer
under the key.
- Aps5GuestTlsAllocate is the entry the stubs call: rax holds the
descriptor and returns the thread pointer, every other register is
preserved, the upper halves of the ymm registers only where AVX exists.
- Aps5GuestTlsGetAddr returns the block of the thread plus the offset.
Co-authored-by: mugurc <[email protected] >
2026-10-27 08:42:04 +01:00
Gruzzberry and Claude Sonnet 5.5
4d8fa35a5e
fix(libkernel): fail sysctl and sysctlbyname with EFAULT on an unreadable or unwritable pointer
...
FreeBSD 11.4's sys___sysctl and userland_sysctl copy the name and the
old length in, and copy the value and the length out, so a bad pointer
gives EFAULT in that order. sysctl dereferenced them directly, and
sysctlbyname read its name with strcmp.
Co-Authored-By: Claude Sonnet 5.5 <[email protected] >
2026-10-27 08:30:17 +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
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à
589799aa53
Merge pull request #10889 from krishalivaibhav/fix/macos-mlock-prot-none
...
fix(libkernel): refuse mlock on PROT_NONE ranges on macOS
2026-10-27 07:58:57 +01:00
Dean
a8ff389dee
Merge pull request #11462 from xXPBSXx/test/usleep-behavior
...
test(libkernel): cover the return value and duration of usleep
2026-10-27 18:39:37 +13:00
Dean
741bf89739
Merge pull request #9782 from DavidSamir/test/libkernel-pthread-posix-calls
...
test(libkernel): cover the POSIX pthread attribute and thread calls
2026-10-27 18:21:20 +13: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à
22782795a9
Merge pull request #10853 from krishalivaibhav/fix/macos-open-create-directory
...
fix(libkernel): refuse O_CREAT on an existing directory with EISDIR on macOS
2026-10-27 06:18:28 +01: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
Adrià Franch and Claude Sonnet 5.5
7554d2095c
fix(libkernel): keep swapcontext's finish helper externally linked
...
Co-Authored-By: Claude Sonnet 5.5 <[email protected] >
2026-10-27 06:14:13 +01:00
Yunus Shaikh
8f007d234a
feat(libkernel_sys): implement sigreturn
...
sigreturn applies FreeBSD 11's amd64 sys_sigreturn checks:
- EFAULT for a null context;
- EINVAL for unknown mc_flags, and for rflags bits outside
PSL_USERCHANGE that differ from the current flags;
- set_fpcontext's FPU format and ownership cases.
It then restores the context through the path setcontext uses, which
now lives in RestoreContext. A non-user %cs and an extended FPU state
still throw.
2026-10-27 06:14:13 +01:00
Adrià
0a570f617d
Merge pull request #10660 from imellag/build/libkernel-elf-fixture-options-not-apple
...
build(libkernel): keep the ELF-only module fixture options off Apple
2026-10-27 05:51:03 +01:00
MarcZX10
ea4eaeae42
fix(libkernel): remove a watched descriptor's events before dup2 takes its positioned lock on Windows
...
dup2 called EqueueDescriptorClosed(to) while holding the positioned-transfer lock of the descriptor, and the in-flight measurement it waits for needs that lock for its sceKernelLseek, so dup2 onto a watched descriptor deadlocked. The events are removed first, before the lock is taken.
2026-10-27 04:46:00 +00:00
MarcZX10
9b9f9b4af8
fix(libkernel): retire an in-flight file measurement on every exit with a guard
...
MeasureFiles registered the descriptors it measures in m_measuring and removed them only on the normal path, so an exception between unlocking and relocking left them there and every later RemoveDescriptorEvents for one of them waited forever. Both vectors are reserved before anything is registered, and a guard owns the registration: on every exit it relocks if needed, removes the entries and notifies.
2026-10-27 04:46:00 +00:00
MarcZX10
de2b96d8bd
fix(libkernel): wait for an in-flight file measurement before closing a watched descriptor
2026-10-27 04:46:00 +00:00
Adrià
50a28679c4
Merge pull request #10528 from akkadbakkad89/fix/direct-remap-block-index
...
fix(libkernel): walk direct-memory physical ranges by block, not page
2026-10-27 05:35:38 +01:00
Felipebmaitan
152155e484
fix(libkernel): isolate AIO controls in the registry test target
2026-10-27 01:30:11 -03:00
Felipebmaitan
e44cc5d463
chore: merge current main for AIO review fixes
2026-10-27 01:23:42 -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à
60bb466419
Merge pull request #10505 from maximilianfv/fix/libkernel-macos-itimer-terminate
...
fix(libkernel): reach the guest terminate handler from an ITIMER_REAL expiry on macOS
2026-10-27 04:51:54 +01: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
1075c38f07
Merge pull request #10799 from EagleBearerYS/feat/libkernel-sys-ampr-command-writers
...
feat(libkernel_sys): write the AMM commands and wait for their completion
2026-10-27 15:00:11 +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
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
milescoviello and Claude Opus 5.5
077bbfc98d
test(libkernel): cover the APR prefixed resolve, file size and stat queries and the submission with a result
...
Co-Authored-By: Claude Opus 5.5 <[email protected] >
2026-10-26 22:11:41 +00:00
Dean
f423468b43
Merge pull request #11339 from harisibrar1/fix/lseek-pipe-negative-espipe
...
fix(libkernel): fail lseek on a pipe with ESPIPE for a negative offset on Windows
2026-10-27 11:08:02 +13:00
Dean
d9c7bb5ffe
Merge pull request #11242 from parl0v/fix/epoll-kernel-sockets
...
fix(libSceNet): register libkernel sockets with sceNetEpollControl
2026-10-27 11:05:08 +13: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