On one of my test-systems I get pretty regular realtime-violations, which
raise the strong suspicion of a hardware problem, but the System is a
"normal" Intel Systems like many others that don't have this problem, and
there are no other IO-Cards etc. except some standard on-borad IOs including
an ethernet controller.
The same routine runs fine on many other systems (it should - its simple!)...
Of course, this problem affects my interrupt-handler written for an IO-card
(which wasn't build-in during the timing-test!) in a way that the handler is
called with a delay which relates to the relatime-violations...
I tried play with bios-setting concerning the speed-step stuff or
power-management, but there was no effect at all.
Does anybody have any idea where these violations could come from?
Any help ist appreciated. If possible, please send a copy of your answer to
[EMAIL PROTECTED]
I testet with the following routine:
------snip-----------------
// Wait for next cycle
pthread_wait_np();
now = gethrtime();
diff = now - erwartet ;
erwartet = now + Thread->Periode;
mittel += diff;
if (diff > (int)(Thread->Periode*1100))
PRINTL("Echtzeitverletzung in Thread Nr. %d Durchgang
%d: %d us statt %d us\n", Thread->Nr, nCount, diff, Thread->Periode*1000);
if (diff < zeit.min)
zeit.min = diff;
if (diff > zeit.max)
zeit.max = diff;
if (++nCount%1000 == 0)
{
zeit.mittel = mittel/1000;
// tf_put(FIFO_TIMING, &(Thread->Nr),
sizeof(pthread_t));
// rtf_put(FIFO_TIMING, &zeit, sizeof(zeit));
zeit.min = 1000000000LL;
zeit.max = -1000000000LL;
mittel = 0;
}
}
---------snap--------------------
... and get
Jul 1 21:00:48 siemens kernel: Echtzeitverletzung in Thread Nr. 5 Durchgang
377: 3035916 us statt 500000 us
Jul 1 21:00:48 siemens kernel: Echtzeitverletzung in Thread Nr. 5 Durchgang
1407: 2975948 us statt 500000 us
Jul 1 21:00:48 siemens kernel: Echtzeitverletzung in Thread Nr. 5 Durchgang
2439: 2926956 us statt 500000 us
Jul 1 21:00:48 siemens kernel: Echtzeitverletzung in Thread Nr. 5 Durchgang
3471: 2917196 us statt 500000 us
Jul 1 21:00:49 siemens kernel: Echtzeitverletzung in Thread Nr. 5 Durchgang
4503: 2838892 us statt 500000 us
Jul 1 21:00:49 siemens kernel: Echtzeitverletzung in Thread Nr. 5 Durchgang
5533: 3304716 us statt 500000 us
Jul 1 21:00:49 siemens kernel: Echtzeitverletzung in Thread Nr. 5 Durchgang
6563: 3250028 us statt 500000 us
Jul 1 21:00:50 siemens kernel: Echtzeitverletzung in Thread Nr. 5 Durchgang
7593: 3236876 us statt 500000 us
Jul 1 21:00:50 siemens kernel: Echtzeitverletzung in Thread Nr. 5 Durchgang
8623: 3165132 us statt 500000 us
Jul 1 21:00:50 siemens kernel: Echtzeitverletzung in Thread Nr. 5 Durchgang
9653: 3134412 us statt 500000 us
Jul 1 21:00:50 siemens kernel: Echtzeitverletzung in Thread Nr. 5 Durchgang
10683: 3080396 us statt 500000 us
Jul 1 21:00:51 siemens kernel: Echtzeitverletzung in Thread Nr. 5 Durchgang
11713: 3063916 us statt 500000 us
Jul 1 21:00:51 siemens kernel: Echtzeitverletzung in Thread Nr. 5 Durchgang
12743: 2995276 us statt 500000 us
Jul 1 21:00:51 siemens kernel: Echtzeitverletzung in Thread Nr. 5 Durchgang
13773: 2957964 us statt 500000 us
Jul 1 21:00:51 siemens kernel: Echtzeitverletzung in Thread Nr. 5 Durchgang
14805: 2908460 us statt 500000 us
Jul 1 21:00:52 siemens kernel: Echtzeitverletzung in Thread Nr. 5 Durchgang
15837: 2893708 us statt 500000 us
Jul 1 21:00:52 siemens kernel: Echtzeitverletzung in Thread Nr. 5 Durchgang
16869: 2821676 us statt 500000 us
Jul 1 21:00:52 siemens kernel: Echtzeitverletzung in Thread Nr. 5 Durchgang
17899: 3284908 us statt 500000 us
Jul 1 21:00:52 siemens kernel: Echtzeitverletzung in Thread Nr. 5 Durchgang
18929: 3258604 us statt 500000 us
Jul 1 21:00:53 siemens kernel: Echtzeitverletzung in Thread Nr. 5 Durchgang
19959: 3203340 us statt 500000 us
Jul 1 21:00:53 siemens kernel: Echtzeitverletzung in Thread Nr. 5 Durchgang
20989: 3151084 us statt 500000 us
Jul 1 21:00:53 siemens kernel: Echtzeitverletzung in Thread Nr. 5 Durchgang
22019: 3118828 us statt 500000 us
Jul 1 21:00:53 siemens kernel: Echtzeitverletzung in Thread Nr. 5 Durchgang
23049: 3088268 us statt 500000 us
Jul 1 21:00:54 siemens kernel: Echtzeitverletzung in Thread Nr. 5 Durchgang
24079: 3029964 us statt 500000 us
Jul 1 21:00:54 siemens kernel: Echtzeitverletzung in Thread Nr. 5 Durchgang
25109: 2979436 us statt 500000 us
Jul 1 21:00:54 siemens kernel: Echtzeitverletzung in Thread Nr. 5 Durchgang
26141: 2943244 us statt 500000 us
Jul 1 21:00:54 siemens kernel: Echtzeitverletzung in Thread Nr. 5 Durchgang
27173: 2914316 us statt 500000 us
Jul 1 21:00:55 siemens kernel: Echtzeitverletzung in Thread Nr. 5 Durchgang
28205: 2860268 us statt 500000 us
Jul 1 21:00:55 siemens kernel: Echtzeitverletzung in Thread Nr. 5 Durchgang
29235: 3310348 us statt 500000 us
Jul 1 21:00:55 siemens kernel: Echtzeitverletzung in Thread Nr. 5 Durchgang
30265: 3271692 us statt 500000 us
Jul 1 21:00:55 siemens kernel: Echtzeitverletzung in Thread Nr. 5 Durchgang
31295: 3238860 us statt 500000 us
Jul 1 21:00:56 siemens kernel: Echtzeitverletzung in Thread Nr. 5 Durchgang
32325: 3186796 us statt 500000 us
Jul 1 21:00:56 siemens kernel: Echtzeitverletzung in Thread Nr. 5 Durchgang
33355: 3134508 us statt 500000 us
Jul 1 21:00:56 siemens kernel: Echtzeitverletzung in Thread Nr. 5 Durchgang
34385: 3100972 us statt 500000 us
Jul 1 21:00:57 siemens kernel: Echtzeitverletzung in Thread Nr. 5 Durchgang
35415: 3072012 us statt 500000 us
-- [rtl] ---
To unsubscribe:
echo "unsubscribe rtl" | mail [EMAIL PROTECTED] OR
echo "unsubscribe rtl <Your_email>" | mail [EMAIL PROTECTED]
--
For more information on Real-Time Linux see:
http://www.rtlinux.org/