On Wed, Sep 02, 2020 at 04:52:02PM +0200, Pablo Neira Ayuso wrote: [...] > +static void nft_commit_notify(struct net *net, u32 portid) > +{ > + struct sk_buff *batch_skb = NULL, *nskb, *skb; > + unsigned char *data; > + int len; > + > + list_for_each_entry_safe(skb, nskb, &net->nft.notify_list, list) { > + if (!batch_skb) { > +new_batch: > + batch_skb = skb; > + NFT_CB(batch_skb).report = NFT_CB(skb).report; Is this assignment needed? NFT_CB() merely dereferences skb->cb, so after assigning 'batch_skb = skb', NFT_CB(batch_skb) == NFT_CB(skb), no? (Sorry for the late complaint, I forgot about it until reviewing your v2.) Cheers, Phil