From: Jarek Poplawski <jarkao2@gmail.com>
To: Thomas Gleixner <tglx@linutronix.de>
Cc: Andres Freund <andres@anarazel.de>,
Joao Correia <joaomiguelcorreia@gmail.com>,
Arun R Bharadwaj <arun@linux.vnet.ibm.com>,
Stephen Hemminger <shemminger@vyatta.com>,
netdev@vger.kernel.org, LKML <linux-kernel@vger.kernel.org>,
Patrick McHardy <kaber@trash.net>,
Peter Zijlstra <peterz@infradead.org>
Subject: Re: Soft-Lockup/Race in networking in 2.6.31-rc1+195 ( possibly?caused by netem)
Date: Thu, 9 Jul 2009 12:44:12 +0200 [thread overview]
Message-ID: <20090709104412.GA3651@ami.dom.local> (raw)
In-Reply-To: <alpine.LFD.2.00.0907090956490.24704@localhost.localdomain>
On Thu, Jul 09, 2009 at 12:31:53PM +0200, Thomas Gleixner wrote:
> On Thu, 9 Jul 2009, Jarek Poplawski wrote:
> > On Thu, Jul 09, 2009 at 12:23:17AM +0200, Andres Freund wrote:
> > ...
> > > Unfortunately this just yields the same backtraces during softlockup and not
> > > earlier.
> > > I did not test without lockdep yet, but that should not have stopped the BUG
> > > from appearing, right?
> >
> > Since it looks like hrtimers now, these changes in timers shouldn't
> > matter. Let's wait for new ideas.
>
> Some background:
...
> There is another oddity in cbq_undelay() which is the hrtimer callback
> function:
>
> if (delay) {
> ktime_t time;
>
> time = ktime_set(0, 0);
> time = ktime_add_ns(time, PSCHED_TICKS2NS(now + delay));
> hrtimer_start(&q->delay_timer, time, HRTIMER_MODE_ABS);
>
> The canocial way to restart a hrtimer from the callback function is to
> set the expiry value and return HRTIMER_RESTART.
OK, that's for later because we didn't use cbq here.
>
> }
>
> sch->flags &= ~TCQ_F_THROTTLED;
> __netif_schedule(qdisc_root(sch));
> return HRTIMER_NORESTART;
>
> Again, this should not cause the timer to be enqueued on another CPU
> as we do not enqueue on a different CPU when the callback is running,
> but see above ...
>
> I have the feeling that the code relies on some implicit cpu
> boundness, which is not longer guaranteed with the timer migration
> changes, but that's a question for the network experts.
As a matter of fact, I've just looked at this __netif_schedule(),
which really is cpu bound, so you might be 100% right.
Thanks for your help,
Jarek P.
next prev parent reply other threads:[~2009-07-09 10:44 UTC|newest]
Thread overview: 77+ messages / expand[flat|nested] mbox.gz Atom feed top
2009-07-03 1:31 Soft-Lockup/Race in networking in 2.6.31-rc1+195 ( possibly caused by netem) Andres Freund
2009-07-03 6:12 ` Soft-Lockup/Race in networking in 2.6.31-rc1+195 ( possibly?caused " Jarek Poplawski
2009-07-03 11:26 ` Andres Freund
2009-07-03 12:03 ` Jarek Poplawski
2009-07-03 12:30 ` Andres Freund
2009-07-03 20:22 ` David Miller
2009-07-03 22:56 ` Jarek Poplawski
2009-07-04 1:55 ` David Miller
2009-07-04 6:36 ` Jarek Poplawski
2009-07-04 15:18 ` Jarek Poplawski
2009-07-06 4:53 ` Joao Correia
2009-07-06 4:53 ` Joao Correia
2009-07-06 8:14 ` Jarek Poplawski
2009-07-06 11:28 ` Joao Correia
2009-07-06 11:28 ` Joao Correia
2009-07-06 14:19 ` Jarek Poplawski
2009-07-06 16:13 ` Andres Freund
2009-07-06 16:31 ` Jarek Poplawski
2009-07-06 17:23 ` Joao Correia
2009-07-06 17:23 ` Joao Correia
2009-07-06 17:26 ` Andres Freund
2009-07-07 6:50 ` Jarek Poplawski
2009-07-07 10:40 ` Joao Correia
2009-07-07 10:40 ` Joao Correia
2009-07-07 10:47 ` Andres Freund
[not found] ` <a5d9929e0907070403n698c9eb9p53a5bb07bafcc169@mail.gmail.com>
2009-07-07 11:05 ` Fwd: " Joao Correia
2009-07-07 11:05 ` Joao Correia
2009-07-07 13:18 ` Jarek Poplawski
2009-07-07 13:22 ` Andres Freund
2009-07-07 13:29 ` Jarek Poplawski
2009-07-07 13:34 ` Andres Freund
2009-07-07 13:57 ` Jarek Poplawski
2009-07-07 16:11 ` Andres Freund
2009-07-08 8:08 ` Jarek Poplawski
2009-07-08 8:29 ` Andres Freund
2009-07-08 9:13 ` Jarek Poplawski
2009-07-08 21:44 ` Joao Correia
2009-07-08 21:44 ` Joao Correia
2009-07-08 22:07 ` Jarek Poplawski
2009-07-08 22:27 ` Joao Correia
2009-07-08 22:27 ` Joao Correia
2009-07-08 22:42 ` Jarek Poplawski
2009-07-08 22:48 ` Joao Correia
2009-07-08 22:48 ` Joao Correia
2009-07-08 22:23 ` Andres Freund
2009-07-08 22:48 ` Jarek Poplawski
2009-07-09 10:31 ` Thomas Gleixner
2009-07-09 10:44 ` Jarek Poplawski [this message]
2009-07-09 12:03 ` Thomas Gleixner
2009-07-09 13:22 ` Jarek Poplawski
2009-07-09 14:15 ` Thomas Gleixner
2009-07-09 14:24 ` Jarek Poplawski
2009-07-09 14:25 ` Joao Correia
2009-07-09 14:25 ` Joao Correia
2009-07-09 14:28 ` Thomas Gleixner
2009-07-09 15:28 ` Andres Freund
2009-07-09 16:01 ` Thomas Gleixner
2009-07-09 16:46 ` Andres Freund
2009-07-09 17:44 ` Thomas Gleixner
2009-07-09 21:19 ` Joao Correia
2009-07-09 21:19 ` Joao Correia
2009-07-07 13:20 ` Jarek Poplawski
2009-07-06 17:24 ` Andres Freund
-- strict thread matches above, loose matches on Subject: below --
2009-06-30 23:20 Soft-Lockup/Race in networking in 2.6.31-rc1+195 (possibly caused " Andres Freund
2009-07-01 18:39 ` Jarek Poplawski
2009-07-01 21:22 ` Andres Freund
2009-07-02 0:37 ` Andres Freund
2009-07-02 9:30 ` Jarek Poplawski
2009-07-02 10:12 ` Jarek Poplawski
2009-07-02 10:51 ` Joao Correia
2009-07-02 10:51 ` Joao Correia
2009-07-02 11:09 ` Jarek Poplawski
2009-07-02 11:11 ` Andres Freund
2009-07-02 11:43 ` Jarek Poplawski
2009-07-02 11:43 ` Andres Freund
2009-07-02 11:54 ` Jarek Poplawski
2009-07-02 11:59 ` Andres Freund
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20090709104412.GA3651@ami.dom.local \
--to=jarkao2@gmail.com \
--cc=andres@anarazel.de \
--cc=arun@linux.vnet.ibm.com \
--cc=joaomiguelcorreia@gmail.com \
--cc=kaber@trash.net \
--cc=linux-kernel@vger.kernel.org \
--cc=netdev@vger.kernel.org \
--cc=peterz@infradead.org \
--cc=shemminger@vyatta.com \
--cc=tglx@linutronix.de \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.