Commit Graph
866 Commits
Author SHA1 Message Date
Dean 379b1dca32 Merge pull request #9164 from MaxLikesCode/fix/kernel-sema-einval
fix(libkernel): return EINVAL for the semaphore arguments the console rejects
2026-10-24 15:28:17 +13:00
Dean 43d6937041 Merge pull request #10246 from orezraey/fix/libkernel-pthread-create-detach-measured-ps5
fix(libkernel): refuse long thread names and answer a detach after a join as measured on a PS5
2026-10-24 15:26:04 +13:00
Dean 6fc058f5cf Merge pull request #10302 from orezraey/fix/libkernel-socket-buffers-measured-ps5
fix(libkernel): keep socket buffer sizes and SO_NBIO as measured on a PS5
2026-10-24 15:25:05 +13:00
Dom3005andClaude Opus 5.5 dd6220698a fix(libkernel): change O_APPEND on a Windows file through fcntl
fcntl(F_SETFL) threw when it changed O_APPEND on a Windows file. The
guest flag already chooses WriteAtEnd, but a descriptor opened with
O_APPEND also carries the CRT's append flag, so _write kept appending
after the guest cleared it. F_SETFL now replaces the CRT descriptor of
every descriptor sharing the open file's status with a duplicate handle
opened with or without _O_APPEND, as libc fdopen does for append mode.

Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-10-24 02:28:14 +02:00
Dean d8b73e3644 Merge pull request #9273 from DavidSamir/feat/libkernel-sys-pselect
feat(libkernel): implement pselect over select
2026-10-24 12:53:12 +13:00
orezraeyandClaude Opus 5.5 9402457fb7 Merge fix/libkernel-multicast-membership-measured-ps5 into fix/libkernel-socket-receive-flags-measured-ps5
Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-10-23 20:50:51 -03:00
Retr0 68db53d7a5 fix(libkernel): fail sendfile with EINVAL for a file that is not a regular file 2026-10-24 02:44:14 +03:00
MaxandClaude Opus 5.5 3ddaa64707 fix(libkernel): return EINVAL for the semaphore arguments the console rejects
The prosper console oracle measured SCE_KERNEL_ERROR_EINVAL for creating
a semaphore with an initial count above the maximum, a maximum of 0, a
negative initial count or a null name, for polling 0 or more than the
maximum, and for signalling 0. These threw, or polled past the maximum
returned EBUSY, and signalling 0 succeeded.

Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-10-24 01:18:34 +02:00
orezraeyandClaude Opus 5.5 60135e8855 Merge main into fix/libkernel-aio-limits-measured-ps5
Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-10-23 20:06:53 -03:00
Dean ca7bf033c5 Merge pull request #9005 from JJenkx/fix/libkernel-sema-null-esrch
fix(libkernel): return ESRCH for a null semaphore handle
2026-10-24 11:58:20 +13:00
Dean 85f2f2d478 Merge pull request #8544 from Retr0G28/fix/fcntl-getfl-pipe-rdwr
fix(libkernel): report O_RDWR from F_GETFL on both ends of a pipe
2026-10-24 11:55:31 +13:00
slopggobblercobbler81 2f1cfdfa1a fix(libkernel): enforce SESS_LEADER EPERM and negative pid ESRCH ordering in setpgid/setpgrp 2026-10-23 23:52:23 +02:00
slopggobblercobbler81 782637fce4 feat(libkernel): implement setpgid and setpgrp 2026-10-23 23:52:21 +02:00
Dean 313d905437 Merge pull request #9877 from orezraey/fix/libkernel-release-flexible-measured-ps5
fix(libkernel): keep the range sceKernelReleaseFlexibleMemory releases mapped as measured on a PS5
2026-10-24 10:37:09 +13:00
orezraeyandClaude Opus 5.5 88d5f8483a docs(libkernel): keep the unmodelled EBADF of sceKernelAvailableDirectMemorySize in the debt
Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-10-23 17:49:06 -03:00
orezraeyandClaude Opus 5.5 4dc6530ee0 fix(libkernel): refuse an ip_mreqn with a non-zero address and require the multicast host checks
Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-10-23 17:45:18 -03:00
orezraeyandClaude Opus 5.5 ad03c52f38 Merge main into fix/libkernel-socket-address-measured-ps5
Keep #9108's long IPv4-mapped bind on a dual-stack datagram socket, now also for connect, on top of the measured exact-size checks; drop LongAddressError and the duplicate listening check.

Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-10-23 17:32:09 -03:00
orezraeyandClaude Opus 5.5 aebed518a7 Merge main into fix/libkernel-aio-limits-measured-ps5
Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-10-23 17:27:35 -03:00
alnsx 64c6fd09c3 fix(libkernel): poll files on standard descriptors as vnodes 2026-10-23 16:26:17 -04:00
Dean Galvin baa657a24b Merge main into fix/libkernel-sema-null-esrch 2026-10-24 09:17:39 +13:00
Dean Galvin 49357c5ea3 Merge main into fix/libkernel-cond-destroyed-measured-ps5 2026-10-24 09:17:35 +13:00
Dean 7956a166c7 Merge pull request #9108 from Retr0G28/fix/socket-address-length-exact
fix(libkernel): reject socket addresses longer than sockaddr_in or sockaddr_in6 with EINVAL
2026-10-24 09:12:39 +13:00
Dean fac234a47c Merge pull request #9134 from orezraey/fix/libkernel-event-flag-measured-ps5
feat(libkernel): match event flags to PS5 and add shared flags
2026-10-24 09:12:14 +13:00
Dean Galvin a2ee2958a5 Merge main into fix/fcntl-getfl-pipe-rdwr 2026-10-24 09:07:08 +13:00
orezraeyandClaude Opus 5.5 cb562bb8da Merge main into fix/libkernel-sysctl-system-measured-ps5
Main now returns ENOENT for unknown sysctlbyname and sysctlnametomib names, so the absent-names debt entry no longer says they throw and keeps main's unknown-names entry.

Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-10-23 16:47:17 -03:00
Adrià 8cc82c85bf Merge pull request #6469 from QRMOE/fix-low-guest-address-mappings
fix(memory): honor low guest mapping hints
2026-10-23 21:06:11 +02:00
orezraeyandClaude Opus 5.5 dd27146c27 fix(libkernel): keep the TCP flag and IP receive options a PS5 accepts
Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-10-23 15:45:11 -03:00
orezraeyandClaude Opus 5.5 062dc00385 fix(libkernel): join and leave multicast groups as measured on a PS5
Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-10-23 15:38:52 -03:00
orezraeyandClaude Opus 5.5 802bcc8d61 fix(libkernel): share a port between SO_REUSEPORT sockets on the host
Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-10-23 15:38:45 -03:00
Adrià 606999f3ab Merge pull request #7937 from DavidSamir/feat/libkernel-jit-shared-memory-macos
feat(libkernel): JIT shared memory on macOS hosts
2026-10-23 20:37:27 +02:00
orezraeyandClaude Opus 5.5 4aaa0dbf38 docs(libkernel): record that the other flexible map flags are accepted here
Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-10-23 15:35:45 -03:00
orezraeyandClaude Opus 5.5 1cf109240f fix(libkernel): check a sendto address length before its family as measured on a PS5
Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-10-23 15:24:31 -03:00
orezraeyandClaude Opus 5.5 5d84d22c3c docs(libkernel): say which flexible map call the other flags were tried on
Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-10-23 15:22:21 -03:00
orezraeyandClaude Opus 5.5 122541c7a8 fix(libkernel): keep the SOL_SOCKET flags a PS5 accepts
Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-10-23 15:20:17 -03:00
orezraeyandClaude Opus 5.5 29f717c607 fix(libkernel): keep TCP_MAXSEG and the TCP keepalive options as measured on a PS5
Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-10-23 15:20:16 -03:00
orezraeyandClaude Opus 5.5 b776394b4f fix(libkernel): keep IP_TTL, IP_TOS and the multicast options as measured on a PS5
Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-10-23 15:20:03 -03:00
orezraeyandClaude Opus 5.5 d8d03c2839 fix(libkernel): give the host the requested socket buffer and test the inherited sizes
Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-10-23 15:16:09 -03:00
orezraeyandClaude Opus 5.5 9afaeff204 fix(libkernel): answer a zero-length recvmsg on an empty datagram socket
Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-10-23 15:14:09 -03:00
orezraeyandClaude Opus 5.5 3c943eb74c docs(libkernel): record select limits as measured on a PS5
Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-10-23 14:14:51 -03:00
orezraeyandClaude Opus 5.5 a537c33096 fix(libkernel): answer zero-length datagram receives and recvmsg flags as measured on a PS5
Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-10-23 14:09:47 -03:00
orezraeyandClaude Opus 5.5 4710aa2ac4 docs(libkernel): record flexible memory flag 0x8000 as measured on a PS5
Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-10-23 13:54:48 -03:00
orezraeyandClaude Opus 5.5 f334c156e1 fix(libkernel): keep socket buffer sizes and SO_NBIO as measured on a PS5
Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-10-23 13:49:03 -03:00
orezraeyandClaude Opus 5.5 2aaf519eb7 fix(libkernel): check socket address families and lengths as measured on a PS5
Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-10-23 13:30:58 -03:00
Hermes Agent a05ea75447 docs(libkernel): clarify unknown sysctl lookup behavior 2026-10-23 12:27:31 -04:00
Hermes Agent 950a21aec8 fix(libkernel): return ENOENT for unknown sysctl names 2026-10-23 12:27:30 -04:00
orezraeyandClaude Opus 5.5 2a05015c2a fix(libkernel): refuse long thread names and answer a detach after a join as measured on a PS5
scePthreadCreate returns ENAMETOOLONG for a name of 32 bytes or more without creating the thread, and scePthreadDetach returns ESRCH for a joined thread.

Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-10-23 12:21:46 -03:00
JJenkx d5987b3fb8 docs(loader): keep lifecycle debt focused on ABI limits 2026-10-23 11:15:40 -04:00
JJenkx cd5dea57aa test(loader): verify explicit runtime starts and record lifecycle limits 2026-10-23 11:15:40 -04:00
orezraeyandClaude Opus 5.5 e437f33787 fix(libkernel): answer the thread atexit references as measured on a PS5
Increment returns -1 for an address outside every module and Decrement never fails, instead of throwing.

Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-10-23 12:13:07 -03:00
QRMOE 5836873170 fix(memory): honor low guest mapping hints 2026-10-23 16:51:33 +02:00