]> Git Repo - linux.git/commit
net: qrtr: Update packets cloning when broadcasting
authorYoussef Samir <[email protected]>
Mon, 16 Sep 2024 17:08:58 +0000 (19:08 +0200)
committerPaolo Abeni <[email protected]>
Tue, 24 Sep 2024 08:48:16 +0000 (10:48 +0200)
commitf011b313e8ebd5b7abd8521b5119aecef403de45
tree85937ef892a4792db825bc59587ae57e259370ed
parentc8770db2d54437a5f49417ae7b46f7de23d14db6
net: qrtr: Update packets cloning when broadcasting

When broadcasting data to multiple nodes via MHI, using skb_clone()
causes all nodes to receive the same header data. This can result in
packets being discarded by endpoints, leading to lost data.

This issue occurs when a socket is closed, and a QRTR_TYPE_DEL_CLIENT
packet is broadcasted. All nodes receive the same destination node ID,
causing the node connected to the client to discard the packet and
remain unaware of the client's deletion.

Replace skb_clone() with pskb_copy(), to create a separate copy of
the header for each sk_buff.

Fixes: bdabad3e363d ("net: Add Qualcomm IPC router")
Signed-off-by: Youssef Samir <[email protected]>
Reviewed-by: Jeffery Hugo <[email protected]>
Reviewed-by: Carl Vanderlip <[email protected]>
Reviewed-by: Chris Lew <[email protected]>
Link: https://patch.msgid.link/[email protected]
Signed-off-by: Paolo Abeni <[email protected]>
net/qrtr/af_qrtr.c
This page took 0.054379 seconds and 4 git commands to generate.