All of lore.kernel.org
 help / color / mirror / Atom feed
From: Philippe Gerum <rpm@xenomai.org>
To: Russell Johnson <russell.johnson@kratosdefense.com>
Cc: xenomai@xenomai.org
Subject: Re: Track down in-band switches
Date: Wed, 08 Jun 2022 08:50:36 +0200	[thread overview]
Message-ID: <87o7z3ws8m.fsf@xenomai.org> (raw)
In-Reply-To: <PH1P110MB10502A1DEB9D85DE57CD10ACE2A49@PH1P110MB1050.NAMP110.PROD.OUTLOOK.COM>


Russell Johnson via Xenomai <xenomai@xenomai.org> writes:

> Hello,
>
>  
>
> I am currently working on porting my realtime threads in my app to EVL. I am
> using "evl ps -l" to track whether or not there are any in-band switches on
> my EVL threads. Is there any recommended tool or method for tracking down
> what specifically is causing the in-band switches on an EVL thread? 
>

There are two additional options provided by the health monitoring
interface [1], both enabled with [2]:

- using the legacy signal-based method (T_HMSIG), which sends SIGDEBUG
  (a Xenomai alias to SIGXCPU) to the thread which switches in-band,
  with the cause for switch available from the siginfo data.

- using the 'observable' interface of any EVL thread (T_HMOBS) to
  receive message-based notifications instead of signals. In this case,
  a thread can observe other threads, i.e. receive those
  notifications. [4] is a simple test which illustrates how to use this
  interface.

[1] https://evlproject.org/core/user-api/thread/#health-monitoring
[2] https://evlproject.org/core/user-api/thread/#evl_set_thread_mode
[3] https://evlproject.org/core/user-api/observable/#observable-thread
[4] https://source.denx.de/Xenomai/xenomai4/libevl/-/blob/master/tests/observable-hm.c

-- 
Philippe.


      reply	other threads:[~2022-06-08  6:50 UTC|newest]

Thread overview: 2+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2022-06-08  1:29 Track down in-band switches Russell Johnson
2022-06-08  6:50 ` Philippe Gerum [this message]

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=87o7z3ws8m.fsf@xenomai.org \
    --to=rpm@xenomai.org \
    --cc=russell.johnson@kratosdefense.com \
    --cc=xenomai@xenomai.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.