pos is 64 bits. Fixes: 5e98eafa90ca19 ("drm/amdgpu: RAS EEPROM table is now in debugfs") Cc: luben.tuikov@xxxxxxx Reported-by: kernel test robot <lkp@xxxxxxxxx> Signed-off-by: Alex Deucher <alexander.deucher@xxxxxxx> --- drivers/gpu/drm/amd/amdgpu/amdgpu_ras_eeprom.c | 14 +++++++++----- 1 file changed, 9 insertions(+), 5 deletions(-) diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_ras_eeprom.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_ras_eeprom.c index 677e379f5fb5..fc70620369e4 100644 --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_ras_eeprom.c +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_ras_eeprom.c @@ -880,13 +880,17 @@ static ssize_t amdgpu_ras_debugfs_table_read(struct file *f, char __user *buf, if (*pos < data_len && size > 0) { u8 dare[RAS_TABLE_RECORD_SIZE]; u8 data[rec_hdr_fmt_size + 1]; + struct eeprom_table_record record; + int s, r; + /* Find the starting record index */ - int s = (*pos - strlen(tbl_hdr_str) - tbl_hdr_fmt_size - - strlen(rec_hdr_str)) / rec_hdr_fmt_size; - int r = (*pos - strlen(tbl_hdr_str) - tbl_hdr_fmt_size - - strlen(rec_hdr_str)) % rec_hdr_fmt_size; - struct eeprom_table_record record; + s = *pos - strlen(tbl_hdr_str) - tbl_hdr_fmt_size - + strlen(rec_hdr_str); + s = s / rec_hdr_fmt_size; + r = *pos - strlen(tbl_hdr_str) - tbl_hdr_fmt_size - + strlen(rec_hdr_str); + r = r % rec_hdr_fmt_size; for ( ; size > 0 && s < control->ras_num_recs; s++) { u32 ai = RAS_RI_TO_AI(control, s); -- 2.31.1 _______________________________________________ amd-gfx mailing list amd-gfx@xxxxxxxxxxxxxxxxxxxxx https://lists.freedesktop.org/mailman/listinfo/amd-gfx