On Fri, Jul 15, 2022 at 6:30 AM Jakub Kicinski <kuba@xxxxxxxxxx> wrote: > > On Fri, 15 Jul 2022 11:22:33 +0800 Zhengchao Shao wrote: > > +#ifdef CONFIG_DEBUG_NET > > + if (unlikely(!skb->len)) { > > + pr_err("%s\n", __func__); > > + skb_dump(KERN_ERR, skb, false); > > + WARN_ON_ONCE(1); > > + } > > Is there a reason to open code WARN_ONCE() like that? > > #ifdef CONFIG_DEBUG_NET > if (WARN_ONCE(!skb->len, "%s\n", __func__)) > skb_dump(KERN_ERR, skb, false); > > or > > if (IS_ENABLED(CONFIG_DEBUG_NET) && > WARN_ONCE(!skb->len, "%s\n", __func__)) > skb_dump(KERN_ERR, skb, false); Also the skb_dump() needs to be done once. DO_ONCE_LITE(skb_dump, KERN_ERR, skb, false);