Commit Graph
3579 Commits
Author SHA1 Message Date
Dean 6762694735 Merge pull request #7761 from angleboyndn-stack/fix/libc-secure-string-destination-limits
fix(libc): reject oversized secure string destinations
2026-10-20 00:52:00 +13:00
Adrià bbb45463c7 Merge pull request #6849 from al3w0f205/feat/audiopropagation-firmware-exports
feat(libSceAudioPropagation): export missing firmware functions from database
2026-10-19 13:46:36 +02:00
Adrià db73af3506 Merge pull request #6831 from ErenYeager1836/fix/savedata-sync-memory-init-check
fix(libSceSaveData.native): return error for uninitialized sceSaveDataSyncSaveDataMemory
2026-10-19 13:43:56 +02:00
Adrià 77b3edf32a Merge pull request #6841 from Sevthered/feat/ajm-pcm-resample
feat(ajm): resample interleaved s16 PCM through codec 23
2026-10-19 13:38:50 +02:00
Adrià 62e946f114 Merge pull request #6833 from ErenYeager1836/feat/libkernel-sysconf-limits
feat(libkernel): support _SC_ARG_MAX, _SC_OPEN_MAX and _SC_IOV_MAX in sysconf
2026-10-19 13:37:44 +02:00
Adrià 7a36de66b9 Merge pull request #6823 from ErenYeager1836/feat/libSceSysmodule-is-loaded-internal
feat(libSceSysmodule): implement sceSysmoduleIsLoadedInternal
2026-10-19 13:24:27 +02:00
Adrià 3691f6ffc2 Merge pull request #6826 from hugodearaujo/fix/page-table-stats-console
fix(libkernel): count page-table entries the way the console does
2026-10-19 13:24:22 +02:00
Adrià 97d5d7a52a Merge pull request #6737 from fogydes/fix/libkernel-eventflag-deletion-and-multiwaiter-race
fix(libkernel): prevent use-after-free on event flag deletion and multi-waiter race
2026-10-19 13:05:18 +02:00
Adrià d957f18282 Merge pull request #6793 from al3w0f205/test/game-live-streaming-coverage
test(libSceGameLiveStreaming): add guest game live streaming test coverage
2026-10-19 13:05:12 +02:00
Dean f72c7aacfa Merge pull request #7506 from cadenasynyster/fix/libc-throw-bad-variant-access
feat(libc): implement std::__throw_bad_variant_access
2026-10-19 23:54:48 +13:00
Dean cd32b54c56 Merge pull request #7806 from fogydes/fix/libkernel-pipe-buffer-size
fix(libkernel): increase pipe buffer size to match FreeBSD BIG_PIPE_SIZE
2026-10-19 23:53:54 +13:00
Dean 1c2824c8de Merge pull request #7670 from thuanquang/test/kqueue-pipe-read-start
test(libkernel): time blocking waits from before the writer thread starts
2026-10-19 23:53:40 +13:00
Dean 42b7174190 Merge pull request #7669 from thuanquang/test/positioned-close-head-start
test(libkernel): give the positioned close test a real 300 us head start
2026-10-19 23:53:27 +13:00
Dean 7f6ef06348 Merge pull request #7813 from whamre/fix/windows-stdio-stream-limit
fix(libkernel): raise the Windows stdio stream limit to RLIMIT_NOFILE
2026-10-19 23:52:59 +13:00
Dean 95d08209cd Merge pull request #7779 from Antifrag/codex/http-cache-flush
fix(libSceHttp): add authentication and cookie cache flush exports
2026-10-19 23:52:45 +13:00
Dean efbca95809 Merge pull request #7824 from Rajkamalcode/fix/windows-kernel-sys-link-cleanup
test(libkernel_sys): remove links and the fixture without std::filesystem on Windows
2026-10-19 23:52:32 +13:00
Adrià b7a75819f3 Merge pull request #6720 from AdvaitPalve11/feat-netctl-info-codes
feat(netctl): implement remaining info codes in sceNetCtlGetInfo
2026-10-19 12:10:02 +02:00
Adrià fb106a7e9a Merge pull request #6724 from Ondra97/codex/fix-savedata-mount-identity
fix(savedata): prevent duplicate mounts of one backing directory
2026-10-19 12:09:57 +02:00
Nithishvelan M de1d73c50d feat(libSceSysmodule): implement sceSysmoduleIsLoadedInternal 2026-10-19 12:05:34 +02:00
Adrià 36f60df9ed Merge pull request #6719 from fogydes/feat/agc-driver-set-flip-packet-size
feat(libSceAgcDriver): implement driver flip packet size accessor and export interface
2026-10-19 11:47:18 +02:00
Adrià 439aee20e1 Merge pull request #6709 from johnmaia/feat/videodec2-10bit
feat(libSceVideodec2): output 10-bit pictures as low-bit 16-bit words
2026-10-19 11:47:14 +02:00
Adrià 3050105f24 Merge pull request #6707 from karimibrahim07/feat/libc-qsort-s
feat(libc): implement qsort_s
2026-10-19 11:47:03 +02:00
Adrià c078ccc2a0 Merge pull request #6705 from xXPBSXx/test/system-service-defaults
test(libSceSystemService): cover status, safe area, notice screen and event defaults
2026-10-19 11:06:02 +02:00
Adrià 5d39500818 Merge pull request #6704 from xXPBSXx/test/credentials-getgid-issetugid
test(libkernel): cover getgid and issetugid
2026-10-19 11:04:54 +02:00
Rajkamalcode 2224903528 test(libkernel_sys): remove links and the fixture without std::filesystem on Windows
The MinGW libstdc++ reports a dangling symbolic link as missing and clears
the error, so std::filesystem::remove neither deletes it nor fails, and
remove_all loops forever over a tree that contains one. Remove reparse
points with DeleteFileW and RemoveDirectoryW and the fixture through the
shell; record the gap in the libs technical debt.
2026-10-19 14:34:35 +05:30
Adrià 2eb4de8e13 Merge pull request #6711 from Ondra97/codex/fix-rwlock-unlock-lifetime
fix(libkernel): notify rwlock waiters before unlocking state
2026-10-19 11:03:06 +02:00
fogydes ee7280c873 fix(libkernel): prevent use-after-free on event flag deletion and multi-waiter race 2026-10-19 14:32:12 +05:30
Adrià 959cfdd1c5 Merge pull request #6686 from DavidSamir/fix/libc-mktime-before-1900-macos
fix(libc): convert mktime before 1900 from the zone's own offsets on macOS
2026-10-19 10:59:57 +02:00
Adrià 1f9e35036e Merge pull request #6685 from DavidSamir/fix/netctl-default-route-macos
fix(libSceNetCtl): read the default route from the routing table on macOS
2026-10-19 10:49:00 +02:00
Adrià 48f436406b Merge pull request #6663 from karimibrahim07/feat/libkernel-ipv6-v6only
feat(libkernel): set and read IPV6_V6ONLY on a guest socket
2026-10-19 10:44:37 +02:00
Adrià d937355cb4 Merge pull request #6703 from xXPBSXx/test/rtc-tick-add-units
test(libSceRtc): cover microseconds, minutes, hours and weeks tick addition
2026-10-19 10:43:43 +02:00
Adrià fa20f72c7d Merge pull request #6687 from al3w0f205/test/common-dialog-coverage
test(libSceCommonDialog): add guest common dialog test coverage
2026-10-19 10:43:33 +02:00
Werner 8bd8c1c338 test(libkernel): read through APR while 600 guest streams are open 2026-10-19 10:32:45 +02:00
al3w0f205 58d0d53966 test(libSceGameLiveStreaming): add guest game live streaming test coverage 2026-10-19 10:21:59 +02:00
Adrià 3fdd1f52e9 Merge pull request #6668 from DavidSamir/fix/libc-statvfs-path-macos
fix(libSceLibcInternal): read statvfs by path on macOS
2026-10-19 10:19:46 +02:00
Adrià 408455bdac Merge pull request #6667 from DavidSamir/fix/libkernel-sys-macos-posix
fix(libkernel_sys): build and check fchdir search permission on macOS
2026-10-19 10:18:13 +02:00
Adrià 4866297fcf Merge pull request #6305 from fogydes/feat/gameintent-firmware-exports
feat(libSceNpGameIntent): export missing firmware game intent interfaces
2026-10-19 10:16:12 +02:00
Adrià b95ca1b87d Merge pull request #6648 from NevesHenry/fix/libkernel-open-errno-mapping
fix(libkernel): report ENAMETOOLONG and ELOOP from open, unlink and stat
2026-10-19 10:15:06 +02:00
fogydes 9f0485c4cc fix(libkernel): increase pipe buffer size to match FreeBSD BIG_PIPE_SIZE
On Windows, pipe_nid_postfix configured the anonymous pipe with a 4096-byte buffer. When guest executables redirect standard error to a pipe via dup2 and host logging writes to standard error, the pipe buffer fills during startup before or between guest reader drains, blocking writer threads in ZwWriteFile and deadlocking the title. Increase the Windows pipe buffer capacity to 65536 bytes to match FreeBSD BIG_PIPE_SIZE used by the PS5 kernel, and cover multi-page single-shot pipe writes in guest posix scalar IO tests.
2026-10-19 13:44:41 +05:30
Adrià 5a3c515753 Merge pull request #6644 from mariuszkreft/fix/shader-ballot-once-per-block
fix(shader): ballot each predicate once per block
2026-10-19 10:14:07 +02:00
Advait Palve d4fdc030e1 feat(netctl): implement Wi-Fi info codes in sceNetCtlGetInfo 2026-10-19 10:02:07 +02:00
Adrià 079afa9b84 Merge pull request #6649 from ymatrix1/feat/http-uri-copy
feat(libSceHttp): implement sceHttpUriCopy
2026-10-19 10:01:28 +02:00
Werner 4e5eb1c3be fix(libkernel): raise the Windows stdio stream limit to RLIMIT_NOFILE
The C runtime allows 512 stdio streams by default, so after about 509
guest fopen/fdopen streams every further stream failed with EMFILE,
including the std::ifstream APR opens for each read, while getrlimit
reports 8192 open files. Raise the limit to 8192 when libkernel loads,
as the Linux build raises RLIMIT_NOFILE.
2026-10-19 08:00:07 +00:00
Adrià db7763d836 Merge pull request #6623 from IshmamDC217/fix/zlib-truncated-status
fix(libSceZlib): report a truncated stream as fatal when the output is full
2026-10-19 09:59:19 +02:00
john.maiaandClaude Opus 5.5 beba5fad03 feat(libSceVideodec2): output 10-bit pictures as low-bit 16-bit words
A picture deeper than 8 bits threw ("output deeper than 8 bits is not
implemented"), which stops Mortalfin (PPSA99141) as soon as it plays an HEVC
Main10 video (#6640).

A 10-bit picture is now written as 16-bit little-endian words with the sample
in the low 10 bits: Y rows, then interleaved UV rows at framePitchInBytes
times the height. framePitch is in samples and framePitchInBytes in bytes
(twice the width, aligned to 256). QueryDecoderMemoryInfo sizes a frame of an
HEVC or VP9 profile 2 configuration with two bytes per sample.

The layout and sizes follow EVO-PLAYER-PS5, which decodes and presents 1080p
HEVC Main10 on hardware through this path: its 10-bit check
(pitch_bytes >= pitch * 2), its UV offset, its low-bit sampling factor, and
the 1920x1088 Main10 frame buffer its hardware log reports (6128 KB after
rounding to 16 KiB).

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-19 09:58:14 +02:00
Dean e0a6f31d55 Merge pull request #7760 from MontyMcK/fix/hmd2-no-headset-regression
fix(libSceHmd2): report the PS VR2 runtime as unavailable again
2026-10-19 20:47:29 +13:00
Adrià 096279ed25 Merge pull request #6610 from JJenkx/fix/linux-sdk-heap-owner
fix(libc): share the guest SDK application allocator
2026-10-19 09:38:02 +02:00
Adrià 48335814bc Merge pull request #6592 from LuisAguilarDev/feat/libscenptus
feat(np-tus): add libSceNpTus with offline title user storage
2026-10-19 09:37:33 +02:00
m2 (AI Agent)andClaude Opus 5.5 d83f541c54 fix(shader): ballot each predicate once per block
Every OpGroupNonUniformBallot now goes through SpirvModule::AddSubgroupBallot.
A repeated ballot of the same predicate in the same block becomes an
OpCopyObject of the first ballot. Within one block the active invocations do
not change, so the result is identical. The cache is cleared at every label,
function boundary, function call and demote, and helper functions keep their
own cache.

When SPIRV-Tools is enabled, block merging and specialization can still put
two ballots of one predicate into the same block after emission, so
ValidateAndOptimizeSpirv collapses repeated block ballots the same way on
every module it returns, optimized or not.

NVIDIA 580's SPIR-V compiler segfaulted (libnvidia-gpucomp+0xe3facc) on GTA V
compute shaders that ballot one predicate many times in a block. One such
shader had 163 repeated ballots across three blocks. With them collapsed, both
crashing captures (compute-fe506552cec99bfc and compute-c02e5e3f35010fa5)
compile.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-19 09:30:26 +02:00
fogydes fa94b2cfc8 feat(libSceNpGameIntent): export missing firmware game intent interfaces 2026-10-19 09:22:26 +02:00