[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <a7b1527165a6551ceb93282a307ec84f6621d73f.camel@redhat.com>
Date: Mon, 13 Oct 2025 11:01:41 +0200
From: Gabriele Monaco <gmonaco@...hat.com>
To: Nam Cao <namcao@...utronix.de>, linux-kernel@...r.kernel.org, Jonathan
Corbet <corbet@....net>, Steven Rostedt <rostedt@...dmis.org>, Masami
Hiramatsu <mhiramat@...nel.org>, linux-doc@...r.kernel.org,
linux-trace-kernel@...r.kernel.org
Cc: Tomas Glozar <tglozar@...hat.com>, Juri Lelli <jlelli@...hat.com>, Clark
Williams <williams@...hat.com>, John Kacur <jkacur@...hat.com>
Subject: Re: [PATCH v2 14/20] rv: Add sample hybrid monitors stall
On Fri, 2025-10-10 at 16:23 +0200, Nam Cao wrote:
> Gabriele Monaco <gmonaco@...hat.com> writes:
> > +- Name: stall - wakeup in preemptive
> ^^^^^^^^^^^^^^^^^^^^
> copy-paste mistake?
Damn, right..
> > +- Type: per-task hybrid automaton
> > +- Author: Gabriele Monaco <gmonaco@...hat.com>
> > +
> > +Description
> > +-----------
> > +
> > +The stalled task (stall) monitor is a sample per-task timed monitor that
> > checks
> > +if tasks are scheduled within a defined threshold after they are ready::
> > +
> > + |
> > + |
> > + v
> > + #==================================#
> > + H dequeued H <+
> > + #==================================# |
> > + | |
> > + | sched_wakeup;reset(clk) |
> > + v |
> > + +----------------------------------+ |
> > + | enqueued | |
> > + | clk < threshold_jiffies | |
> > sched_switch_wait
> > + +----------------------------------+ |
> > + | |
> > + | sched_switch_in |
> > + sched_switch_in v |
> > + sched_wakeup +----------------------------------+ |
> > + +------------------ | | |
> > + | | running | |
> > + +-----------------> | | -+
> > + +----------------------------------+
>
> I think this monitor does not detect if a task get preempted, but then
> never get scheduled again?
>
> This sample monitor does not have to cover everything obviously, but I'm
> curious if I understand it correct.
Yes, that's right. I think I could cover that scenario by just going back to
enqueued and resetting when preempted. Since it's a simple change, it's probably
something meaningful to do..
Thanks,
Gabriele
Powered by blists - more mailing lists