Commit Graph
1437 Commits
Author SHA1 Message Date
Dean 36896d8a7f Merge pull request #14206 from JJenkx/windows/libkernel-select-close-race
fix(libkernel): fail a select with EBADF when its pipe closes during the wait on Windows
2026-11-03 08:46:47 +13:00
Dean b0c4915518 Merge pull request #14039 from EagleBearerYS/fix/kernel-getaffinity-console-sizes
fix(libkernel): follow the console's set sizes in pthread_getaffinity_np
2026-11-03 08:45:45 +13:00
husari.orozco 9b52a9b57e fix(tests): run the macOS game-mode activity against the real runtime
`host_performance_mac_activity` only ever drove `MacActivity` through the fake
Objective-C fixtures, and the library's debt entry recorded that the backend
had never been built or run on macOS, with the option values taken from memory.

On Apple hosts the test now begins and ends an activity through the real
`libobjc` and Foundation: `+[NSProcessInfo processInfo]`,
`beginActivityWithOptions:reason:` and `endActivity:` all reach the API, and a
second begin keeps the activity already held. The option values were checked
against the SDK's `Foundation/NSProcessInfo.h`.

The debt entry records what that measurement covers and what it does not: no
other selector is exercised, and whether the activity changes timer or
scheduling behaviour for a title is still unmeasured.
2026-11-02 12:06:19 -06:00
pushkarreddyy 9b436c4e81 docs(debt): document title sandbox app0 path alias 2026-11-02 23:22:18 +05:30
XatiXandClaude Opus 5.5 7a4fa3865b fix(libkernel): keep the libkernel contract on forwarded socket calls
bind, getsockname, sendto and recvfrom validate as for a libkernel socket
before they reach libSceNet, so a forwarded descriptor reports the same
errors. recvfrom keeps its guest address handling and MSG_WAITALL, and a
zero-length datagram receive does not wait.

Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-11-02 17:33:10 +00:00
Dean bc12e15225 Merge pull request #13695 from Retr0G28/fix/ioctl-fioclex-socket
fix(libkernel): set and clear close-on-exec with FIOCLEX and FIONCLEX on a socket
2026-11-03 06:31:41 +13:00
Federico Marras d683cc901a Merge main into fix/open-create-trailing-slash 2026-11-02 18:25:10 +01:00
pushkarreddyy f87223af5e docs(libkernel): document syscall mechanism and UC_COPY_SIZE read in user context operations 2026-11-02 22:17:28 +05:30
pushkarreddyy 6d8c169216 docs(libkernel): document EFAULT memory validation fallback in user context operations 2026-11-02 22:17:28 +05:30
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
Dean Galvin cfd438121e Merge commit 'refs/keep/sweep/main-13336' into HEAD
# Conflicts:
#	docs/dev/debt/libkernel.md
2026-11-03 05:08:15 +13:00
Dean Galvin feef6c2197 Merge commit '4f64f81ef7b4bca975b4b9f3dfd15dfff56f716f' into HEAD
# Conflicts:
#	docs/dev/debt/libkernel.md
2026-11-03 02:42:46 +13:00
Dean 4f64f81ef7 Merge pull request #15051 from xXPBSXx/docs-kernel-coredump-register-stack
docs(debt): give the stack bounds of sceCoredumpRegisterCoredumpHandler and what titles pass
2026-11-03 02:41:15 +13:00
Dean 0b20efc578 Merge pull request #12741 from SHOnnay/feat-macos-kevent-edge-watch
feat(equeue): implement macOS edge watches
2026-11-03 02:39:21 +13:00
Dean 0278ca9831 Merge pull request #12202 from MarcZX10/fix/libkernel-argument-edge-cases
fix(libkernel): reject WaitSema above the semaphore maximum and msync lengths that wrap
2026-11-03 01:29:50 +13:00
Dean eeb3dfea52 Merge pull request #11849 from AlexFigas/fix/libkernel-guest-thread-x87-control-word
fix(libkernel): start guest threads with the x87 control word 0x037f
2026-11-03 01:27:12 +13:00
Dean 24238c4cb1 Merge pull request #15038 from xXPBSXx/docs-kernel-waiteventflag-args
docs(debt): say that sceKernelWaitEventFlag fails a zero pattern and a bad wait mode
2026-11-03 00:57:56 +13:00
bluandClaude Opus 5.5 dae55d9e12 Merge branch 'main' into refactor/siginterrupt-libc-internal
Resolves docs/dev/debt/libc.md: main's updated _Thrd entry, and siginterrupt stays documented in libSceLibcInternal.md.

Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-11-02 04:12:04 -07:00
xXPBSXxandClaude Sonnet 5.5 bea432e4cc docs(debt): give the stack bounds of sceCoredumpRegisterCoredumpHandler and what titles pass
The entry said that the stack bounds are recovered without naming them.
It now names the bounds and the errors, and what the direct calls of the
titles checked pass for the stack size.

Co-Authored-By: Claude Sonnet 5.5 <[email protected]>
2026-11-02 11:49:04 +01:00
GruzzberryandClaude Sonnet 5.5 0dd9641bab fix(libkernel): fail a vm.overcommit write with EPERM
vm.overcommit is a read-write sysctl without CTLFLAG_PRISON, so FreeBSD 11.4 sysctl_root asks priv_check for PRIV_SYSCTL_WRITE before the handler runs, and prison_priv_check denies it to a jailed root. Under the credential model agreed on #11216 a write through sysctlbyname now fails with EPERM, whatever the value or its length, instead of throwing.

Co-Authored-By: Claude Sonnet 5.5 <[email protected]>
2026-11-02 10:48:01 +00:00
Dean Galvin 9863273eaf Merge commit '3c3b3cda739f9eb00a07fae50d94a3af5f6fb8f2' into HEAD
# Conflicts:
#	docs/dev/debt/libkernel.md
2026-11-02 23:35:10 +13:00
Dean 9dc910f515 Merge pull request #11042 from EagleBearerYS/fix/count-throwing-done-net-kernel
fix: report five always-throwing network and kernel exports as not implemented
2026-11-02 23:26:36 +13:00
Dean 7ff86058fb Merge pull request #10789 from rooklz/feat/libkernel-umtx-umutex
feat(libkernel): implement the umutex, condition variable and rwlock _umtx_op operations as measured on a PS5
2026-11-02 23:26:14 +13:00
Dean 0ba2a2a124 Merge pull request #10810 from MarcZX10/marc/fix-thread-detached-race
fix(libkernel): read and write the detached state of a guest thread atomically
2026-11-02 23:24:31 +13:00
xXPBSXxandClaude Sonnet 5.5 49fe3f9430 docs(debt): say that sceKernelWaitEventFlag fails a zero pattern and a bad wait mode
A zero bit pattern and a wait mode that is not exactly AND or OR, or that
sets both clear flags, return EINVAL once the event flag is resolved.
The new entry says so, what three emulators do, and what the titles
checked pass.

Co-Authored-By: Claude Sonnet 5.5 <[email protected]>
2026-11-02 11:21:35 +01:00
Dean Galvin b3871beded Merge commit '88e804b0a7df1f1ac373a9e2f72fb378d925fdd4' into HEAD
# Conflicts:
#	core/libs/tests/GuestMemory.cpp
2026-11-02 21:17:36 +13:00
Dean 4b4c038d6f Merge pull request #9882 from orezraey/fix/libkernel-mprotect-gaps-measured-ps5
fix(libkernel): protect ranges with unmapped pages as measured on a PS5
2026-11-02 20:59:05 +13:00
Dean a395bee465 Merge pull request #9491 from EagleBearerYS/fix/libkernel-sema-handoff
fix(libkernel): hand signalled semaphore tokens to queued waiters
2026-11-02 20:57:52 +13:00
Dean 83e1447ee0 Merge pull request #7509 from Pouare514/fix/equeue-bound-pending-events
fix(libkernel): bound equeue pending events
2026-11-02 20:56:07 +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 b07388b060 Merge pull request #10552 from krishalivaibhav/fix/macos-libkernel-six
fix(libkernel): build the file, module and rtld calls on macOS hosts
2026-11-02 20:54:13 +13:00
DeveshB-1 2b135012df docs(libkernel): record unreadable request debt for sceKernelSendNotificationRequest 2026-11-02 11:08:31 +05:30
Alex WhitehouseandClaude Opus 5.5 e2e64154d6 docs(libkernel): note that a failed sparse marking fails the truncate
On a volume that reports FILE_SUPPORTS_SPARSE_FILES, a failed
FSCTL_SET_SPARSE fails ftruncate, truncate and sceKernelFtruncate with the
error it reports rather than falling back to a dense extension. Say so in
the debt entry.

Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-11-02 05:19:41 +00:00
Felipebmaitan e0576a2c1c chore: integrate pinned upstream main into GS state 2026-11-01 20:48:56 -03:00
bluandClaude Opus 5.5 d984a64ceb Merge branch 'main' into refactor/siginterrupt-libc-internal
Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-11-01 16:22:33 -07:00
roboterspinne 14fe943513 fix(libkernel): fail bind and connect of a stream socket to a multicast address with EAFNOSUPPORT 2026-11-01 22:28:23 +01:00
roboterspinne 255fa04a15 fix(libkernel): connect an AF_INET6 socket to ::1 when the address is unspecified, as FreeBSD does 2026-11-01 22:25:36 +01:00
Alex WhitehouseandClaude Opus 5.5 1a69062286 docs(libkernel): keep the ftruncate debt entry and change only its sparse clauses
Restore the existing ftruncate, truncate and sceKernelFtruncate entry and
change only the clauses the sparse extension makes wrong: cluster
reservation, ENOSPC and zero-filled writes now apply to files that are not
sparse, and the entry names when a file is marked sparse.

Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-11-01 21:11:35 +00: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
Dean GalvinandAlexej Szpevák f82fb8a9c9 fix(libkernel): carry cpuset base-set and level handling
Carry #7135 by @AlexOfTheForest. Preserve current checked guest-memory copies and unrelated debt; remove the ten newly added unsupported-call throw assertions while retaining implemented success and error coverage.

Co-authored-by: Alexej Szpevák <[email protected]>
2026-11-02 08:21:01 +13:00
Ahmad Mujahid d3d3b10d31 fix(libkernel): return EFAULT from APR file size and stat queries for an unwritable output 2026-11-01 21:09:13 +04:00
Alex WhitehouseandClaude Opus 5.5 ac08050a7d fix(libkernel): extend without sparse marking when the volume query fails
Discovery failures now fall back to the plain end-of-file extension.
Sparse-marking and EOF failures still map to errors.
An IAT-patched regression covers the three truncate paths.

Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-11-01 16:03:12 +00:00
Alex Whitehouse b0035b21a2 fix(libkernel): leave Windows truncate extensions as sparse holes
Follow FreeBSD 11.4 ffs_truncate by leaving the extended range as a hole. Use FSCTL_SET_SPARSE on sparse-capable Windows volumes before setting EOF.
2026-11-01 14:51:02 +00:00
Adrià ac26e59d9a Merge pull request #13901 from DeveshB-1/fix/stat-archived-efault
fix(libkernel): return EFAULT from stat for an unwritable buffer
2026-11-01 15:13:30 +01:00
Dean Galvin efd499f60d Merge commit 'f1a7b02028ae50adaf6c5aaaef892a51841b25bf' into HEAD
# Conflicts:
#	core/libs/prx/libkernel/Equeue/Equeue.cpp
#	core/libs/tests/GuestEqueueEvents.cpp
#	docs/dev/debt/libkernel.md
2026-11-02 03:00:24 +13:00
Dean Galvin dcdf0e323b Merge commit 'f1a7b02028ae50adaf6c5aaaef892a51841b25bf' into HEAD
# Conflicts:
#	docs/dev/debt/libkernel.md
2026-11-02 02:09:19 +13:00
Dean 929e8d8442 Merge pull request #7090 from milescoviello/feat/scm-rights
feat(libkernel): pass descriptors in SCM_RIGHTS messages on Unix sockets
2026-11-02 02:06:02 +13:00
roboterspinne c2bd5e5a1f fix(libkernel): return EFAULT from AIO poll, cancel and delete for invalid memory 2026-11-01 12:34:05 +01:00
Dean c51c471250 Merge pull request #12922 from ntamas94/fix/ps4-dir-blksize
fix(libkernel): report a 64 KiB st_blksize for directories
2026-11-02 00:25:59 +13:00