Commit Graph
20967 Commits
Author SHA1 Message Date
roboterspinne 12ad27b10e Merge remote-tracking branch 'upstream/main' into fix/relinker-executable-export-attributes 2026-10-26 11:10:49 +01:00
PrivacyOnion e02c97e8f5 docs(debt): record silent stubs in libSceFsInternalForVsh debt 2026-10-26 11:10:37 +01:00
shurhundo 085495e65a fix(check-compile): remove stray blank lines in TechnicalDebt.md 2026-10-26 18:10:11 +08:00
Dean Galvin e0bd61fae2 Merge branch 'main' into pr/robust-loads 2026-10-26 23:10:10 +13:00
PrivacyOnion 02e1e24b9e docs(debt): record sceSaveDataDialogIsReadyToDisplay stub in libSceSaveDataDialog.native debt 2026-10-26 11:09:33 +01:00
Bram910andClaude Opus 5.5 cece0ab167 fix(shader): report a skipped word's error on every decode exit
A branch into a skipped word was only reported when the sweep ended at
s_endpgm or s_code_end; a sweep that ran to the end of the code threw
the generic code-boundary error instead. Only the decoder's error types
are skipped now, so other exceptions propagate, and the debt entry
records the exception per skipped word and what a misaligned sweep
through an unreachable span puts in the program.

Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-10-26 11:08:51 +01:00
Kovalev Vladislav 947e459037 fix(tools): recognize angle-wrapped documentation links 2026-10-26 16:08:13 +06:00
PrivacyOnion e76b86438d docs(debt): record silent stubs in libSceComposite debt 2026-10-26 11:08:06 +01:00
roboterspinne 028e58a18f Merge remote-tracking branch 'upstream/main' into fix/relinker-null-symbol-entry 2026-10-26 11:07:06 +01:00
PrivacyOnion 52a70ed4ed docs(debt): record silent stubs in libSceMoveTracker debt 2026-10-26 11:06:36 +01:00
Adrià FranchandClaude Sonnet 5.5 8450b8bc8a fix(libScePosixForWebKit): declare the wrap exports once in the public header
Co-Authored-By: Claude Sonnet 5.5 <[email protected]>
2026-10-26 11:04:52 +01:00
Itamar Medyoni ce1ee687d8 feat(libScePosixForWebKit): forward __wrap_fchown, link, readlink, statvfs and symlink
WebKit links these calls through GNU ld --wrap, so each export takes the
signature of the function it is named after and calls the libkernel_sys
or libSceLibcInternal implementation; the module now links both.
2026-10-26 11:04:20 +01:00
Bipin 8529647f01 fix(core): complete the silk layout and retire replaced encoders
The SILK setup writes rate/50 at +0xE4 next to +0x58 and the state test
asserts it, and a create over a marked state replaces the entry its
instance id names so the surviving Destroy frees the codec and the
following Terminate runs clean. EncodeFloat reports the reservation
that cannot fit with a throw at the checks where the console module
dies after the marker and frame 0, with the 8 MiB bound recorded as our
host stack model, and the tests cover the negative frame and the bound
setup.
2026-10-26 15:33:03 +05:30
Adrià 5b5d24cb22 Merge pull request #7910 from DavidAmsellem/docs/type1-descriptor-measurement
docs: measure type-0 and type-1 texture descriptors on gfx1100
2026-10-26 10:58:44 +01:00
Bram910 433aa1dac9 Merge origin/main into fix/shader-skip-unreachable-words 2026-10-26 10:57:34 +01:00
PrivacyOnion d568f76052 docs(debt): record silent stubs in libmdbg_syscore debt 2026-10-26 10:56:58 +01:00
PrivacyOnion f82ac73480 docs(debt): record silent stubs in libSceRemoteplay debt 2026-10-26 10:55:20 +01:00
shurhundo d935d073e1 Merge remote-tracking branch 'origin/main' into fix/check-compile-response-files-rebased
# Conflicts:
#	CMakeLists.txt
#	tools/check_compile.py
#	tools/tests/test_check_compile.py
#	tools/tests/test_check_compile_preprocessor.py
2026-10-26 17:55:05 +08:00
Adrià FranchandClaude Sonnet 5.5 654eadd7f5 merge: sync archive directories with main
Co-Authored-By: Claude Sonnet 5.5 <[email protected]>
2026-10-26 10:50:37 +01:00
xXPBSXx c3ada6c5d7 Merge main (4e43321bd6) into fix/filestream-flags-race 2026-10-26 10:49:28 +01:00
SimoneandClaude Opus 5.5 88e86a7de1 fix(libkernel): check vector I/O lengths and descriptors before offsets
Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-10-26 10:45:00 +01:00
davidamsellemandClaude Opus 5.5 6e5c1f041d docs: name the formats of the gfx1100 type-0 and type-1 measurement
GFX11 renumbers the image formats past 29, so the raw codes 10, 37 and 1
read as other formats on the console's GFX10 numbering (37 is
11_11_10_UNORM there, 2_10_10_10_SNORM on gfx1100). Name them, and say
why the TYPE 9 depth compare control only answers at 32_FLOAT: gfx1100
compares 16_UNORM and 32_FLOAT only and answers zero for the others.

Co-Authored-By: Claude Opus 5.5 (1M context) <[email protected]>
2026-10-26 10:43:45 +01:00
davidamsellemandClaude Opus 5 dc81252d64 docs: measure type-0 and type-1 texture descriptors on gfx1100
The entry recorded TYPE 1 only from a gfx1010 measurement with format 22 and left other formats and
depth-compare reads open. Measured on a gfx1100 with the hardware oracle: image_sample_lz,
image_sample_b, image_load, image_sample_c_lz and image_get_resinfo return zero and no fault for
TYPE 0 and TYPE 1 over formats 22, 10, 37 and 1, with a nonzero base over readable memory and with a
zero base. A TYPE 9 control in the same kernel returns the stored texel, the raw dword, the declared
64 and 32, and 1.0 from image_sample_c_lz with an ALWAYS depth compare and format 22.

Co-Authored-By: Claude Opus 5 <[email protected]>
2026-10-26 10:43:45 +01:00
Bipin e1a28b400b fix(core): adopt the measured opus encoder module protocol
Encode and EncodeFloat run the decrypted-module measurements: the null
state +0x01, null samples +0x02 before the state marker, a markerless
state +0x16/+0x15, null data +0x04 before the frame check, maxDataBytes
0 +0x05 and frame sizes outside the accepted durations +0x03, while a
negative maxDataBytes reaches the backend as it reaches AJM on the
console. Create zero-fills the state and writes the measured word and
bitrate tables, Destroy clears the 0x17B2 marker leaving the other
bytes, the encoder registry keys on the instance id at +0x00, and
EncodeFloat aborts for a stack reservation that cannot fit, matching
the console process death. The tests byte-check the measured layout
with the per-rate bitrates and the new check orders behind both
libraries' Api.hpp, and the debt notes carry the module runs with the
remaining AJM gaps.
2026-10-26 15:12:27 +05:30
fogydes 23dc69a2e3 fix(libkernel): return EBADF for an exec null path as measured on the console 2026-10-26 15:06:01 +05:30
PrivacyOnion a9cf03bc41 docs(debt): document sceAutoMounterClientInit and device list debt 2026-10-26 10:34:29 +01:00
Dean Galvin 8c45681cc3 fix(agc): join gputime keys to drawvariant ids and name queued draws
The [gputime] line printed a draw's range key with the draw flag still set, so an ordinary variant id 0x2 appeared as 0x8000000000000002 next to [drawvariant] 0x2. A draw's key now comes from Recorder::DrawTimingKey and the line prints it through Recorder::TimingKeyLabel as "draw 0x2", the id [drawvariant] names.

The [drawvariant] line was only printed when a draw was recorded inline, so a queued draw's first-seen variant had a timing range with no address line. It is now printed before the draw is handed to the pipeline.

The APS5_PROFILE_GPU_DRAWS row states the label, the shared per-batch query cap and that draws using a recipe are not timed.
2026-10-26 22:33:53 +13:00
Dean Galvin 809914084f Merge main into sa/per-draw-gpu-timing 2026-10-26 22:33:43 +13:00
Santhosh Kumar 379b8a550d fix(libSceFreeTypeOt): name identified export helpers 2026-10-26 15:00:51 +05:30
Santhosh Kumar f6e523db3a fix(libSceFreeTypeOt): name identified export helpers 2026-10-26 15:00:50 +05:30
Santhosh Kumar 14807c4628 docs(libSceLibreSsl): distinguish reported and unmeasured gaps 2026-10-26 14:58:51 +05:30
GruzzberryandClaude Sonnet 5.5 1fbf3a42d2 fix(libkernel): fail the signal action, mask, stack and pending calls with EFAULT on an unusable pointer
FreeBSD 11.4's sys_sigaction, sys_sigprocmask and sys_sigaltstack copy
their input in before validating it and copy the old value out after
the change, and sys_sigpending copies out; a bad pointer gives EFAULT.
The guest pointers were dereferenced directly.

Co-Authored-By: Claude Sonnet 5.5 <[email protected]>
2026-10-26 09:28:04 +00:00
GruzzberryandClaude Opus 5.5 d49b9b6f25 feat(libkernel_sys): implement setlogin
Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-10-26 09:26:45 +00:00
David 1d396a254d fix(libc): stop the unwind readability walk on an empty region
Readable advanced by each region's size, so a region reported with size 0
would never end the walk. It now counts as unreadable.
2026-10-26 10:26:19 +01:00
David ce7e0f01c8 fix(libc): return the fatal unwind error for an unknown personality on Windows
CallPersonality followed a jmp [rip+disp] import thunk by reading the bytes
at the personality address before checking it against the known
personalities, so an unmapped personality faulted instead of returning
_URC_FATAL_PHASE1_ERROR / _URC_FATAL_PHASE2_ERROR as it does on Linux. The
thunk and its slot are now read only when VirtualQuery reports them
committed and readable. exception_personality, which covers this, now runs
on Windows too.
2026-10-26 10:26:19 +01:00
fogydes cc46172855 fix(libkernel): keep the host runtime variables in the exec replacement environment 2026-10-26 14:51:38 +05:30
fogydes d53bb5a1fa fix(libkernel): align the exec arguments with FreeBSD 11.4 2026-10-26 14:51:38 +05:30
fogydes f53346a288 feat(libkernel): implement execv, execvp and execve process replacement 2026-10-26 14:51:38 +05:30
Dean 4e43321bd6 Merge pull request #11008 from Dynoooooo/ci/skip-upstream-jobs-in-forks
ci: skip the upstream-only jobs in forks
2026-10-26 22:15:57 +13:00
Dean a4879b1970 Merge pull request #10818 from Baytowne/fix/env-reference-undecodable-source
fix(tools): fail env_reference on a source file it cannot read
2026-10-26 22:15:25 +13:00
Dean 9e03c9aa69 Merge pull request #11338 from al3w0f205/test/mbus-thread-param-reserved-validation-coverage
test(libSceMbus): cover thread parameter reserved validation in sceDeviceServiceInitialize
2026-10-26 22:14:43 +13:00
Dean fbc34a6cd8 Merge pull request #11328 from al3w0f205/test/logindialog-null-argument-validation-coverage
test(libSceLoginDialog): cover null parameter and result argument validation
2026-10-26 22:14:09 +13:00
Dean 66b3afcd9e Merge pull request #11326 from al3w0f205/test/signindialog-argument-validation-order-coverage
test(libSceSigninDialog): cover argument validation order across dialog states
2026-10-26 22:13:35 +13:00
Dean 3adff0bd18 Merge pull request #11316 from al3w0f205/test/pad-vibration-mode-values-coverage
test(libScePad): cover vibration mode argument range validation
2026-10-26 22:12:57 +13:00
Dean d93f7c64f6 Merge pull request #11258 from wachi35676/fix/libSceSystemService-load-exec-stderr-runtime-lines
test(libSceSystemService): accept the write watch diagnostic before the LoadExec child's line
2026-10-26 22:12:19 +13:00
Dean 9ab54a34b8 Merge pull request #11251 from orezraey/fix/libkernel-tcp-maxseg-measured-ps5
fix(libkernel): refuse TCP_MAXSEG before a connection and raise it to 216 as measured on a PS5
2026-10-26 22:11:42 +13:00
Dean dd1a781413 Merge pull request #11188 from hyvvs/fix/pr-overlap-self-links
fix(tools): recognize pr_overlap dependency links
2026-10-26 22:11:04 +13:00
Dean 8100e480f7 Merge pull request #11186 from camezaro-intc/feat/libkernel-sys-load-start-sysmodule
feat(libkernel_sys): forward sceKernelLoadStartModuleForSysmodule to sceKernelLoadStartModule
2026-10-26 22:09:58 +13:00
Dean 71d0507780 Merge pull request #11111 from mantavisual/fix/libressl-asn1-null-accessors
fix(libSceLibreSsl): reject null strings in the ASN.1 accessors as invalid arguments
2026-10-26 22:09:21 +13:00
Dean 128e47a83b Merge pull request #11099 from StoneDC/fix/ctest-quoted-continuations
fix(tools): honor quoted CMake line continuations
2026-10-26 22:08:45 +13:00