diff options
author | 2025-03-06 10:32:45 +0800 | |
---|---|---|
committer | 2025-03-11 13:12:19 +0100 | |
commit | f5d83cf0eeb90fade4d5c4d17d24b8bee9ceeecc (patch) | |
tree | 3179df8aa9ef9dd3f494fed51c55d46ac13f4ba4 /scripts/lib/kdoc/kdoc_parser.py | |
parent | net: switchdev: Convert blocking notification chain to a raw one (diff) | |
download | linux-rng-f5d83cf0eeb90fade4d5c4d17d24b8bee9ceeecc.tar.xz linux-rng-f5d83cf0eeb90fade4d5c4d17d24b8bee9ceeecc.zip |
net: mctp: unshare packets when reassembling
Ensure that the frag_list used for reassembly isn't shared with other
packets. This avoids incorrect reassembly when packets are cloned, and
prevents a memory leak due to circular references between fragments and
their skb_shared_info.
The upcoming MCTP-over-USB driver uses skb_clone which can trigger the
problem - other MCTP drivers don't share SKBs.
A kunit test is added to reproduce the issue.
Signed-off-by: Matt Johnston <matt@codeconstruct.com.au>
Fixes: 4a992bbd3650 ("mctp: Implement message fragmentation & reassembly")
Reviewed-by: Simon Horman <horms@kernel.org>
Link: https://patch.msgid.link/20250306-matt-mctp-usb-v1-1-085502b3dd28@codeconstruct.com.au
Signed-off-by: Paolo Abeni <pabeni@redhat.com>
Diffstat (limited to 'scripts/lib/kdoc/kdoc_parser.py')
0 files changed, 0 insertions, 0 deletions