Message ID | 20220209055327.2472561-1-treapking@chromium.org (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | drm/bridge: anx7625: Fix overflow issue on reading EDID | expand |
Hi! Dne sreda, 09. februar 2022 ob 06:53:27 CET je Pin-Yen Lin napisal(a): > The length of EDID block can be longer than 256 bytes, so we should use > `int` instead of `u8` for the `edid_pos` variable. > > Signed-off-by: Pin-Yen Lin <treapking@chromium.org> Please add "Fixes" tag. With that: Reviewed-by: Jernej Skrabec <jernej.skrabec@gmail.com> Best regards, Jernej
diff --git a/drivers/gpu/drm/bridge/analogix/anx7625.c b/drivers/gpu/drm/bridge/analogix/anx7625.c index 2346dbcc505f..e596cacce9e3 100644 --- a/drivers/gpu/drm/bridge/analogix/anx7625.c +++ b/drivers/gpu/drm/bridge/analogix/anx7625.c @@ -846,7 +846,8 @@ static int segments_edid_read(struct anx7625_data *ctx, static int sp_tx_edid_read(struct anx7625_data *ctx, u8 *pedid_blocks_buf) { - u8 offset, edid_pos; + u8 offset; + int edid_pos; int count, blocks_num; u8 pblock_buf[MAX_DPCD_BUFFER_SIZE]; u8 i, j;
The length of EDID block can be longer than 256 bytes, so we should use `int` instead of `u8` for the `edid_pos` variable. Signed-off-by: Pin-Yen Lin <treapking@chromium.org> --- drivers/gpu/drm/bridge/analogix/anx7625.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-)