Re: [PATCH 1/2] hung_task: Show the blocker task if the task is hung on mutex
From: Steven Rostedt
Date: Wed Feb 19 2025 - 18:55:28 EST
On Thu, 20 Feb 2025 07:56:39 +0900
Masami Hiramatsu (Google) <mhiramat@xxxxxxxxxx> wrote:
> > >> this field, we don't need to take lock, though taking the wait_lock may
> > >> still be needed to examine other information inside the mutex.
>
> Do we need to take it just for accessing owner, which is in an atomic?
Updating the task_struct would be in the same location as the blocked_on is
anyway. I would make it into a wrapper function that is a nop when disabled.
>
> > > But perhaps if we add a new config option for this feature, we could just
> > > add the lock that a task is blocked on before it goes to sleep and
> > > reference that instead. That would be easier than trying to play games
> > > getting the lock owner from the blocked_on field.
> >
> > Yes, it could be a new config option. This will be a useful feature that
> > I believe most distros will turn it on. Or we may just include that in
> > the core code without any option.
>
> Do we need another option? or just extend DETECT_HUNG_TASK?
DETECT_HUNG_TASK is just that, for detecting hung tasks. This adds more
information to that, which increases the size of the task_struct not to
mention adds code in the mutex/rwsem handlers.
I would definitely make it a separate config that may depend on
DETECT_HUNG_TASK.
-- Steve