All of lore.kernel.org
 help / color / mirror / Atom feed
From: Maxime Ripard <maxime.ripard@free-electrons.com>
To: Gilles Chanteperdrix <gilles.chanteperdrix@xenomai.org>
Cc: Thomas Petazzoni <thomas@free-electrons.com>,
	Nicolas Ferre <nicolas.ferre@atmel.com>,
	Boris Brezillon <boris@free-electrons.com>,
	Alexandre Belloni <alexandre.belloni@free-electrons.com>,
	xenomai@xenomai.org
Subject: Re: [Xenomai] [PATCH] AT91: SAMA5D3: Adapt Ipipe for AIC5
Date: Tue, 8 Jul 2014 14:55:05 +0200	[thread overview]
Message-ID: <20140708125505.GN13423@lukather> (raw)
In-Reply-To: <53BAC5C4.5060704@xenomai.org>

On Mon, Jul 07, 2014 at 06:07:32PM +0200, Gilles Chanteperdrix wrote:
> -----BEGIN PGP SIGNED MESSAGE-----
> Hash: SHA1
> 
> On 07/07/2014 06:02 PM, Maxime Ripard wrote:
> > On Sat, Jul 05, 2014 at 10:13:51AM +0200, Gilles Chanteperdrix
> > wrote:
> >>>>> Ok, so, with the changes you mentionned, I can't make the
> >>>>> system crash anymore (or at least, not as easily as it used
> >>>>> to be).
> >>>>> 
> >>>>> But: - whenever the program mentionned above calls exit(),
> >>>>> it stalls. However, ctrl+c makes the program exit properly,
> >>>>> and everything seems fine otherwise - whenever we don't
> >>>>> link it against xenomai, it just hangs. I've not figured
> >>>>> out why yet
> >>>>> 
> >>>>> With CONFIG_XENOMAI and CONFIG_IPIPE disabled, it works
> >>>>> fine.
> >>>> 
> >>>> My answer was wrong, you probably need to keep the 
> >>>> set_backup/clear_backup calls in he ->hold and ->release
> >>>> callbacks, as the linux interrupt may expect the backup areas
> >>>> to be in sync. Did you do this, or did you go for the
> >>>> alternative?
> >>> 
> >>> I went for the alternative. I'm sending you a v2 with what I
> >>> have so far, that shows the behaviour I was describing.
> >> 
> >> Could you try the following patch?
> > 
> > It actually works much better, thanks!
> > 
> > The above mentionned issues are gone, there's only one last glitch
> > I guess. The max latency under load is around a few 100's of ms
> > (while idle, it's actually around 200-300us, which seems more
> > reasonable.
> 
> 200us or 300us seems high for a last generation cortex. milliseconds
> issues indicate an issue, does the msw column in latency increment?

Ok, so after spending more time running xeno-test and latency

  * xeno-test -l "dohell -s 192.168.0.42 -p 5566 -b /usr/bin/hackbench 60"
    - the average latency measured is 37us, with a max at 53

  * If I just use the same load generator program I was using
    previously (which basically just run hackbench, dohell, do some
    dd, output some data through netcat, etc.), and latency, for 45
    minutes, I get an average latency at 35us, and a max latency at 60.

So the issue seems to lie in something related to our test program.

It's actually using CLOCK_MONOTONIC. When running just Xenomai's
clocktest program, the drift is OK, but the ToD offset is quite huge
and varies slightly from one run to another. This also happens using
CLOCK_REALTIME.

>From what I understand of the POSIX clocks, gettimeofday is always
using EPOCH as a starting point, while POSIX clocks can pick whatever
fixed starting point, so an offset might be expected. What's weird is
that it whenever you use the CLOCK_HOST_REALTIME, which is used by
xeno-test, and should be in sync with the Linux clock, this offset is
no longer there.

That's the only meaningful difference I could spot between the two
programs (ours vs clocktest).

Maxime

-- 
Maxime Ripard, Free Electrons
Embedded Linux, Kernel and Android engineering
http://free-electrons.com
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 819 bytes
Desc: Digital signature
URL: <http://www.xenomai.org/pipermail/xenomai/attachments/20140708/265ea386/attachment.sig>

  reply	other threads:[~2014-07-08 12:55 UTC|newest]

Thread overview: 21+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2014-07-01 10:27 [Xenomai] [PATCH] AT91: SAMA5D3: Adapt Ipipe for AIC5 Maxime Ripard
2014-07-01 10:59 ` Gilles Chanteperdrix
2014-07-01 14:15   ` Maxime Ripard
2014-07-01 19:35     ` Gilles Chanteperdrix
2014-07-04  9:27       ` Maxime Ripard
2014-07-05  8:13         ` Gilles Chanteperdrix
2014-07-07 16:02           ` Maxime Ripard
2014-07-07 16:07             ` Gilles Chanteperdrix
2014-07-08 12:55               ` Maxime Ripard [this message]
2014-07-08 14:04                 ` Maxime Ripard
2014-07-08 17:30                 ` Gilles Chanteperdrix
2014-07-10 15:05                   ` Maxime Ripard
2014-07-10 17:04                     ` Gilles Chanteperdrix
2014-07-16 16:18                       ` Maxime Ripard
2014-07-16 19:47                         ` Gilles Chanteperdrix
2014-07-17 10:18                           ` Maxime Ripard
2014-07-17 10:54                             ` Gilles Chanteperdrix
2014-07-17 11:59                               ` Maxime Ripard
2014-07-17 22:21                                 ` Gilles Chanteperdrix
2014-07-10 18:27                     ` Gilles Chanteperdrix
     [not found]                     ` <20140710172702.5ba6511c@free-electrons.com>
2014-07-10 18:30                       ` Gilles Chanteperdrix

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=20140708125505.GN13423@lukather \
    --to=maxime.ripard@free-electrons.com \
    --cc=alexandre.belloni@free-electrons.com \
    --cc=boris@free-electrons.com \
    --cc=gilles.chanteperdrix@xenomai.org \
    --cc=nicolas.ferre@atmel.com \
    --cc=thomas@free-electrons.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.