tree 04d901586f52d7a333dcabdd706cad1c2e2edde2
parent 42f300cbf843982f52e3ee73d35c5d17f4a84d71
author Alex Vasile <48962821+Alex-Vasile@users.noreply.github.com> 1782738106 -0400
committer GitHub <noreply@github.com> 1782738106 +0200
gpgsig -----BEGIN PGP SIGNATURE-----
 
 wsFcBAABCAAQBQJqQmy6CRC1aQ7uu5UhlAAA3scQACNNgA+9RJ0aXnq+/5ZeFHkG
 R3w1f+8tc/6MYI7En0p6GPkhfDipzFeM6Q05aqPI78FB1TDzGhdqrTs8QkVEggKE
 hWyX7V7lOSkLBxZRdxVyn4BIsZYahigq2OC+HtU0BmBDEfjO+09zCHgx8LBnm3yi
 GbFrBL5D9CWh2xsLk+8pvvnWgr9vtZiTcy2hkLYc30jKTiNk+VI/f6NYTbGwMh4+
 3RpL3KbUcD3JPG+O6kN2iU6hBjB+qiaUrcKaGp6FSaSgU4xcqNqIXaHO9HQCN8h1
 rHMTAvwhVgjBcJjrD6fqI3MG6xJjcZV0Azj5sNQsq/Ep0Vo1SSNJqZiUobF0c/eE
 uJ3LDNirNjNCG9SMaZaYE/xFKk2Yfl0VdA2TEmOPaBB3EXYWIG6WOcfbJvEsxE89
 /sR/dC+vctXSgMuqJvhIqZDQ03Zygil3O1IXJqkfDN57BjplbnGcB1pLLaR8BaN2
 0Ia9fITiDlzMn0lOIE5zH29LJvDjUhH3YUsnr6TlVSZlAzzj29QMLbEwmy1G1o+t
 M1+kOmW3M+hRFhtuYlLDmGCIdBRWtamlQv9rZ93nyaDkvNjBjzDnh/hvWl2Ocn78
 58d450TMncK0F/acnE/dqZDhScmkLgSN9cV39uSREqvThUQwYjAuINzFoq0iAFy5
 KzD/UEx8RCLkMJC4ywuy
 =pnEs
 -----END PGP SIGNATURE-----
 

[Metal] Fix indirect dispatch offset for sub-allocated parameter buffers (#24644)

iree_hal_metal_command_buffer_prepare_dispatch resolved the
indirect-dispatch workgroup-count buffer offset as just
config.workgroup_count_ref.offset, dropping
iree_hal_buffer_byte_offset(buffer) -- the base offset of the parameter
buffer within its backing allocation. This is inconsistent with the
sibling descriptor path in the same function (which adds byte_offset)
and with every other backend: Vulkan and amdgpu route all offsets
through a shared resolver that adds byte_offset, and the local HAL
resolves through iree_hal_buffer_map_range. When the indirect-parameter
buffer is a sub-allocation with a non-zero base offset, the dispatch
read the three workgroup-count uint32s from the wrong address and ran a
wrong grid.

The bug was latent because the Metal allocator returns standalone root
buffers (byte_offset==0) and the cross-backend CTS indirect-parameters
tests allocate the parameter buffer directly at offset 0.

Add byte_offset so the source offset matches the descriptor path and the
other backends:
workgroups_offset =
iree_hal_buffer_byte_offset(config.workgroup_count_ref.buffer) +
config.workgroup_count_ref.offset;

Adds CTS regression test
DispatchIndirectParametersTest.SubAllocatedParameterBuffer, which
references the workgroup counts through an iree_hal_buffer_subspan at a
non-zero base offset (placing deliberately-wrong counts at offset 0 so a
base-offset drop reads a deterministic grid instead of garbage). This is
the only test shape that catches the bug, and it exercises it on every
backend that supports sub-allocated buffers (Metal, Vulkan, amdgpu).

Signed-off-by: Alex Vasile
<48962821+Alex-Vasile@users.noreply.github.com>

Signed-off-by: Alex Vasile <48962821+Alex-Vasile@users.noreply.github.com>