Re: [PATCH net] sch_netem: fix skb leak in netem_enqueue()

2018-03-05 Thread Neil Horman
On Mon, Mar 05, 2018 at 03:57:52PM +0300, Alexey Kodanev wrote: > On 03/03/2018 03:20 PM, Neil Horman wrote: > > On Fri, Mar 02, 2018 at 09:16:48PM +0300, Alexey Kodanev wrote: > >> When we exceed current packets limit and have more than one > >> segment in the list returned by skb_gso_segment(),

Re: [PATCH net] sch_netem: fix skb leak in netem_enqueue()

2018-03-05 Thread Alexey Kodanev
On 03/05/2018 06:13 PM, Eric Dumazet wrote: > On Mon, 2018-03-05 at 15:57 +0300, Alexey Kodanev wrote: >> >> +static inline void __qdisc_drop_all(struct sk_buff *skb, >> +   struct sk_buff **to_free) >> +{ >> +   struct sk_buff *first = skb; >> + >> +   

Re: [PATCH net] sch_netem: fix skb leak in netem_enqueue()

2018-03-05 Thread Eric Dumazet
On Mon, 2018-03-05 at 15:57 +0300, Alexey Kodanev wrote: > > +static inline void __qdisc_drop_all(struct sk_buff *skb, > +   struct sk_buff **to_free) > +{ > +   struct sk_buff *first = skb; > + > +   while (skb->next) > +   skb = skb->next; > +

Re: [PATCH net] sch_netem: fix skb leak in netem_enqueue()

2018-03-05 Thread Alexey Kodanev
On 03/03/2018 03:20 PM, Neil Horman wrote: > On Fri, Mar 02, 2018 at 09:16:48PM +0300, Alexey Kodanev wrote: >> When we exceed current packets limit and have more than one >> segment in the list returned by skb_gso_segment(), netem drops >> only the first one, skipping the rest, hence kmemleak

Re: [PATCH net] sch_netem: fix skb leak in netem_enqueue()

2018-03-03 Thread Neil Horman
On Fri, Mar 02, 2018 at 09:16:48PM +0300, Alexey Kodanev wrote: > When we exceed current packets limit and have more than one > segment in the list returned by skb_gso_segment(), netem drops > only the first one, skipping the rest, hence kmemleak reports: > > unreferenced object

Re: [PATCH net] sch_netem: fix skb leak in netem_enqueue()

2018-03-02 Thread Eric Dumazet
On Fri, 2018-03-02 at 10:44 -0800, Stephen Hemminger wrote: > On Fri, 2 Mar 2018 21:16:48 +0300 > > Since this is a generic problem why is not fixed in qdisc_drop instead? AFAIK only netem and tbf might segment GSO packets so far. I am not sure we want to add code in qdisc_drop() that is used

Re: [PATCH net] sch_netem: fix skb leak in netem_enqueue()

2018-03-02 Thread Stephen Hemminger
On Fri, 2 Mar 2018 21:16:48 +0300 Alexey Kodanev wrote: > When we exceed current packets limit and have more than one > segment in the list returned by skb_gso_segment(), netem drops > only the first one, skipping the rest, hence kmemleak reports: > > unreferenced