From: Oleg Nesterov <oleg@redhat.com>
To: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
Cc: "Luis Claudio R. Goncalves" <lgoncalv@redhat.com>,
Peter Zijlstra <peterz@infradead.org>,
Clark Williams <clrkwllms@kernel.org>,
Steven Rostedt <rostedt@goodmis.org>, Tejun Heo <tj@kernel.org>,
David Vernet <dvernet@meta.com>, Barret Rhoden <brho@google.com>,
Josh Don <joshdon@google.com>, Crystal Wood <crwood@redhat.com>,
linux-kernel@vger.kernel.org, linux-rt-devel@lists.linux.dev,
Juri Lelli <juri.lelli@redhat.com>,
Ben Segall <bsegall@google.com>,
Dietmar Eggemann <dietmar.eggemann@arm.com>,
Ingo Molnar <mingo@redhat.com>, Mel Gorman <mgorman@suse.de>,
Valentin Schneider <vschneid@redhat.com>,
Vincent Guittot <vincent.guittot@linaro.org>,
Thomas Gleixner <tglx@linutronix.de>,
Wander Lairson Costa <wander@redhat.com>
Subject: Re: [RESEND PATCH] sched: restore the behavior of put_task_struct() for non-rt
Date: Mon, 11 Aug 2025 12:40:34 +0200 [thread overview]
Message-ID: <20250811104033.GA5250@redhat.com> (raw)
In-Reply-To: <20250811100624.LuYV-ZuF@linutronix.de>
On 08/11, Sebastian Andrzej Siewior wrote:
>
> I don't want to drag this but this comment is obvious for anyone who is
> fluent in C. It is just a statement with no explanation.
> An important note would be that the atomic context restriction only
> apply to PREEMPT_RT and therefore we have this context override for
> lockdep below. The other question would be why don't we do this
> unconditionally regardless of PREEMPT_RT. The only reason I could find
> is that releasing the task here from the "exit path" makes the vmap
> stack "earlier" available for reuse.
Sorry, could you clarify your "other" question?
What exactly do you think we could do regardless of PREEMPT_RT?
Oleg.
>
> > + if (!IS_ENABLED(CONFIG_PREEMPT_RT)) {
> > + static DEFINE_WAIT_OVERRIDE_MAP(put_task_map, LD_WAIT_SLEEP);
> > +
> > + lock_map_acquire_try(&put_task_map);
> > + __put_task_struct(t);
> > + lock_map_release(&put_task_map);
> > + return;
> > + }
> > +
> > /*
> > * Under PREEMPT_RT, we can't call __put_task_struct
> > * in atomic context because it will indirectly
> > @@ -137,10 +150,6 @@ static inline void put_task_struct(struct task_struct *t)
> > * current process has a mutex enqueued (blocked on
> > * a PI chain).
> > *
> > - * In !RT, it is always safe to call __put_task_struct().
> > - * Though, in order to simplify the code, resort to the
> > - * deferred call too.
> > - *
> > * call_rcu() will schedule __put_task_struct_rcu_cb()
> > * to be called in process context.
> > *
> >
>
> Sebastian
>
next prev parent reply other threads:[~2025-08-11 10:42 UTC|newest]
Thread overview: 17+ messages / expand[flat|nested] mbox.gz Atom feed top
2025-08-06 19:43 [RESEND PATCH] sched: restore the behavior of put_task_struct() for non-rt Luis Claudio R. Goncalves
2025-08-11 10:06 ` Sebastian Andrzej Siewior
2025-08-11 10:40 ` Oleg Nesterov [this message]
2025-08-11 11:05 ` Sebastian Andrzej Siewior
2025-08-11 11:21 ` Oleg Nesterov
2025-08-11 12:15 ` Sebastian Andrzej Siewior
-- strict thread matches above, loose matches on Subject: below --
2025-08-25 13:50 Luis Claudio R. Goncalves
2025-09-15 11:15 Luis Claudio R. Goncalves
2025-09-15 11:38 ` Peter Zijlstra
2025-09-15 12:24 ` Sebastian Andrzej Siewior
2025-09-15 14:49 ` Luis Claudio R. Goncalves
2025-09-15 15:31 ` Sebastian Andrzej Siewior
2025-09-15 12:35 ` Oleg Nesterov
2025-09-16 10:09 ` Peter Zijlstra
2025-09-16 11:30 ` Oleg Nesterov
2025-10-17 14:39 ` Oleg Nesterov
2025-10-18 13:11 ` Luis Claudio R. Goncalves
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=20250811104033.GA5250@redhat.com \
--to=oleg@redhat.com \
--cc=bigeasy@linutronix.de \
--cc=brho@google.com \
--cc=bsegall@google.com \
--cc=clrkwllms@kernel.org \
--cc=crwood@redhat.com \
--cc=dietmar.eggemann@arm.com \
--cc=dvernet@meta.com \
--cc=joshdon@google.com \
--cc=juri.lelli@redhat.com \
--cc=lgoncalv@redhat.com \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-rt-devel@lists.linux.dev \
--cc=mgorman@suse.de \
--cc=mingo@redhat.com \
--cc=peterz@infradead.org \
--cc=rostedt@goodmis.org \
--cc=tglx@linutronix.de \
--cc=tj@kernel.org \
--cc=vincent.guittot@linaro.org \
--cc=vschneid@redhat.com \
--cc=wander@redhat.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 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.