| From 223e2288f4b8c262a864e2c03964ffac91744cd5 Mon Sep 17 00:00:00 2001 |
| From: HarshaVardhana S A <harshavardhana.sa@broadcom.com> |
| Date: Tue, 1 Jul 2025 14:22:54 +0200 |
| Subject: vsock/vmci: Clear the vmci transport packet properly when initializing it |
| |
| From: HarshaVardhana S A <harshavardhana.sa@broadcom.com> |
| |
| commit 223e2288f4b8c262a864e2c03964ffac91744cd5 upstream. |
| |
| In vmci_transport_packet_init memset the vmci_transport_packet before |
| populating the fields to avoid any uninitialised data being left in the |
| structure. |
| |
| Cc: Bryan Tan <bryan-bt.tan@broadcom.com> |
| Cc: Vishnu Dasa <vishnu.dasa@broadcom.com> |
| Cc: Broadcom internal kernel review list |
| Cc: Stefano Garzarella <sgarzare@redhat.com> |
| Cc: "David S. Miller" <davem@davemloft.net> |
| Cc: Eric Dumazet <edumazet@google.com> |
| Cc: Jakub Kicinski <kuba@kernel.org> |
| Cc: Paolo Abeni <pabeni@redhat.com> |
| Cc: Simon Horman <horms@kernel.org> |
| Cc: virtualization@lists.linux.dev |
| Cc: netdev@vger.kernel.org |
| Cc: stable <stable@kernel.org> |
| Signed-off-by: HarshaVardhana S A <harshavardhana.sa@broadcom.com> |
| Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org> |
| Fixes: d021c344051a ("VSOCK: Introduce VM Sockets") |
| Acked-by: Stefano Garzarella <sgarzare@redhat.com> |
| Link: https://patch.msgid.link/20250701122254.2397440-1-gregkh@linuxfoundation.org |
| Signed-off-by: Paolo Abeni <pabeni@redhat.com> |
| Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org> |
| --- |
| net/vmw_vsock/vmci_transport.c | 4 ++-- |
| 1 file changed, 2 insertions(+), 2 deletions(-) |
| |
| --- a/net/vmw_vsock/vmci_transport.c |
| +++ b/net/vmw_vsock/vmci_transport.c |
| @@ -119,6 +119,8 @@ vmci_transport_packet_init(struct vmci_t |
| u16 proto, |
| struct vmci_handle handle) |
| { |
| + memset(pkt, 0, sizeof(*pkt)); |
| + |
| /* We register the stream control handler as an any cid handle so we |
| * must always send from a source address of VMADDR_CID_ANY |
| */ |
| @@ -131,8 +133,6 @@ vmci_transport_packet_init(struct vmci_t |
| pkt->type = type; |
| pkt->src_port = src->svm_port; |
| pkt->dst_port = dst->svm_port; |
| - memset(&pkt->proto, 0, sizeof(pkt->proto)); |
| - memset(&pkt->_reserved2, 0, sizeof(pkt->_reserved2)); |
| |
| switch (pkt->type) { |
| case VMCI_TRANSPORT_PACKET_TYPE_INVALID: |