All of lore.kernel.org
 help / color / mirror / Atom feed
* [Xenomai-help] no-brainer issue found, but not solved
@ 2006-02-21 17:38 Steven Seeger
  2006-02-21 17:57 ` Jan Kiszka
  0 siblings, 1 reply; 9+ messages in thread
From: Steven Seeger @ 2006-02-21 17:38 UTC (permalink / raw)
  To: xenomai@xenomai.org

I have found what seems to cause my problem.

I have two threads, t1 and t2.

t1 has a priority level of 30, and t2 has a priority level of 5. I am using
the native skin, so t1 has the higher priority.

t2 is flashing an LED on my board every 40 ms, and t1 does nothing until I
hit a key on the keyboard. When t1 activates, it does for(i=0; i<100000000;
i++) which locks up my board for about 3 seconds. During this time, I expect
my LED to stop flashing. However, the LED will flash a few times just once,
at a rate of about 1 second. (Coincidentally, 1 second is the timing of
another unrelated thread in the system.)

At the start of my t1 thread, I use syslog (a system call) to log that the
thread is created. This call is made once before the thread goes into its
loop, waiting for a global variable to be set otherwise just calling
rt_task_wait_period(). If I comment out my call to syslog, which again I
state is NOT in the thread loop, this behavior goes away. It seems that once
a syscall is made in a shadow thread, xenomai fails to have it behave in a
true hard realtime fashion. It's as if the thread stays relaxed.

Does this shed any light on the issue I have?

Steven



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

end of thread, other threads:[~2006-02-24 14:00 UTC | newest]

Thread overview: 9+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2006-02-21 17:38 [Xenomai-help] no-brainer issue found, but not solved Steven Seeger
2006-02-21 17:57 ` Jan Kiszka
2006-02-21 18:15   ` Steven Seeger
2006-02-21 18:36     ` Jan Kiszka
2006-02-21 21:20       ` Jeroen Van den Keybus
2006-02-22 14:21         ` Steven Seeger
2006-02-22 15:00           ` Jan Kiszka
2006-02-24  9:01       ` Philippe Gerum
2006-02-24 14:00         ` Steven Seeger

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.