Skip to content

Commit dac06d7

Browse files
committed
Merge: i2c: tegra: check msg length in SMBUS block read
MR: https://gitlab.com/redhat/centos-stream/src/kernel/centos-stream-9/-/merge_requests/6998 JIRA: https://issues.redhat.com/browse/RHEL-89167 NVIDIA: Seeing WARNING with i2c_tegra (RHEL 9.7) Signed-off-by: Steve Dunnagan <sdunnaga@redhat.com> Approved-by: Tony Camuso <tcamuso@redhat.com> Approved-by: David Arcari <darcari@redhat.com> Approved-by: CKI KWF Bot <cki-ci-bot+kwf-gitlab-com@redhat.com> Merged-by: Augusto Caringi <acaringi@redhat.com>
2 parents 9d635ba + cb316b6 commit dac06d7

File tree

1 file changed

+5
-0
lines changed

1 file changed

+5
-0
lines changed

drivers/i2c/busses/i2c-tegra.c

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1397,6 +1397,11 @@ static int tegra_i2c_xfer(struct i2c_adapter *adap, struct i2c_msg msgs[],
13971397
ret = tegra_i2c_xfer_msg(i2c_dev, &msgs[i], MSG_END_CONTINUE);
13981398
if (ret)
13991399
break;
1400+
1401+
/* Validate message length before proceeding */
1402+
if (msgs[i].buf[0] == 0 || msgs[i].buf[0] > I2C_SMBUS_BLOCK_MAX)
1403+
break;
1404+
14001405
/* Set the msg length from first byte */
14011406
msgs[i].len += msgs[i].buf[0];
14021407
dev_dbg(i2c_dev->dev, "reading %d bytes\n", msgs[i].len);

0 commit comments

Comments
 (0)