Re: [PATCH net-next 02/10] net: skb: add SKB_DR_RESET
From: Menglong Dong
Date: Wed Aug 21 2024 - 08:56:54 EST
On Tue, Aug 20, 2024 at 8:24 PM Ido Schimmel <idosch@xxxxxxxxxx> wrote:
>
> On Thu, Aug 15, 2024 at 08:42:54PM +0800, Menglong Dong wrote:
> > For now, the skb drop reason can be SKB_NOT_DROPPED_YET, which makes the
> > kfree_skb_reason call consume_skb.
>
> Maybe I'm missing something, but kfree_skb_reason() only calls
> trace_consume_skb() if reason is SKB_CONSUMED. With SKB_NOT_DROPPED_YET
> you will get a warning.
>
Yeah, I use this macro to avoid such WARNING. And I'm not sure
if we need this patch now :/
> > In some case, we need to make sure that
> > kfree_skb is called, which means the reason can't be SKB_NOT_DROPPED_YET.
> > Introduce SKB_DR_RESET() to reset the reason to NOT_SPECIFIED if it is
> > SKB_NOT_DROPPED_YET.
> >
> > Signed-off-by: Menglong Dong <dongml2@xxxxxxxxxxxxxxx>
> > ---
> > include/net/dropreason-core.h | 1 +
> > 1 file changed, 1 insertion(+)
> >
> > diff --git a/include/net/dropreason-core.h b/include/net/dropreason-core.h
> > index 9707ab54fdd5..8da0129d1ed6 100644
> > --- a/include/net/dropreason-core.h
> > +++ b/include/net/dropreason-core.h
> > @@ -445,5 +445,6 @@ enum skb_drop_reason {
> > name == SKB_NOT_DROPPED_YET) \
> > SKB_DR_SET(name, reason); \
> > } while (0)
> > +#define SKB_DR_RESET(name) SKB_DR_OR(name, NOT_SPECIFIED)
> >
> > #endif
> > --
> > 2.39.2
> >