tablefrogpillow and Claude Opus 4.8
dbf358ef81
fix(relinker): refuse write-execute PT_LOAD overlaps and bound the congruence check
...
Addresses the #12591 review. Because the Windows image ORs page permissions,
refuse a congruent overlap when one segment is executable and the other
writable and the later segment does not start on a page boundary, which would
otherwise share a read-write-execute page; the rule is applied on both loaders
so their acceptance decision matches. Bound the congruence check to the
file-backed part of the overlap and compare spans rather than walking the
implicit zero bytes of a large bss overlap.
Expand test_executable_segments.py: byte-congruent tail and bss overlaps
accepted with their trimmed sizes and no output overlap; a write-execute
overlap refused at an unaligned boundary and accepted at an aligned one with
the Windows image carrying no write-execute section; differing bytes, an
overlap past the later end, a non-zero file byte over the later segment's bss,
and a shared start address refused; and a no-overlap control. Keep only the
PPSA ids in the relinker.md note.
Co-Authored-By: Claude Opus 4.8 <[email protected] >
2026-10-29 23:24:38 +01:00
tablefrogpillow and Claude Opus 4.8
d1904e7b66
fix(relinker): accept byte-congruent PT_LOAD overlaps by trimming the earlier segment
...
Some homebrew toolchains emit an eboot whose read-only PT_LOAD runs over the
GNU_RELRO start of the following read-write PT_LOAD, with byte-identical content
over the overlap. The relinker refused every such title with "Overlapping
PT_LOAD memory ranges" on both the Linux and Windows paths (Photo Splat VR
PPSA99770 #12183 , FoxHollow PPSA99573, WWE 13 PPSA92013).
When an earlier PT_LOAD's tail overlaps a later one, the overlapping bytes are
identical, and the overlap does not extend past the later segment, trim the
earlier segment to end where the later one starts so the later segment owns the
shared range. On Linux the preserved PT_GNU_RELRO makes that range read-only
after relocation, matching the earlier read-only mapping; the Windows image
builder has no RELRO step, so the shared range stays writable (noted in
docs/dev/debt/relinker.md).
Overlaps whose bytes differ (the #10564 case), that extend past the later
segment, or that share a start address with it are still refused on every
target; the last case would otherwise trim the earlier segment to zero length.
test_executable_segments.py covers the accepted tail overlap and all three
refused cases.
Co-Authored-By: Claude Opus 4.8 <[email protected] >
2026-10-29 23:24:38 +01:00
Adrià
4c8cff1916
Merge pull request #12572 from JulesB40/feat/libressl-oracle
...
test(libSceLibreSsl): compare exports with LibreSSL 2.5.4 behind ANYPS5_LIBRESSL_ORACLE
2026-10-29 23:08:21 +01:00
Adrià
4740534186
Merge pull request #12527 from JJenkx/windows/libc-strerror-extended
...
fix(libc): name the extended errno values in strerror as titles' libc.prx does
2026-10-29 23:01:08 +01:00
Dean
7b869f65fc
Merge pull request #11768 from oneandonlydean/salvage/abstract-storage-ipmi-9463
...
feat(prx): declare 150 PS5 3.20 exports in libSceAbstractStorage and libSceIpmi
2026-10-30 10:48:59 +13:00
Dean
82e99009f5
Merge pull request #11767 from oneandonlydean/salvage/abstract-youtube-nkwebkit-9467
...
feat(prx): declare 150 PS5 3.20 exports in libSceAbstractYoutube and libSceNKWebKitRequirements
2026-10-30 10:48:42 +13:00
Adrià
fc9240dbc5
Merge pull request #12655 from SnekPolylepis/feat/vrtracker2-exports
...
feat(prx): declare WKBundleInitialize in RnpsNKInjectedBundle
2026-10-29 22:26:11 +01:00
Dean
c40cef8436
Merge pull request #11752 from oneandonlydean/salvage/libc-internal-9498
...
feat(libSceLibcInternal): declare 120 PS5 3.20 pending exports
2026-10-30 10:18:57 +13:00
Dean
85ae67061d
Merge pull request #12856 from slopgobblercobbler/fix/audioout-param-buffer-validation
...
fix(libSceAudioOut): validate open format parameter and virtual port buffer boundaries
2026-10-30 10:18:42 +13:00
Adrià
610127f949
Merge pull request #12637 from Lindamea1/feat/http2-ssl-version-wait-timeout
...
feat(libSceHttp2): implement sceHttp2SetMinSslVersion for versions 2 to 5
2026-10-29 22:18:32 +01:00
Adrià
d608626876
Merge pull request #12633 from Lindamea1/feat/videodec2-avc-picture-info
...
feat(libSceVideodec2): implement H.264 picture info in sceVideodec2GetPictureInfo and sceVideodec2GetAvcPictureInfo
2026-10-29 22:18:26 +01:00
Adrià
5e6c22e772
Merge pull request #12208 from XairRrR/fix/shader-srt-read-below-loaded-pointer
...
fix(shader): poison an SRT read below a pointer loaded from memory
2026-10-29 21:52:04 +01:00
Adrià
102b7a5cf0
Merge pull request #12546 from Elma7e/test/signindialog-finished-state-and-result-validation
...
test(libSceSigninDialog): cover finished dialog open and close and result buffer preservation
2026-10-29 21:43:47 +01:00
Adrià
b2d7affc0e
Merge pull request #12545 from Elma7e/test/npauthauthorizedappdialog-uninitialized-precedence
...
test(libSceNpAuthAuthorizedAppDialog): cover argument validation precedence over uninitialized state
2026-10-29 21:43:40 +01:00
Adrià
7b736fe669
Merge pull request #12207 from XairRrR/fix/agc-depth-cube-array-planes
...
fix(agc): sample a cube array over depth surfaces through their depth planes
2026-10-29 21:21:04 +01:00
Adrià
cbc39db363
Merge pull request #12117 from plexerPK/codex/macos-write-watch-nonwrite-faults
...
fix(libc): forward non-write faults from watched macOS pages
2026-10-29 21:20:52 +01:00
Adrià
dde1b9f21d
Merge pull request #12081 from akkadbakkad89/agc-msaa-single-sample-lines
...
fix(agc): allow MSAA_ENABLE single-sample lines
2026-10-29 21:20:45 +01:00
Adrià
1aff97d3c8
Merge pull request #12093 from dantdmdarealguy/fix/kqueue-windows-snapshot-times
...
fix(libkernel): read a watched file's times again after its size on Windows
2026-10-29 21:20:39 +01:00
Adrià
c8bc4a20d7
Merge pull request #12606 from EagleBearerYS/feat/libkernel-sys-settimeofday
...
feat(libkernel_sys): implement sceKernelSettimeofday
2026-10-29 21:20:32 +01:00
Adrià
cc0e00efcd
Merge pull request #12585 from xXPBSXx/test/font-rebind-renderer
...
test(libSceFont): cover the sceFontRebindRenderer return codes
2026-10-29 21:19:27 +01:00
Adrià
bc02ae867d
Merge pull request #12552 from Elma7e/test/videodec-delete-and-reset-argument-validation
...
test(libSceVideodec): cover null and struct size validation in delete and reset decoder
2026-10-29 21:19:20 +01:00
Adrià
ce9394b844
Merge pull request #12566 from chitters2004/fix/agc-capture-host-only-msaa
...
fix(agc): write host-only multisample memory as zeros in a capture snapshot
2026-10-29 21:19:01 +01:00
Adrià
393db570ee
Merge pull request #12587 from EagleBearerYS/fix/audiodec-m4aac-extension-modes
...
feat(libSceAudiodec): decode M4AAC with non-delay output enabled
2026-10-29 21:18:54 +01:00
Adrià
4add0c41c4
Merge pull request #12570 from rooklz/fix/rtc-precise-local-far-tick
...
fix(libSceRtc): reject far-future ticks before precise local time conversion
2026-10-29 21:00:47 +01:00
Dean
420b6a064e
Merge pull request #12621 from Ragbie/fix/windows-defer-needed-runtime-modules
...
fix(relinker): defer the runtime modules another deferred module needs on Windows
2026-10-30 08:49:48 +13:00
Adrià
3443fd2ec8
Merge pull request #11727 from camezaro-intc/fix/ampr-command-buffer-expansion
...
fix(libSceAmpr): dynamically expand command buffer capacity on append
2026-10-29 20:35:27 +01:00
Adrià
1578380f6e
Merge pull request #12210 from XairRrR/fix/agc-stencil-plane-buffer-coherence
...
fix(agc): keep stencil planes coherent with guest memory
2026-10-29 20:35:20 +01:00
Adrià
1e5d28ad2c
Merge pull request #12523 from johnohhh1/fix/freetype-security-2.15.0
...
fix(deps): update FreeType to 2.15.0
2026-10-29 20:35:14 +01:00
Adrià
61fd1f5636
Merge pull request #12535 from LuPetro/fix/rtc-local-clock-range
...
fix(libSceRtc): check current tick before local time conversion
2026-10-29 20:35:07 +01:00
Adrià
40a8faf90a
Merge pull request #12528 from legendary-cookie/test/font-outline-buffer
...
test(libSceFont): cover the renderer outline buffer size, reset and policy
2026-10-29 20:35:00 +01:00
Adrià
43332e5f3b
Merge pull request #11865 from ionut27001/fix/libkernel-sched-own-pid
...
fix(libkernel): sched_getparam reads out-of-range priorities, sched_setparam EPERM outside 256-767, own pid on the main thread
2026-10-29 20:34:52 +01:00
Adrià
7b8217b768
Merge pull request #12975 from xXPBSXx/docs-agc-ps4-degamma
...
docs(agc): say what shadPS4 and fpPS4 do for FORCE_DEGAMMA on PS4
2026-10-29 20:34:34 +01:00
Adrià
8e6f17c952
Merge pull request #12961 from KernelPanicNT/docs/mrw-names-missing-on-device
...
docs(debt): record MetadataReaderWriter names a device module does not resolve
2026-10-29 20:34:27 +01:00
Adrià
0535f87695
Merge pull request #12929 from xXPBSXx/docs/videoout-open-busy-sources
...
docs(debt): name what the emulators do when a video bus is opened twice
2026-10-29 20:34:21 +01:00
Adrià
e94551f91a
Merge pull request #12734 from Elma7e/feat/screenshot-drc-and-vsh-capture
...
docs(libSceScreenShot): record aerolib IPC signatures for DRC parameters and VSH capture
2026-10-29 20:34:15 +01:00
Dean Galvin
d38514c546
Merge branch 'main' into salvage/libc-internal-9498
2026-10-30 08:17:22 +13:00
Dean
af4e595327
Merge pull request #11762 from oneandonlydean/salvage/small-exports-9541
...
feat(prx): declare 34 PS5 JSON, AudioOut, AudioIn and Sdma exports
2026-10-30 08:13:52 +13:00
Dean
b23f3e59b0
Merge pull request #11748 from oneandonlydean/salvage/libc-internal-9665
...
feat(libSceLibcInternal): declare 149 PS5 3.20 round six exports
2026-10-30 08:12:50 +13:00
xXPBSXx and Claude Sonnet 5.5
e4bbf01c5c
docs(agc): say what shadPS4 and fpPS4 do for FORCE_DEGAMMA on PS4
...
A new entry next to the FORCE_DEGAMMA entry. shadPS4 converts the filtered texel of every non-sRGB format to linear and fpPS4 documents the bit as applied after filtering regardless of format; here a forcing sampler reads the texture through its sRGB view, so the conversion happens before filtering, for formats that are not sRGB and not on a fixed list. PS4 (GCN) behaviour only; nothing is claimed about the console.
Co-Authored-By: Claude Sonnet 5.5 <[email protected] >
2026-10-29 18:26:05 +01:00
KernelPanicNT
404a879c75
docs(debt): record MetadataReaderWriter names a device module does not resolve
...
Measured as a payload process on a device, dlsym on the dlopen handle
returns null for the 17 libSceMetadataReaderWriter names already listed
as not exported, while the other 22 names in Export.cpp resolve. The same
holds for the four Initialize, ReadMetadata, WriteMetadata and
ExtractThumbnail names in libSceGvMp4Parser and libSceJpegParser, whose
Finalize names resolve.
2026-10-29 17:22:20 +00:00
xXPBSXx and Claude Opus 5.5
b03fa1a977
docs(debt): name what the emulators do when a video bus is opened twice
...
Co-Authored-By: Claude Opus 5.5 <[email protected] >
2026-10-29 15:29:17 +01:00
Dean
e73bc4c682
Merge pull request #12469 from BunnyFl/fix/libc-setvbuf-host-write
...
fix(libc): keep setvbuf stream buffers in host memory
2026-10-30 03:00:40 +13:00
Dean
ca6987de8a
Merge pull request #11414 from p3n1cillin/claude/videoout-register-past-last-buffer
...
fix(libSceVideoOut): return INVALID_VALUE for a registration past the last buffer as the console does
2026-10-30 03:00:15 +13:00
Dean
1b75a2de11
Merge pull request #10433 from Retr0G28/fix/freopen-directory
...
fix(libc): open a directory with freopen in a read mode on Windows
2026-10-30 02:59:56 +13:00
Adrià
9036e3c9e4
Merge pull request #12126 from morten-holm/fix/macos-host-stack-above-arena
...
fix(libkernel): move the macOS main stack out of the guest arena
2026-10-29 14:51:57 +01:00
Adrià
b0465557fd
Merge pull request #12473 from simnJS/feat/freetypeot-stream
...
feat(libSceFreeTypeOt): implement the FreeType stream calls
2026-10-29 14:44:27 +01:00
Adrià
465f290646
Merge pull request #12455 from jagrat04/feat/libSceNet-set-dns-info-to-kernel
...
feat(libSceNet): track sceNetSetDnsInfoToKernel gap and test throw
2026-10-29 14:39:50 +01:00
Adrià
e87f2d9394
Merge pull request #12162 from AlexFigas/feat/libc-aligned-array-operators
...
feat(libc): export the remaining aligned and array operator new and delete overloads
2026-10-29 14:39:44 +01:00
Dean
dfcc0e17cb
Merge pull request #11929 from kyon-eth/feat/mouse-1360-inventory
...
feat(libSceMouse): declare 7 additional exports
2026-10-30 02:34:07 +13:00
Dean
95b85a84e2
Merge pull request #11942 from milescoviello/docs/pad-open-port-types
...
docs(libScePad): note the port types ten titles pass to scePadOpen
2026-10-30 02:33:45 +13:00