On 9/26/19 11:06 AM, Florian Westphal wrote:
> Eric Dumazet wrote:
>>> +static inline void skb_ext_reset(struct sk_buff *skb)
>>> +{
>>> + if (skb->active_extensions) {
>>
>> This deserves an unlikely(skb->active_extensions) hint here ?
>
> unlikely() isn't used in the other helpers (e.g. sk
Eric Dumazet wrote:
> > +static inline void skb_ext_reset(struct sk_buff *skb)
> > +{
> > + if (skb->active_extensions) {
>
> This deserves an unlikely(skb->active_extensions) hint here ?
unlikely() isn't used in the other helpers (e.g. skb_ext_{put,del,copy}
either, should I add it there too?
On 9/26/19 7:18 AM, Florian Westphal wrote:
> Now that we have a 3rd extension, add a new helper that drops the
> extension space and use it when we need to scrub an sk_buff.
>
> At this time, scrubbing clears secpath and bridge netfilter data, but
> retains the tc skb extension, after this pat
Now that we have a 3rd extension, add a new helper that drops the
extension space and use it when we need to scrub an sk_buff.
At this time, scrubbing clears secpath and bridge netfilter data, but
retains the tc skb extension, after this patch all three get cleared.
NAPI reuse/free assumes we can