[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <1471476834.29842.56.camel@edumazet-glaptop3.roam.corp.google.com>
Date: Wed, 17 Aug 2016 16:33:54 -0700
From: Eric Dumazet <eric.dumazet@...il.com>
To: John Fastabend <john.fastabend@...il.com>
Cc: xiyou.wangcong@...il.com, jhs@...atatu.com,
alexei.starovoitov@...il.com, brouer@...hat.com,
john.r.fastabend@...el.com, netdev@...r.kernel.org,
davem@...emloft.net
Subject: Re: [RFC PATCH 10/13] net: sched: lockless support for
netif_schedule
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
> >> --- 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,
> >> if (qdisc_is_percpu_stats(q)) {
> >> qdisc_qstats_cpu_backlog_inc(q, nskb);
> >> qdisc_qstats_cpu_qlen_inc(q);
> >> + set_thread_flag(TIF_NEED_RESCHED);
> >> } else {
> >> qdisc_qstats_backlog_inc(q, nskb);
> >> q->q.qlen++;
> >
> > Hmm... care to elaborate this bit ?
> >
> >
> >
>
> ah dang thats leftover from trying to resolve a skb getting stuck on the
> bad_txq_cell from qdisc_enqueue_skb_bad_txq(). You'll notice I added
> a __netif_schedule(skb) call in qdisc_enqueue_skb_bad_txq() which
> resolves this and the set_thread_flag() here can then just be removed.
OK I feel much better now ;)
Thanks !
Powered by blists - more mailing lists