Re: [PATCH 6.18.y] accel/amdxdna: Bound the sync_bo flush range to the BO size
From: Eva Crystal
Date: Fri Oct 09 2026 - 15:31:46 EST
On 10/10/26, Lizhi Hou wrote:
> It needs to check if size is zero.
Thanks for the ack.
The zero-length guard from dc1475366424 is already on 6.18.y as
45962da5821d, shipped in 6.18.52, moved into
amdxdna_drm_sync_bo_ioctl() because amdxdna_flush_bo() does not exist
on this branch.
My check at drivers/accel/amdxdna/amdxdna_gem.c:947 runs before it,
and the clamped size cannot reach the drm_clflush_virt_range() at
drivers/accel/amdxdna/amdxdna_gem.c:966 as 0: with args->offset below
abo->mem.size, min(abo->mem.size, end) exceeds args->offset whenever
args->size is above 0, and an args->size of 0 already returns 0 at the
guard.
That is by code reading. The arms I measured on this branch all used
size 0x40, so I have no zero-size run.
A zero-length sync at an offset past the end returns -EINVAL from my
check, where upstream reports no error for AMDXDNA_BO_DEV, as my
commit message notes.
So no second patch is needed. v1 applies as is with your Acked-by, or
I will resend as v2 carrying the tag if stable prefers.
Eva Crystal (0xiviel)
XSource Security
https://xsourcesec.com