From: Frederic Weisbecker <frederic@kernel.org>
To: Alison Chaiken <achaiken@aurora.tech>
Cc: LKML <linux-kernel@vger.kernel.org>,
linux-rt-users <linux-rt-users@vger.kernel.org>,
Mel Gorman <mgorman@suse.de>,
Sebastian Andrzej Siewior <bigeasy@linutronix.de>,
Thomas Gleixner <tglx@linutronix.de>,
Glenn Elliott <glenn@aurora.tech>
Subject: Re: [RT][PATCH 2/2] tick: Fix timer storm since introduction of timersd
Date: Fri, 15 Apr 2022 12:28:52 +0200 [thread overview]
Message-ID: <20220415102852.GA1654237@lothringen> (raw)
In-Reply-To: <CAFzL-7s0oWtSS_oYTOJ1A-1Dbso6S+4qoR-n91joexgQYCaJEg@mail.gmail.com>
On Tue, Apr 05, 2022 at 09:21:16AM -0700, Alison Chaiken wrote:
> On Mon, Apr 4, 2022 at 9:33 PM Frederic Weisbecker <frederic@kernel.org> wrote:
> >
> > If timers are pending while the tick is reprogrammed on nohz_mode, the
> > next expiry is not armed to fire now, it is delayed one jiffy forward
> > instead so as not to raise an inextinguishable timer storm with such
> > scenario:
> >
> > 1) IRQ triggers and queue a timer
> > 2) ksoftirqd() is woken up
> > 3) IRQ tail: timer is reprogrammed to fire now
> > 4) IRQ exit
> > 5) TIMER interrupt
> > 6) goto 3)
> >
> > ...all that until we finally reach ksoftirqd.
> >
> > Unfortunately we are checking the wrong softirq vector bitmask since
> > timersd kthread has split from ksoftirqd. Timers now have their own
> > vector state field that must be checked separately.
>
> With kernel 5.15 and the timersd patch applied, we've observed that
> x86_64 cores tend to enter deeper C-states even when there are pending
> hrtimers. Presumably failure to check the right bits could also
> explain that observation and, accordingly, the patch might fix it?
Well, this issue rather adds unnecessary ticks. Thus I wouldn't expect
deeper C-states as a consequence but who knows...
Thanks.
next prev parent reply other threads:[~2022-04-15 10:29 UTC|newest]
Thread overview: 5+ messages / expand[flat|nested] mbox.gz Atom feed top
2022-04-05 1:07 [RT][PATCH 1/2] rcutorture: Also force sched priority to timersd on boosting test Frederic Weisbecker
2022-04-05 1:07 ` [RT][PATCH 2/2] tick: Fix timer storm since introduction of timersd Frederic Weisbecker
2022-04-05 16:21 ` Alison Chaiken
2022-04-15 10:28 ` Frederic Weisbecker [this message]
2022-05-11 11:54 ` Sebastian Andrzej Siewior
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=20220415102852.GA1654237@lothringen \
--to=frederic@kernel.org \
--cc=achaiken@aurora.tech \
--cc=bigeasy@linutronix.de \
--cc=glenn@aurora.tech \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-rt-users@vger.kernel.org \
--cc=mgorman@suse.de \
--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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox