diff --git a/net/rmnet_data/rmnet_data_stats.c b/net/rmnet_data/rmnet_data_stats.c index 20f1628242c7..8fd3743799f8 100644 --- a/net/rmnet_data/rmnet_data_stats.c +++ b/net/rmnet_data/rmnet_data_stats.c @@ -77,6 +77,11 @@ void rmnet_kfree_skb(struct sk_buff *skb, unsigned int reason) if (likely(skb)) { struct rmnet_phys_ep_conf_s *config; + if (skb->destructor) { + skb->destructor(skb); + return; + } + config = (struct rmnet_phys_ep_conf_s *)rcu_dereference (skb->dev->rx_handler_data); if (likely(config))