Linux real-time development
 help / color / mirror / Atom feed
From: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
To: Frederic Weisbecker <frederic@kernel.org>
Cc: rcu@vger.kernel.org, linux-rt-devel@lists.linux.dev,
	Lai Jiangshan <jiangshanlai@gmail.com>,
	"Paul E. McKenney" <paulmck@kernel.org>,
	Josh Triplett <josh@joshtriplett.org>,
	Steven Rostedt <rostedt@goodmis.org>,
	Mathieu Desnoyers <mathieu.desnoyers@efficios.com>,
	Clark Williams <clrkwllms@kernel.org>
Subject: Re: [PATCH] rcu: Use IRQ_WORK_INIT_HARD for srcu's irq_work
Date: Fri, 21 Aug 2026 12:21:58 +0200	[thread overview]
Message-ID: <20260821102158.dKDBLZH8@linutronix.de> (raw)
In-Reply-To: <aoeG1BhFsTV2T_p4@pavilion.home>

On 2026-08-21 00:59:32 [+0200], Frederic Weisbecker wrote:
> > Urgh. irq_work shouldn't become a widespread user ;)
> > If the scheduler is up but irq_work thread is not yet created and the
> > irq_work uses sleeping locks then it would create warnings.
> > In testing right now I see just wake_up_klogd_work_func() which is
> > always LAZY but would qualify otherwise for a warning. We wouldn't
> > trigger anything yet but you get the idea.
> 
> Fair enough! But should we warn if a non-hard IRQ work is queued before
> the kthread is created?

It is not a problem in general. So for instance the printk thingy is
enqueued and is invoked later. The wake up can be delayed. There is no
need to trigger a warning here. There is no dependency and you can't
know that.
The difference with SRCU+tracing is that it first starts a grace period
(the irq_wake from SRCU for tracing) and then expects the grace period
to be completed (tracing). Even before SRCU is up, you can queue
callbacks or start grace periods, etc. This is handled once everything
is up.

> Thanks.
> 

Sebastian

      reply	other threads:[~2026-08-21 10:22 UTC|newest]

Thread overview: 9+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2026-08-20 11:00 [PATCH] rcu: Use IRQ_WORK_INIT_HARD for srcu's irq_work Sebastian Andrzej Siewior
2026-08-20 12:40 ` Frederic Weisbecker
2026-08-20 13:55   ` Sebastian Andrzej Siewior
2026-08-20 17:00     ` Steven Rostedt
2026-08-21 10:04       ` Sebastian Andrzej Siewior
2026-08-21 11:01         ` Sebastian Andrzej Siewior
2026-08-21 16:44           ` Steven Rostedt
2026-08-20 22:59     ` Frederic Weisbecker
2026-08-21 10:21       ` Sebastian Andrzej Siewior [this message]

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=20260821102158.dKDBLZH8@linutronix.de \
    --to=bigeasy@linutronix.de \
    --cc=clrkwllms@kernel.org \
    --cc=frederic@kernel.org \
    --cc=jiangshanlai@gmail.com \
    --cc=josh@joshtriplett.org \
    --cc=linux-rt-devel@lists.linux.dev \
    --cc=mathieu.desnoyers@efficios.com \
    --cc=paulmck@kernel.org \
    --cc=rcu@vger.kernel.org \
    --cc=rostedt@goodmis.org \
    /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