All of lore.kernel.org
 help / color / mirror / Atom feed
* [Xenomai-core] [RFC] latency tracing
@ 2005-11-28 20:57 Jan Kiszka
  2005-11-28 22:28 ` Philippe Gerum
  0 siblings, 1 reply; 2+ messages in thread
From: Jan Kiszka @ 2005-11-28 20:57 UTC (permalink / raw)
  To: xenomai-core

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

Hi,

as I'm lazy, er busy, I'm pushing this idea into public instead of
hacking a patch on my own: wouldn't it be nice to have something like
the latency backtrace of PREEMPT_RT also in Xenomai? Even when the core
is once optimised ;), there can still be drivers with long IRQ locks
nuking the WCET.

I saw that there is already something for SMP spinlock debugging. Is it
a lot of work to extend this to UP and maybe even all IRQ-off locks? Did
someone already look at the backtrace implementation of PREEMPT_RT in
details? Is is complicated to port? Does it require some changes at
ADEOS level?

Jan


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

^ permalink raw reply	[flat|nested] 2+ messages in thread

* Re: [Xenomai-core] [RFC] latency tracing
  2005-11-28 20:57 [Xenomai-core] [RFC] latency tracing Jan Kiszka
@ 2005-11-28 22:28 ` Philippe Gerum
  0 siblings, 0 replies; 2+ messages in thread
From: Philippe Gerum @ 2005-11-28 22:28 UTC (permalink / raw)
  To: Jan Kiszka; +Cc: xenomai-core

Jan Kiszka wrote:
> Hi,
> 
> as I'm lazy, er busy, I'm pushing this idea into public instead of
> hacking a patch on my own: wouldn't it be nice to have something like
> the latency backtrace of PREEMPT_RT also in Xenomai?

Yes; we would had saved a lot of time with a precise debug 
instrumentation in place in the early fusion days. It's a lesson for the 
future.

  Even when the core
> is once optimised ;), there can still be drivers with long IRQ locks
> nuking the WCET.
> 
> I saw that there is already something for SMP spinlock debugging. Is it
> a lot of work to extend this to UP and maybe even all IRQ-off locks?

AFAICS, it's basically a matter of decoupling CONFIG_SMP and 
CONFIG_XENO_SPINLOCK_DEBUG, so that we'd allow a dummy spinlock to exist 
even in UP, just to carry on with the statistics collection.

  Did
> someone already look at the backtrace implementation of PREEMPT_RT in
> details?

There are different levels of support for this, but basically, mcount() 
support has been crafted for the kernel so that gcc can be asked to 
insert prologue/epilogue calls in every routine when -pg is passed. 
Additionally, a global trace function keeps a copy of internal timings 
and callers %eip when traversed.

  Is is complicated to port?

mcount() support should be fairly manageable to port.

  Does it require some changes at
> ADEOS level?
>

Don't think so. gcc would do the job for the whole kernel anyway using 
mcount(), and trace calls could be spreaded as needed otherwise.

> Jan
> 
> 
> 
> ------------------------------------------------------------------------
> 
> _______________________________________________
> Xenomai-core mailing list
> Xenomai-core@domain.hid
> https://mail.gna.org/listinfo/xenomai-core


-- 

Philippe.


^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2005-11-28 22:28 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2005-11-28 20:57 [Xenomai-core] [RFC] latency tracing Jan Kiszka
2005-11-28 22:28 ` Philippe Gerum

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.