twx-linux/net
Youssef Samir 00a0c2d49b net: qrtr: Update packets cloning when broadcasting
[ Upstream commit f011b313e8ebd5b7abd8521b5119aecef403de45 ]

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 <quic_yabdulra@quicinc.com>
Reviewed-by: Jeffery Hugo <quic_jhugo@quicinc.com>
Reviewed-by: Carl Vanderlip <quic_carlv@quicinc.com>
Reviewed-by: Chris Lew <quic_clew@quicinc.com>
Link: https://patch.msgid.link/20240916170858.2382247-1-quic_yabdulra@quicinc.com
Signed-off-by: Paolo Abeni <pabeni@redhat.com>
Signed-off-by: Sasha Levin <sashal@kernel.org>
2024-10-04 16:29:41 +02:00
..
6lowpan
9p net/9p: fix uninit-value in p9_client_rpc() 2024-06-16 13:47:41 +02:00
802
8021q net: gro: fix udp bad offset in socket lookup by adding {inner_}network_offset to napi_gro_cb 2024-05-17 12:02:07 +02:00
appletalk
atm
ax25 ax25: Replace kfree() in ax25_dev_free() with ax25_dev_put() 2024-06-21 14:38:14 +02:00
batman-adv batman-adv: Don't accept TT entries for out-of-spec VIDs 2024-07-05 09:34:04 +02:00
bluetooth Bluetooth: hci_sync: Ignore errors from HCI_OP_REMOTE_NAME_REQ_CANCEL 2024-10-04 16:28:57 +02:00
bpf bpf: Set run context for rawtp test_run callback 2024-06-21 14:38:16 +02:00
bpfilter
bridge net: bridge: br_fdb_external_learn_add(): always set EXT_LEARN 2024-09-12 11:11:35 +02:00
caif
can can: bcm: Clear bo->bcm_proc_read after remove_proc_entry(). 2024-10-04 16:28:58 +02:00
ceph libceph: fix race between delayed_work() and ceph_monc_stop() 2024-07-18 13:21:22 +02:00
core bpf: Zero former ARG_PTR_TO_{LONG,INT} args in case of error 2024-10-04 16:29:23 +02:00
dcb
dccp tcp/dccp: do not care about families in inet_twsk_purge() 2024-08-29 17:33:46 +02:00
devlink devlink: fix port new reply cmd type 2024-03-26 18:20:11 -04:00
dns_resolver
dsa net: mscc: ocelot: use ocelot_xmit_get_vlan_info() also for FDMA and register injection 2024-08-29 17:33:45 +02:00
ethernet ethernet: Add helper for assigning packet type when dest address does not match device address 2024-05-02 16:32:46 +02:00
ethtool ethtool: check device is present when getting link settings 2024-09-04 13:28:26 +02:00
handshake net/handshake: Fix handshake_req_destroy_test1 2024-02-23 09:24:50 +01:00
hsr hsr: Simplify code for announcing HSR nodes timer setup 2024-05-17 12:02:24 +02:00
ieee802154
ife
ipv4 fou: fix initialization of grc 2024-09-18 19:24:09 +02:00
ipv6 net: ipv6: select DST_CACHE from IPV6_RPL_LWTUNNEL 2024-10-04 16:29:41 +02:00
iucv s390/iucv: fix receive buffer virtual vs physical address confusion 2024-08-29 17:33:39 +02:00
kcm kcm: Serialise kcm_sendmsg() for the same socket. 2024-08-29 17:33:46 +02:00
key
l2tp l2tp: fix lockdep splat 2024-08-14 13:58:40 +02:00
l3mdev
lapb
llc llc: call sock_orphan() at release time 2024-02-05 20:14:36 +00:00
mac80211 wifi: mac80211: use two-phase skb reclamation in ieee80211_do_stop() 2024-10-04 16:28:57 +02:00
mac802154 net: mac802154: Fix racy device stats updates by DEV_STATS_INC() and DEV_STATS_ADD() 2024-07-25 09:50:52 +02:00
mctp net: mctp: test: Use correct skb for route input check 2024-08-29 17:33:46 +02:00
mpls net: mpls: error out if inner headers are not set 2024-04-13 13:07:41 +02:00
mptcp mptcp: pm: Fix uaf in __timer_delete_sync 2024-09-18 19:24:06 +02:00
ncsi net/ncsi: Fix the multi thread manner of NCSI driver 2024-06-21 14:38:14 +02:00
netfilter netfilter: nf_tables: remove annotation to access set timeout while holding lock 2024-10-04 16:28:54 +02:00
netlabel
netlink netlink: hold nlk->cb_mutex longer in __netlink_dump_start() 2024-08-29 17:33:35 +02:00
netrom netrom: Fix a memory leak in nr_heartbeat_expiry() 2024-06-27 13:49:06 +02:00
nfc nfc: llcp: fix nfc_llcp_setsockopt() unsafe copies 2024-08-19 06:04:28 +02:00
nsh nsh: Restore skb->{protocol,data,mac_header} for outer header in nsh_gso_segment(). 2024-05-17 12:02:02 +02:00
openvswitch net: ovs: fix ovs_drop_reasons error 2024-08-29 17:33:50 +02:00
packet af_packet: Handle outgoing VLAN packets without hardware offloading 2024-08-03 08:54:13 +02:00
phonet phonet: fix rtm_phonet_notify() skb allocation 2024-05-17 12:02:22 +02:00
psample
qrtr net: qrtr: Update packets cloning when broadcasting 2024-10-04 16:29:41 +02:00
rds net:rds: Fix possible deadlock in rds_message_put 2024-08-19 06:04:27 +02:00
rfkill
rose
rxrpc rxrpc: Don't pick values out of the wire header when setting up security 2024-08-29 17:33:36 +02:00
sched sched: sch_cake: fix bulk flow accounting logic for host fairness 2024-09-12 11:11:28 +02:00
sctp sctp: fix association labeling in the duplicate COOKIE-ECHO case 2024-09-04 13:28:27 +02:00
smc net/smc: add the max value of fallback reason count 2024-08-14 13:58:40 +02:00
strparser
sunrpc sunrpc: use the struct net as the svc proc private 2024-08-19 06:04:23 +02:00
switchdev net: bridge: switchdev: Skip MDB replays of deferred events on offload 2024-03-01 13:35:06 +01:00
tipc net: tipc: avoid possible garbage value 2024-10-04 16:28:59 +02:00
tls tls: fix missing memory barrier in tls_init 2024-06-12 11:12:50 +02:00
unix af_unix: Remove put_pid()/put_cred() in copy_peercred(). 2024-09-12 11:11:29 +02:00
vmw_vsock vsock: fix recursive ->recvmsg calls 2024-08-29 17:33:21 +02:00
wireless wifi: cfg80211: fix two more possible UBSAN-detected off-by-one errors 2024-10-04 16:28:57 +02:00
x25 net/x25: fix incorrect parameter validation in the x25_getsockopt() function 2024-03-26 18:19:41 -04:00
xdp xsk: validate user input for XDP_{UMEM|COMPLETION}_FILL_RING 2024-04-17 11:19:28 +02:00
xfrm xfrm: call xfrm_dev_policy_delete when kill policy 2024-08-03 08:53:42 +02:00
compat.c
devres.c
Kconfig
Kconfig.debug
Makefile
socket.c bpf, net: Fix a potential race in do_sock_getsockopt() 2024-09-12 11:11:34 +02:00
sysctl_net.c sysctl: treewide: drop unused argument ctl_table_root::set_ownership(table) 2024-08-11 12:47:13 +02:00