Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit f8bcdad2 authored by Aleksandr Burakov's avatar Aleksandr Burakov Committed by Greg Kroah-Hartman
Browse files

saa7134: Unchecked i2c_transfer function result fixed



[ Upstream commit 9d8683b3fd93f0e378f24dc3d9604e5d7d3e0a17 ]

Return value of function 'i2c_transfer' is not checked that
may cause undefined behaviour.

Found by Linux Verification Center (linuxtesting.org) with SVACE.

Fixes: 2cf36ac4 ("[PATCH] v4l: 656: added support for the following cards")
Signed-off-by: default avatarAleksandr Burakov <a.burakov@rosalinux.ru>
Signed-off-by: default avatarHans Verkuil <hverkuil-cisco@xs4all.nl>
Signed-off-by: default avatarSasha Levin <sashal@kernel.org>
parent 031eda17
Loading
Loading
Loading
Loading
+6 −2
Original line number Diff line number Diff line
@@ -466,7 +466,9 @@ static int philips_europa_tuner_sleep(struct dvb_frontend *fe)
	/* switch the board to analog mode */
	if (fe->ops.i2c_gate_ctrl)
		fe->ops.i2c_gate_ctrl(fe, 1);
	i2c_transfer(&dev->i2c_adap, &analog_msg, 1);
	if (i2c_transfer(&dev->i2c_adap, &analog_msg, 1) != 1)
		return -EIO;

	return 0;
}

@@ -1018,7 +1020,9 @@ static int md8800_set_voltage2(struct dvb_frontend *fe,
	else
		wbuf[1] = rbuf & 0xef;
	msg[0].len = 2;
	i2c_transfer(&dev->i2c_adap, msg, 1);
	if (i2c_transfer(&dev->i2c_adap, msg, 1) != 1)
		return -EIO;

	return 0;
}