Skip to content

test(relinker): pin unsupported guest dynamic tag 17 - #13731

Closed
rooklz wants to merge 1 commit into
boykopovar:mainfrom
rooklz:test/unsupported-guest-dynamic-tag-17
Closed

rooklz wants to merge 1 commit into
boykopovar:mainfrom
rooklz:test/unsupported-guest-dynamic-tag-17

Conversation

@rooklz

@rooklz rooklz commented Oct 31, 2026

Copy link
Copy Markdown
Contributor

What

GuestImageReader rejects legacy standard dynamic tags 15–19 and 22 with Unsupported dynamic tag <n>. This adds one invalid-case harness entry for tag 17 (DT_REL) for both plain ELF and SCE-tagged fixtures, using the existing reader message.

Tested

macOS arm64, upstream/main e2df06e661, Python 3.13, relinker-only Release -DANYPS5_RELINKER_ONLY=ON -DBUILD_TESTING=ON:

Checklist

  • Based on current main; no other open PR implements the same functions
  • One topic per PR; follow-ups go in a new PR
  • No comments in code except technical debt
  • Unimplemented paths throw (NotImplemented_nid_no_patch); silent stubs are listed under Silent stubs in their library's technical debt file
  • No notes, investigation .md files or images added to the repository (attach them to this PR)
  • New third-party code is a submodule built from source
  • Generic behaviour, not specific to one title
  • Depends on: none
  • Fixes: none
  • Unblocks: none
  • GPUs tested: n/a
  • AI-assisted: yes

@MarcZX10 MarcZX10 left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Reviewed — changes requested

This test conflicts with several open PRs that add cases and the same helper at the same location, so their landing order must be agreed and recorded under the repository's overlap rule.

What I ran

Reviewed head dfd413ac9a0dac75a14be394b58b74ffd0bd6fcc against PR base e2df06e661f94d6e63b8f6622c8c58507b0245c1; current main is 50a261e7e4ea3821db723744a4fc74fc40765ffd. The standalone preview onto current main was clean. Pairwise previews with #13717, #13723, #13727, and #13729 conflicted in the changed test file. Environment: Debian Linux x86_64, Python 3.11.2, GCC 12.2 available; no local build or test was run.

python3 tools/pr_precheck.py --repo boykopovar/AnyPS5 --pr 13731
git merge-tree --write-tree refs/pr/13717 refs/pr/13731
git merge-tree --write-tree refs/pr/13723 refs/pr/13731
git merge-tree --write-tree refs/pr/13727 refs/pr/13731
git merge-tree --write-tree refs/pr/13729 refs/pr/13731
gh pr checks 13731 --repo boykopovar/AnyPS5

The precheck confirmed the PR head and base were unchanged. Its test-quality step could not find the workspace helper in its isolated checkout; the relevant diff, conventions, Python syntax, registration, and standalone merge checks passed.

Results

Check Result
Diff, conventions, Python syntax, test registration Passed in the exact-head precheck.
Standalone merge preview onto current main Clean.
Pairwise previews Conflicts with #13717, #13723, #13727, and #13729 in test_guest_none_relocations.py.
Hosted CI Ubuntu relinker and ASAN passed; Windows relinker was in progress and both macOS relinker jobs were queued at the latest snapshot. Product and specialized jobs were skipped.
Author-reported tests The description reports the focused CTest and 526/526 relinker-only CTest passing on macOS arm64, but does not give the tested PR head; I did not independently run them.
Unedited command output

git merge-tree --write-tree refs/pr/13717 refs/pr/13731:

3bd1615178cddc6a0c30172713fc40794bda2121
100644 93c5d7a246eb261b4ef785287dae01f61938ccac 1	core/relinker/relinker/tests/test_guest_none_relocations.py
100644 0ef05cbe2f21848558f0647615a426db53bece23 2	core/relinker/relinker/tests/test_guest_none_relocations.py
100644 fdbf6967873baabe521703a9514397211337cbb6 3	core/relinker/relinker/tests/test_guest_none_relocations.py

Auto-merging core/relinker/relinker/tests/test_guest_none_relocations.py
CONFLICT (content): Merge conflict in core/relinker/relinker/tests/test_guest_none_relocations.py

git merge-tree --write-tree refs/pr/13723 refs/pr/13731:

0fe9c086ad381250fd7a4da506366dd038d16ce4
100644 93c5d7a246eb261b4ef785287dae01f61938ccac 1	core/relinker/relinker/tests/test_guest_none_relocations.py
100644 822b288709f0018ee760e318b689b1d855b85f29 2	core/relinker/relinker/tests/test_guest_none_relocations.py
100644 fdbf6967873baabe521703a9514397211337cbb6 3	core/relinker/relinker/tests/test_guest_none_relocations.py

Auto-merging core/relinker/relinker/tests/test_guest_none_relocations.py
CONFLICT (content): Merge conflict in core/relinker/relinker/tests/test_guest_none_relocations.py

git merge-tree --write-tree refs/pr/13727 refs/pr/13731:

dbf924fc2255a674f04133e6611088ffe8608d7f
100644 93c5d7a246eb261b4ef785287dae01f61938ccac 1	core/relinker/relinker/tests/test_guest_none_relocations.py
100644 d967a8e7736526b2757aaf22c1b574f72716f336 2	core/relinker/relinker/tests/test_guest_none_relocations.py
100644 fdbf6967873baabe521703a9514397211337cbb6 3	core/relinker/relinker/tests/test_guest_none_relocations.py

Auto-merging core/relinker/relinker/tests/test_guest_none_relocations.py
CONFLICT (content): Merge conflict in core/relinker/relinker/tests/test_guest_none_relocations.py

git merge-tree --write-tree refs/pr/13729 refs/pr/13731:

58f0112d1ee0e6a30d2440aa74e3f78d9fa372a0
100644 93c5d7a246eb261b4ef785287dae01f61938ccac 1	core/relinker/relinker/tests/test_guest_none_relocations.py
100644 0090bf1a95242381b6c2040ce1bc71a8630e7d15 2	core/relinker/relinker/tests/test_guest_none_relocations.py
100644 fdbf6967873baabe521703a9514397211337cbb6 3	core/relinker/relinker/tests/test_guest_none_relocations.py

Auto-merging core/relinker/relinker/tests/test_guest_none_relocations.py
CONFLICT (content): Merge conflict in core/relinker/relinker/tests/test_guest_none_relocations.py

gh pr checks 13731 --repo boykopovar/AnyPS5:

relinker (macos-latest, clang++)\tpending\t0\thttps://github.com/boykopovar/AnyPS5/actions/runs/41162998007/job/124424462208
relinker (macos-latest, clang++, x86_64)\tpending\t0\thttps://github.com/boykopovar/AnyPS5/actions/runs/41162998007/job/124424462183
relinker (windows-latest, g++)\tpending\t0\thttps://github.com/boykopovar/AnyPS5/actions/runs/41162998007/job/124424462257
conventions\tpass\t15s\thttps://github.com/boykopovar/AnyPS5/actions/runs/41162998264/job/124424438996
register-context\tskipping\t0\thttps://github.com/boykopovar/AnyPS5/actions/runs/41162998007/job/124424463638
relinker (ubuntu-latest, g++)\tpass\t4m27s\thttps://github.com/boykopovar/AnyPS5/actions/runs/41162998007/job/124424462180
relinker-asan\tpass\t2m32s\thttps://github.com/boykopovar/AnyPS5/actions/runs/41162998007/job/124424462178
linux\tskipping\t0\thttps://github.com/boykopovar/AnyPS5/actions/runs/41162998007/job/124424463668
windows\tskipping\t0\thttps://github.com/boykopovar/AnyPS5/actions/runs/41162998007/job/124424463375
write-watch\tskipping\t0\thttps://github.com/boykopovar/AnyPS5/actions/runs/41162998007/job/124424463186
eligibility\tpass\t5s\thttps://github.com/boykopovar/AnyPS5/actions/runs/41162998007/job/124424437046
intake\tpass\t6s\thttps://github.com/boykopovar/AnyPS5/actions/runs/41162998211/job/124424438161
labels\tpass\t8s\thttps://github.com/boykopovar/AnyPS5/actions/runs/41162998183/job/124424438288

Findings

Blocking

The PR reports merge-order-only overlap with #13717, #13723, #13727, and #13729, but its checklist says Depends on: none. Pairwise merge previews confirm content conflicts with all four. The same insert_dynamic_tag helper is also introduced by #13723, #13727, and #13729. The repository requires authors to agree which overlapping PR goes first and record the order with Depends on. Please coordinate the landing order with those authors and update the affected checklist line(s) to show the agreed order; I am not choosing the order for anyone.

Non-blocking

The test appears to target the existing DT_REL rejection and checks both plain ELF and SCE fixtures. The PR's test report does not identify the tested PR head; include the exact SHA with the reported results for reproducibility.

Sources

Not verified

No local build, CTest run, negative-control mutation, macOS result, Windows relinker result, product Linux/Windows run, or console behavior was verified. The author-reported tests do not name the tested PR head.

To get this to a good state

Please coordinate and record the overlap order and add the exact tested SHA to the test report. I will rerun the same relevant checks on the updated head.

@rooklz

rooklz commented Oct 31, 2026

Copy link
Copy Markdown
Contributor Author

Consolidated into #14079, which adds all of these guest_none_relocations invalid cases in one change so the test file has a single open pull request. Closing this per-case pull request in favour of that one.

@rooklz rooklz closed this Oct 31, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants