All of lore.kernel.org
 help / color / mirror / Atom feed
From: Jan Kiszka <jan.kiszka@domain.hid>
To: Gilles Chanteperdrix <gilles.chanteperdrix@xenomai.org>
Cc: xenomai@xenomai.org
Subject: Re: [Xenomai-core] [PATCH 6/6] Introduce IRQ latency benchmark
Date: Wed, 28 Jun 2006 16:44:18 +0200	[thread overview]
Message-ID: <44A295C2.1000405@domain.hid> (raw)
In-Reply-To: <17570.34620.38518.404171@domain.hid>

[-- Attachment #1: Type: text/plain, Size: 2727 bytes --]

Gilles Chanteperdrix wrote:
> Jan Kiszka wrote:
>  > > Is there no way to make this code easier to port for example by using
>  > > native or posix services for timings measurement and by abstracting the
>  > > non portable part and moving them to include/asm-i386 ?
>  > 
>  > This tool is intentionally left Xenomai-free. You can put it on any x86
>  > box around (and I assume that there is almost always some...) and run
>  > the test. Thus, no need for a second RT-patched system.
>  > 
>  > Anyway, suggestions or patches to add a porting layer are welcome. The
>  > following points need to be addressed: time measuring, irq protection,
>  > hardware access. I just wonder if this is worth the effort.
> 
> I do not understand: it appears to me that Xenomai trunk does not
> compile on other architectures than x86 when applying the IRQ latency
> benchmark patch. So, something needs to be done. It may be the enabling
> of an automake conditional in configure.in when compiling for x86.
> 

See the patch:

Index: xenomai/src/testsuite/irqbench/Makefile.am
===================================================================
--- /dev/null
+++ xenomai/src/testsuite/irqbench/Makefile.am
@@ -0,0 +1,47 @@
+testdir = $(prefix)/testsuite/irqbench
+
+test_PROGRAMS = irqloop
+
+ifeq ($(XENO_TARGET_ARCH),i386)
+test_PROGRAMS += irqbench
+endif


I just realised that some hint in the documentation that irqbench can
easily be compiled outside Xenomai is required.

>  > 
>  > > 
>  > > Also note that calling printf from a signal handler risk deadlocking if
>  > > the signal handler get called on the return path of the write call that
>  > > take place in the middle of a printf call on the main thread.
>  > > 
>  > 
>  > Ok, then we also need a fix for the latency test (this is where I
>  > grabbed that pattern from). Is there a high risk that this locks up? I
>  > wonder why I never observed or heard of problems with latency.
> 
> The latency test used to deadlock, that is why the summary printed on
> signal is printed on stderr. Unfortunately, there seem to be one display
> left on stdout, so it should still deadlock. The reason why we never see
> the deadlock is (perhaps) that the continuous intermediate results are
> printed on the context of the "display" thread, whereas the termination
> signals are preferably delivered by the kernel to the "main" thread,
> that only calls pause. Which makes the use of stderr in signals handlers
> pointless.
> 
> Anyway, since your program is frequently using printf on the context of
> the main thread, the risk of deadlock is real.
> 

Ok, I'm going to address this.

Thanks for the hint!

Jan


[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 249 bytes --]

  parent reply	other threads:[~2006-06-28 14:44 UTC|newest]

Thread overview: 31+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2006-06-26 17:21 [Xenomai-core] [PATCH 0/6] Various refactoring and new IRQ test jan.kiszka
2006-06-26 17:21 ` [Xenomai-core] [PATCH 1/6] Refactor tracer API jan.kiszka
2006-06-26 17:21 ` [Xenomai-core] [PATCH 2/6] Improve fault report jan.kiszka
2006-06-28  7:42   ` Philippe Gerum
2006-06-28  7:51     ` Jan Kiszka
2006-06-28  8:04       ` Philippe Gerum
2006-06-28  8:18         ` Jan Kiszka
2006-06-28  8:36           ` Philippe Gerum
2006-06-28  8:51             ` Jan Kiszka
2006-06-28  9:00               ` Philippe Gerum
2006-06-28  9:17                 ` Jan Kiszka
2006-06-28 16:36                   ` Philippe Gerum
2006-06-26 17:21 ` [Xenomai-core] [PATCH 3/6] Refactor rttesting device interface jan.kiszka
2006-06-26 17:21 ` [Xenomai-core] [PATCH 4/6] Add prio switch to latency test jan.kiszka
2006-06-28 19:38   ` Jan Kiszka
2006-06-26 17:21 ` [Xenomai-core] [PATCH 5/6] Overread dev-prefix on posix open jan.kiszka
2006-06-28 19:38   ` Jan Kiszka
2006-06-26 17:21 ` [Xenomai-core] [PATCH 6/6] Introduce IRQ latency benchmark jan.kiszka
2006-06-27 16:45   ` Jan Kiszka
2006-06-28 12:11   ` Gilles Chanteperdrix
2006-06-28 12:28     ` Jan Kiszka
2006-06-28 12:35       ` Gilles Chanteperdrix
2006-06-28 13:42       ` Gilles Chanteperdrix
2006-06-28 14:14         ` Dmitry Adamushko
2006-06-28 14:37           ` Jan Kiszka
2006-06-28 15:18             ` Dmitry Adamushko
2006-06-28 14:44         ` Jan Kiszka [this message]
2006-06-28 19:39   ` Jan Kiszka
2006-06-29 11:20     ` Jan Kiszka
2006-07-01 15:38       ` Philippe Gerum
2006-07-01 18:17         ` Jan Kiszka

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=44A295C2.1000405@domain.hid \
    --to=jan.kiszka@domain.hid \
    --cc=gilles.chanteperdrix@xenomai.org \
    --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.