From: "Paul E. McKenney" <paulmck@kernel.org>
To: Uladzislau Rezki <urezki@gmail.com>
Cc: Joel Fernandes <joel@joelfernandes.org>,
rcu@vger.kernel.org, linux-kernel@vger.kernel.org
Subject: Re: [PATCH RFC] rcu/kfree: Do not request RCU when not needed
Date: Thu, 3 Nov 2022 09:34:08 -0700 [thread overview]
Message-ID: <20221103163408.GU5600@paulmck-ThinkPad-P17-Gen-1> (raw)
In-Reply-To: <Y2O8k2U+ACr1N6Fe@pc638.lan>
On Thu, Nov 03, 2022 at 02:05:23PM +0100, Uladzislau Rezki wrote:
> On Thu, Nov 03, 2022 at 01:44:51PM +0100, Uladzislau Rezki wrote:
> > >
> > > > Though I am thinking, workqueue context is normally used to invoke
> > > > code that can block, and would the issue you mentioned affect those as
> > > > well, or affect RCU when those non-RCU work items block. So for
> > > > example, when other things in the system that can queue things on the
> > > > system_wq and block. (I might be throwing darts in the dark).
> > > >
> > > > To be safe, we can implement your suggestion which is basically a form
> > > > of my initial patch.
> > > >
> > > > Should we add Tejun to the thread?
> > >
> > > Let's get organized first, but that would be a good thing. Or I could
> > > reach out to Tejun internally.
> > >
> > > For but one thing to get organized about, maybe kfree_rcu() should be
> > > using a workqueue with the WQ_MEM_RECLAIM flag set.
> > >
> > It can be as an option to consider. Because such workqueue has some
> > special priority for better handling of memory releasing. I can have
> > a look at it closer to see how kvfree_rcu() works if it goes with WQ_MEM_RECLAIM.
> >
> An extra note. It would work well with posted patch because we can
> directly queue the reclaim work to the WQ_MEM_RECLAIM queue.
>
> As for now RCU-core kthreads like: rcugp, rcuop use "regular"
> queue. I think system_wq one.
Agreed, it is the expedited grace period that uses WQ_MEM_RECLAIM
workqueues.
Thanx, Paul
next prev parent reply other threads:[~2022-11-03 16:37 UTC|newest]
Thread overview: 28+ messages / expand[flat|nested] mbox.gz Atom feed top
2022-10-29 13:28 Joel Fernandes (Google)
2022-10-29 13:31 ` Joel Fernandes
2022-11-02 12:37 ` Uladzislau Rezki
2022-11-02 16:13 ` Joel Fernandes
2022-11-02 16:35 ` Paul E. McKenney
2022-11-02 17:24 ` Uladzislau Rezki
2022-11-02 17:29 ` Joel Fernandes
2022-11-02 18:31 ` Uladzislau Rezki
2022-11-02 18:49 ` Paul E. McKenney
2022-11-02 19:46 ` Joel Fernandes
2022-11-02 20:28 ` Paul E. McKenney
2022-11-02 21:26 ` Joel Fernandes
2022-11-02 22:35 ` Paul E. McKenney
2022-11-03 12:44 ` Uladzislau Rezki
2022-11-03 13:05 ` Uladzislau Rezki
2022-11-03 16:34 ` Paul E. McKenney [this message]
2022-11-03 17:52 ` Paul E. McKenney
2022-11-03 12:41 ` Uladzislau Rezki
2022-11-03 17:51 ` Paul E. McKenney
2022-11-03 18:36 ` Joel Fernandes
2022-11-03 18:43 ` Joel Fernandes
2022-11-04 14:39 ` Uladzislau Rezki
2022-11-04 14:35 ` Uladzislau Rezki
[not found] ` <CAEXW_YQWYfJPpeXoV0ZDGC7Kd585LJ+h2YbKfB3unDDZinxTRQ@mail.gmail.com>
2022-11-03 12:54 ` Uladzislau Rezki
2022-11-02 17:30 ` Uladzislau Rezki
2022-11-02 18:32 ` Paul E. McKenney
2022-11-02 19:51 ` Joel Fernandes
2022-11-02 16:11 ` Joel Fernandes
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=20221103163408.GU5600@paulmck-ThinkPad-P17-Gen-1 \
--to=paulmck@kernel.org \
--cc=joel@joelfernandes.org \
--cc=linux-kernel@vger.kernel.org \
--cc=rcu@vger.kernel.org \
--cc=urezki@gmail.com \
/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
all inboxes | Powered by JetHome®