From: Jens Axboe <axboe@kernel.dk>
To: Steven Rostedt <rostedt@goodmis.org>, Jiazi Li <jqqlijiazi@gmail.com>
Cc: linux-kernel@vger.kernel.org,
"peixuan.qiu" <peixuan.qiu@transsion.com>,
io-uring@vger.kernel.org
Subject: Re: [PATCH] stacktrace: do not trace user stack for user_worker tasks
Date: Wed, 25 Jun 2025 10:23:28 -0600 [thread overview]
Message-ID: <80e637d3-482d-4f3a-9a86-948d3837b24d@kernel.dk> (raw)
In-Reply-To: <20250624130744.602c5b5f@batman.local.home>
On 6/24/25 11:07 AM, Steven Rostedt wrote:
> On Mon, 23 Jun 2025 19:59:11 +0800
> Jiazi Li <jqqlijiazi@gmail.com> wrote:
>
>> Tasks with PF_USER_WORKER flag also only run in kernel space,
>> so do not trace user stack for these tasks.
>
> What exactly is the difference between PF_KTHREAD and PF_USER_WORKER?
One is a kernel thread (eg no mm, etc), the other is basically a user
thread. None of them exit to userspace, that's basically the only
thing they have in common.
> Has all the locations that test for PF_KTHREAD been audited to make
> sure that PF_USER_WORKER isn't also needed?
I did when adding it, to the best of my knowledge. But there certainly
could still be gaps. Sometimes not easy to see why code checks for
PF_KTHREAD in the first place.
> I'm working on other code that needs to differentiate between user
> tasks and kernel tasks, and having to have multiple flags to test is
> becoming quite a burden.
None of them are user tasks, but PF_USER_WORKER does look like a
user thread and acts like one, except it wasn't created by eg
pthread_create() and it never returns to userspace. When it's done,
it's simply reaped.
--
Jens Axboe
next prev parent reply other threads:[~2025-06-25 16:23 UTC|newest]
Thread overview: 8+ messages / expand[flat|nested] mbox.gz Atom feed top
2025-06-23 11:59 [PATCH] stacktrace: do not trace user stack for user_worker tasks Jiazi Li
2025-06-24 17:07 ` Steven Rostedt
2025-06-25 10:00 ` Jiazi Li
2025-06-25 16:23 ` Jens Axboe [this message]
2025-06-25 20:50 ` Steven Rostedt
2025-06-25 22:30 ` Jens Axboe
2025-06-25 22:41 ` Steven Rostedt
2025-06-25 23:54 ` Keith Busch
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=80e637d3-482d-4f3a-9a86-948d3837b24d@kernel.dk \
--to=axboe@kernel.dk \
--cc=io-uring@vger.kernel.org \
--cc=jqqlijiazi@gmail.com \
--cc=linux-kernel@vger.kernel.org \
--cc=peixuan.qiu@transsion.com \
--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 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.