Re: [RFC PATCH 10/13] net: sched: lockless support for netif_schedule

2016-08-17 Thread Eric Dumazet
On Wed, 2016-08-17 at 16:17 -0700, John Fastabend wrote: > On 16-08-17 04:01 PM, Eric Dumazet wrote: > > On Wed, 2016-08-17 at 12:37 -0700, John Fastabend wrote: > > > >> diff --git a/net/sched/sch_generic.c b/net/sched/sch_generic.c > >> index d10b762..f5b7254 100644 > >> ---

Re: [RFC PATCH 10/13] net: sched: lockless support for netif_schedule

2016-08-17 Thread John Fastabend
On 16-08-17 04:01 PM, Eric Dumazet wrote: > On Wed, 2016-08-17 at 12:37 -0700, John Fastabend wrote: > >> diff --git a/net/sched/sch_generic.c b/net/sched/sch_generic.c >> index d10b762..f5b7254 100644 >> --- a/net/sched/sch_generic.c >> +++ b/net/sched/sch_generic.c >> @@ -171,6 +171,7 @@ static

Re: [RFC PATCH 10/13] net: sched: lockless support for netif_schedule

2016-08-17 Thread Eric Dumazet
On Wed, 2016-08-17 at 12:37 -0700, John Fastabend wrote: > diff --git a/net/sched/sch_generic.c b/net/sched/sch_generic.c > index d10b762..f5b7254 100644 > --- a/net/sched/sch_generic.c > +++ b/net/sched/sch_generic.c > @@ -171,6 +171,7 @@ static void try_bulk_dequeue_skb_slow(struct Qdisc *q, >

Re: [RFC PATCH 10/13] net: sched: lockless support for netif_schedule

2016-08-17 Thread John Fastabend
On 16-08-17 12:37 PM, John Fastabend wrote: > netif_schedule uses a bit QDISC_STATE_SCHED to tell the qdisc layer > if a run of the qdisc has been scheduler. This is important when > tearing down qdisc instances. We can rcu_free an instance for example > if its possible that we might have

[RFC PATCH 10/13] net: sched: lockless support for netif_schedule

2016-08-17 Thread John Fastabend
netif_schedule uses a bit QDISC_STATE_SCHED to tell the qdisc layer if a run of the qdisc has been scheduler. This is important when tearing down qdisc instances. We can rcu_free an instance for example if its possible that we might have outstanding references to it. Perhaps more importantly in