Commit 0600130e authored by Michael Tretter's avatar Michael Tretter Committed by Mauro Carvalho Chehab

media: allegro: warn if response message has an unexpected size

The driver uses structs to parse the responses from the VCU and expects
a certain size of the responses. However, the size and format of the
mails is not stable across firmware versions. Therefore, print a warning
if the size does not match the expected size to warn the user that
strange things might happen.
Signed-off-by: default avatarMichael Tretter <m.tretter@pengutronix.de>
Signed-off-by: default avatarHans Verkuil <hverkuil-cisco@xs4all.nl>
Signed-off-by: default avatarMauro Carvalho Chehab <mchehab+huawei@kernel.org>
parent 857a31f1
......@@ -1711,6 +1711,12 @@ allegro_handle_create_channel(struct allegro_dev *dev,
struct allegro_channel *channel;
int err = 0;
if (msg->header.length != sizeof(*msg) - sizeof(msg->header))
v4l2_warn(&dev->v4l2_dev,
"received message has %d bytes, but expected %zu\n",
msg->header.length,
sizeof(*msg) - sizeof(msg->header));
channel = allegro_find_channel_by_user_id(dev, msg->user_id);
if (IS_ERR(channel)) {
v4l2_warn(&dev->v4l2_dev,
......@@ -1804,6 +1810,12 @@ allegro_handle_encode_frame(struct allegro_dev *dev,
{
struct allegro_channel *channel;
if (msg->header.length != sizeof(*msg) - sizeof(msg->header))
v4l2_warn(&dev->v4l2_dev,
"received message has %d bytes, but expected %zu\n",
msg->header.length,
sizeof(*msg) - sizeof(msg->header));
channel = allegro_find_channel_by_channel_id(dev, msg->channel_id);
if (IS_ERR(channel)) {
v4l2_err(&dev->v4l2_dev,
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment