This implements David's suggestion of providing low-level functions to control whether skb_pad() and skb_put_padto() should be freeing the passed skb.
We make use of it to fix a double free in net/dsa/tag_ksz.c that would occur if we kept using skb_put_padto() in both places. Florian Fainelli (2): net: core: Specify skb_pad()/skb_put_padto() SKB freeing net: dsa: skb_put_padto() already frees nskb include/linux/skbuff.h | 41 +++++++++++++++++++++++++++++++++++++---- net/core/skbuff.c | 13 ++++++++----- net/dsa/tag_ksz.c | 10 ++++++---- 3 files changed, 51 insertions(+), 13 deletions(-) -- 2.9.3