Re: [PATCH 1/2] hung_task: Show the blocker task if the task is hung on mutex

From: Google
Date: Wed Feb 19 2025 - 21:08:08 EST


On Wed, 19 Feb 2025 18:58:10 -0500
Steven Rostedt <rostedt@xxxxxxxxxxx> wrote:

> On Thu, 20 Feb 2025 08:09:08 +0900
> Masami Hiramatsu (Google) <mhiramat@xxxxxxxxxx> wrote:
>
> > So something like this?
> >
> > unsigned int block_flags;
> > union {
> > struct mutex *mutex;
> > struct rwsem +rwsem;
> > struct rtmutex *rtmutex;
> > } blocked_on;
> >
> > enum {
> > BLOCKED_ON_MUTEX;
> > BLOCKED_ON_RWSEM;
> > BLOCKED_ON_RTMUTEX;
> > BLOCKED_ON_IO;
> > } block_reason;
> >
> > For the safety, we may anyway lock the task anyway, but that is the
> > same as stacktrace.
>
> Why not make it into a single entity?
>
> struct blocked_on {
> unsigned int flags;
> union {
> struct mutex *mutex;
> struct rwsem *rwsem;
> struct rtmutex *rtmutex;
> } blocked_on;
> };

Yes, and we also merge current mutex_waiter too.

Thank you,

>
> -- Steve
>


--
Masami Hiramatsu (Google) <mhiramat@xxxxxxxxxx>