Re: [PATCH net-next v8 0/6] move CAN skb headroom content to skb extensions
From: Paolo Abeni <pabeni@redhat.com>
Date: 2026-02-03 14:40:13
Also in:
linux-can, lkml
From: Paolo Abeni <pabeni@redhat.com>
Date: 2026-02-03 14:40:13
Also in:
linux-can, lkml
On 2/1/26 3:33 PM, Oliver Hartkopp via B4 Relay wrote:
CAN bus related skbuffs (ETH_P_CAN/ETH_P_CANFD/ETH_P_CANXL) simply contain CAN frame structs for CAN CC/FD/XL of skb->len length at skb->data. Those CAN skbs do not have network/mac/transport headers nor other such references for encapsulated protocols like ethernet/IP protocols. To store data for CAN specific use-cases all CAN bus related skbuffs are created with a 16 byte private skb headroom (struct can_skb_priv). Using the skb headroom and accessing skb->head for this private data led to several problems in the past likely due to "The struct can_skb_priv business is highly unconventional for the networking stack." [1] This patch set aims to remove the unconventional skb headroom usage for CAN bus related skbuffs and use the common skb extensions instead. [1] https://lore.kernel.org/linux-can/20260104074222.29e660ac@kernel.org/ (local)
Could you please share how skb_ext size change with this series? (possibly breaking down the actual size to each separate extension). Ideally/hopefully the skbuff_ext_cache size is not going to change, and that would ensure that this change will not cause any indirect regressions. /P