On Thu, Sep 18, 2025 at 9:09 AM Lijo Lazar <lijo.la...@amd.com> wrote: > > It's not necessary that the build string and atom header section has a > difference of 32 bytes. Use the remaining bytes in the section as copy > limit. > > Signed-off-by: Lijo Lazar <lijo.la...@amd.com>
Acked-by: Alex Deucher <alexander.deuc...@amd.com> > --- > drivers/gpu/drm/amd/amdgpu/atom.c | 7 ++++--- > 1 file changed, 4 insertions(+), 3 deletions(-) > > diff --git a/drivers/gpu/drm/amd/amdgpu/atom.c > b/drivers/gpu/drm/amd/amdgpu/atom.c > index 1c994d0cc50b..7cc7aec1bff3 100644 > --- a/drivers/gpu/drm/amd/amdgpu/atom.c > +++ b/drivers/gpu/drm/amd/amdgpu/atom.c > @@ -1498,7 +1498,7 @@ static void atom_get_vbios_build(struct atom_context > *ctx) > { > unsigned char *atom_rom_hdr; > unsigned char *str; > - uint16_t base; > + uint16_t base, len; > > base = CU16(ATOM_ROM_TABLE_PTR); > atom_rom_hdr = CSTR(base); > @@ -1511,8 +1511,9 @@ static void atom_get_vbios_build(struct atom_context > *ctx) > while (str < atom_rom_hdr && *str++) > ; > > - if ((str + STRLEN_NORMAL) < atom_rom_hdr) > - strscpy(ctx->build_num, str, STRLEN_NORMAL); > + len = min(atom_rom_hdr - str, STRLEN_NORMAL); > + if (len) > + strscpy(ctx->build_num, str, len); > } > > struct atom_context *amdgpu_atom_parse(struct card_info *card, void *bios) > -- > 2.49.0 >