Skip to content

fix(BACKEND-ROCM): gfx1200 -Werror build break in rocm_paged_attn.hip (unused m_split, g) #3254

Description

@joral

Row: -

What's broken

main (current head, via commit b53e20f85e "Implement ROCm split-KV
attention decode (issue #845)", authored 2026-09-17) fails to build for
gfx1200 under the project's -Werror HIP arm. Two unused-variable
diagnostics in src/vt/rocm/rocm_paged_attn.hip:

src/vt/rocm/rocm_paged_attn.hip:1227:11: error: unused variable 'm_split' [-Werror,-Wunused-variable]
    float m_split = -INFINITY;
          ^~~~~~~
src/vt/rocm/rocm_paged_attn.hip:1207:17: error: unused variable 'g' [-Werror,-Wunused-variable]
  const int64_t g = h / (hq / num_kv_heads);
                ^

Compiler: ROCm's bundled Clang 22.0.0 (/opt/rocm/lib/llvm/bin/clang++),
target gfx1200.

How found

Discovered while independently reproducing the operator's gfx1200 toggle
matrix for PR #3036 (KERNEL-QUANT-CIQ-GEMM-ROCM's cooperative-tile WMMA
arms). That PR's own changed files are unaffected — git diff --stat between
the row branch's pre-merge tip and its current head (after merging main)
touches only src/vt/rocm/rocm_grouped_gemm.hip and
tests/vt/test_backend_cross_device.cpp. rocm_paged_attn.hip is untouched
by #3036; the break is inherited purely from the main merge.

git blame on both lines attributes them to b53e20f85e alone.

Impact

Any current gfx1200 build (this row's toggle matrix included) fails before a
single device test can run. Whatever CI runs for this repo does not build
ROCm/HIP (no such check appears on recent PRs, #3036 included), so this
never surfaced there — only a real gfx1200 box building current main
reproduces it.

Repro

git clone https://github.com/mudler/vllm.cpp && cd vllm.cpp
mkdir build-hip && cd build-hip
cmake .. -DVLLM_CPP_ROCM=ON -DCMAKE_HIP_ARCHITECTURES=gfx1200
make -j16 test_backend_cross_device

Host used: isravale, RX 9060 XT (gfx1200), ROCm 7.2.3.

Owed

No row claims this yet. Per AGENTS.md "An issue you do not fix in the same
flow has to say who owns it," this needs either an owning row's Row: line
or a spec's ## Owed entry — filed as - because neither exists yet; needs
triage to pick an owner (most likely folded into BACKEND-ROCM or a fresh
row for the gfx1200 -Werror arm).

FOLLOWING_AGENTS_PROTOCOL

Following-Agents-Protocol: true
AI-Assisted: true
Assisted-by: AGENT:claude-sonnet-5 [Claude Code]

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions