Re: [PATCH net-next v2 02/12] net: skb: add pskb_network_may_pull_reason() helper

From: Menglong Dong
Date: Sun Sep 01 2024 - 08:34:55 EST


On Fri, Aug 30, 2024 at 10:45 PM Alexander Lobakin
<aleksander.lobakin@xxxxxxxxx> wrote:
>
> From: Menglong Dong <menglong8.dong@xxxxxxxxx>
> Date: Fri, 30 Aug 2024 09:59:51 +0800
>
> > Introduce the function pskb_network_may_pull_reason() and make
> > pskb_network_may_pull() a simple inline call to it. The drop reasons of
> > it just come from pskb_may_pull_reason.
>
> No object code changes I guess? Have you checked it via
> scripts/bloat-o-meter?
>

Not yet. I'll have a try on it.

> >
> > Signed-off-by: Menglong Dong <dongml2@xxxxxxxxxxxxxxx>
> > ---
> > include/linux/skbuff.h | 8 +++++++-
> > 1 file changed, 7 insertions(+), 1 deletion(-)
> >
> > diff --git a/include/linux/skbuff.h b/include/linux/skbuff.h
> > index cf8f6ce06742..fe6f97b550fc 100644
> > --- a/include/linux/skbuff.h
> > +++ b/include/linux/skbuff.h
> > @@ -3114,9 +3114,15 @@ static inline int skb_inner_network_offset(const struct sk_buff *skb)
> > return skb_inner_network_header(skb) - skb->data;
> > }
> >
> > +static inline enum skb_drop_reason
> > +pskb_network_may_pull_reason(struct sk_buff *skb, unsigned int len)
> > +{
> > + return pskb_may_pull_reason(skb, skb_network_offset(skb) + len);
> > +}
> > +
> > static inline int pskb_network_may_pull(struct sk_buff *skb, unsigned int len)
> > {
> > - return pskb_may_pull(skb, skb_network_offset(skb) + len);
> > + return pskb_network_may_pull_reason(skb, len) == SKB_NOT_DROPPED_YET;
> > }
> >
> > /*
>
> Thanks,
> Olek