]> git.proxmox.com Git - mirror_ubuntu-focal-kernel.git/commitdiff
media: cec: copy sequence field for the reply
authorHans Verkuil <hverkuil-cisco@xs4all.nl>
Tue, 2 Nov 2021 12:24:26 +0000 (12:24 +0000)
committerStefan Bader <stefan.bader@canonical.com>
Thu, 3 Feb 2022 17:56:42 +0000 (18:56 +0100)
BugLink: https://bugs.launchpad.net/bugs/1956380
commit 13cbaa4c2b7bf9f8285e1164d005dbf08244ecd5 upstream.

When the reply for a non-blocking transmit arrives, the sequence
field for that reply was never filled in, so userspace would have no
way of associating the reply to the original transmit.

Copy the sequence field to ensure that this is now possible.

Signed-off-by: Hans Verkuil <hverkuil-cisco@xs4all.nl>
Fixes: 0dbacebede1e ([media] cec: move the CEC framework out of staging and to media)
Cc: <stable@vger.kernel.org>
Signed-off-by: Mauro Carvalho Chehab <mchehab+huawei@kernel.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Signed-off-by: Kamal Mostafa <kamal@canonical.com>
Signed-off-by: Stefan Bader <stefan.bader@canonical.com>
drivers/media/cec/cec-adap.c

index 06383b26712b66bc667b3d2e5ff9a4dd4598b258..56857ac0a0be2293e4b662a31c69752bf8869244 100644 (file)
@@ -1191,6 +1191,7 @@ void cec_received_msg_ts(struct cec_adapter *adap,
                        if (abort)
                                dst->rx_status |= CEC_RX_STATUS_FEATURE_ABORT;
                        msg->flags = dst->flags;
+                       msg->sequence = dst->sequence;
                        /* Remove it from the wait_queue */
                        list_del_init(&data->list);