Skip to content

Bump rocm-systems from d22b864 to e4c06dd - #7005

Closed
systems-assistant[bot] wants to merge 1 commit into
mainfrom
bump-rocm-systems-e4c06dd
Closed

systems-assistant[bot] wants to merge 1 commit into
mainfrom
bump-rocm-systems-e4c06dd

Conversation

@systems-assistant

Copy link
Copy Markdown
Contributor

@systems-assistant
systems-assistant Bot requested a review from a team as a code owner July 30, 2026 19:56
@systems-assistant systems-assistant Bot added the ci:run-all-archs Opt-in to building for all architectures on a pull request label Jul 30, 2026
@therock-pr-bot

Copy link
Copy Markdown

🤖 Bump PR detected (author @systems-assistant[bot]). All policy checks are auto-approved for automated dependency bumps.

Comment thread rocm-systems

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

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

The "validate artifact structure" test is failing: https://github.com/ROCm/TheRock/actions/runs/30577017670/job/91006212708?pr=7005

=========================== short test summary info ============================
FAILED tests/test_artifact_structure.py::TestArtifactStructure::test_no_cross_artifact_overlaps - Failed: Found 3 cross-artifact overlap(s) across 357 archives (see https://github.com/ROCm/TheRock/issues/3796):
  include/hsakmt/hsakmt.h
    - core-runtime (core-runtime_run_generic.tar.zst)
    - wsl-rocdxg (wsl-rocdxg_dev_generic.tar.zst)
  include/hsakmt/hsakmttypes.h
    - core-runtime (core-runtime_run_generic.tar.zst)
    - wsl-rocdxg (wsl-rocdxg_dev_generic.tar.zst)
  include/hsakmt/rocdxg_smi.h
    - core-runtime (core-runtime_run_generic.tar.zst)
    - wsl-rocdxg (wsl-rocdxg_dev_generic.tar.zst)
========================= 1 failed, 2 passed in 10.43s =========================

projects/rocr-runtime/libhsakmt/include/hsakmt/rocdxg_smi.h was added by ROCm/rocm-systems#8745

(more analysis pending)

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

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

Agent analysis:

• Root cause identified: rocm-systems PR 8745 added an install rule that makes wsl-rocdxg claim three headers already
  owned by core-runtime.

  - Commit 59a33b9 (https://github.com/ROCm/rocm-systems/commit/59a33b9e0ec69871d0c2ed9f3c0f66ea98a26307) added hsakmt.h,
    hsakmttypes.h, and rocdxg_smi.h to CMakeLists_wsl.txt.

  - The normal libhsakmt build already installs the entire include/hsakmt directory, including the new header.
  - The artifact test requires single ownership of each flattened path, even when duplicate files are byte-identical.
  - Current rocm-systems/develop still contains the duplicate install rule, so simply rerunning PR 7005 will fail again.

  Recommended resolution:

  1. Remove the three-header install(FILES ...) block from CMakeLists_wsl.txt in rocm-systems.
  2. If amdrocm-wsl-devel must expose those headers independently, make it depend on amdrocm-runtime-devel instead of
     duplicating them. It currently only depends on amdrocm-wsl.

  3. Land that upstream and refresh the submodule bump.

  For an urgent TheRock-only workaround, exclude include/hsakmt/** from the wsl-rocdxg dev component in D:/projects/
  TheRock/core/artifact-wsl-rocdxg.toml:1. I’d favor the upstream fix because the WSL CMake file itself already describes
  the headers as shared with libhsakmt.

  One secondary issue: core-runtime_run_generic.tar.zst owns these headers because D:/projects/TheRock/core/artifact-
  core-runtime.toml:1 has a bare run entry, which acts as a catch-all. That classification could be cleaned up
  separately, but moving the headers to core-runtime_dev would not eliminate the cross-artifact overlap.

Follow-up:

› Could/should this be fixed via artifact descriptors in TheRock or does it need to be fixed in rocm-systems?


• It can be fixed in TheRock’s descriptor, but the primary fix should be in rocm-systems.

  The duplicate originates from CMakeLists_wsl.txt explicitly installing headers already installed by the normal
  libhsakmt build. That file even says librocdxg should share libhsakmt’s headers “without duplicating header
  installation,” so the new block contradicts the existing ownership model.

  Recommended split:

  - rocm-systems: remove the duplicate header install block. This fixes all packaging consumers, not just TheRock.
  - TheRock: make amdrocm-wsl-devel depend on amdrocm-runtime-devel if the WSL development package needs those headers.
  - Artifact descriptor exclusion: reasonable only as a temporary unblock or if upstream deliberately decides librocdxg
    must install standalone copies.

  I would not make the descriptor exclusion the permanent fix unless the rocm-systems maintainers confirm the duplication
  is intentional. Otherwise it hides an upstream packaging collision that could also affect DEB/RPM installations outside
  TheRock.

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

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

Revert has landed as ROCm/rocm-systems#9527

@marifamd

Copy link
Copy Markdown
Contributor

revert up: ROCm/rocm-systems#9527

@marifamd
marifamd requested a review from ScottTodd July 30, 2026 23:01
@ScottTodd

Copy link
Copy Markdown
Member

Since this bump stalled, we landed some patches in #7007 that will need to be undone as part of the next bump.

@araravik-psd

Copy link
Copy Markdown
Contributor

As patches are landed are we going to go ahead and merge this bump?

@ScottTodd

Copy link
Copy Markdown
Member

No, this bump has test failures. We'll need a new one (or to reuse this and advance the submodule pointer)

@ScottTodd

Copy link
Copy Markdown
Member

Closing in favor of #7011

@ScottTodd ScottTodd closed this Jul 30, 2026
ihhethan added a commit to ROCm/rocm-systems that referenced this pull request Aug 26, 2026
Flora Cui noted on review that the hsakmt public headers are already
installed by rocr-runtime, and asked whether a second copy shipped from
the WSL build could put rocprofiler-sdk and rocr-runtime on mismatched
headers now that both live in one repo. Both points land on the same
defect, and develop already said so: the comment this rule displaced
explains that no separate header installation belongs here and that
duplicating it breaks TheRock's artifact uniqueness check
(ROCm/TheRock#7005). include/hsakmt is installed by the else() branch of
if (WIN_SDK) in libhsakmt/CMakeLists.txt, which the native package runs,
and in a full ROCm install both copies land in the same prefix.

Restore develop's comment verbatim so the rule is not re-added, and drop
the installed_header_smoke targets with it. They only checked that the
installed header set compiles standalone, so with no install rule they
have no subject. dxg-snapshot-refcount and dxg-dynamic-exports still
build and pass.

Keep the hsakmt.h forward declarations. They are not test scaffolding:
src/extsem.c includes only <hsakmt/hsakmt.h>, and without them GCC
scopes struct kfd_runtime_info and struct kfd_dbg_device_info_entry to
the prototypes that name them. linux/kfd_ioctl.h defines both and is
excluded from the dev package, so these declarations are what make those
prototypes well formed for any C consumer.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

ci:run-all-archs Opt-in to building for all architectures on a pull request

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants