convert from svn repository: remove tags directory
[lttv.git] / trunk / lttng-xenomai / patch-xenomai-xenoltt
CommitLineData
03d7fdf3 1diff -Naur xenomai-2.2.3/config.log xenomai-2.2.3-good/config.log
2--- xenomai-2.2.3/config.log 2006-12-07 17:17:36.000000000 -0500
3+++ xenomai-2.2.3-good/config.log 2006-12-07 11:09:13.000000000 -0500
4@@ -954,6 +954,7 @@
5 config.status:894: creating doc/docbook/custom-stylesheets/xsl/html/onechunk.xsl
6 config.status:894: creating doc/docbook/xenomai/Makefile
7 config.status:960: creating src/include/xeno_config.h
8+config.status:1092: src/include/xeno_config.h is unchanged
9 config.status:1171: linking ./include/asm-i386 to src/include/asm/xenomai
10 config.status:1171: linking ./include/asm-generic to src/include/asm-generic/xenomai
11 config.status:1408: executing depfiles commands
12diff -Naur xenomai-2.2.3/include/nucleus/ltt.h xenomai-2.2.3-good/include/nucleus/ltt.h
13--- xenomai-2.2.3/include/nucleus/ltt.h 2006-07-18 09:18:51.000000000 -0400
14+++ xenomai-2.2.3-good/include/nucleus/ltt.h 2006-11-14 10:01:40.000000000 -0500
15@@ -96,11 +96,13 @@
16
17 extern int xnltt_filter;
18
19-#define xnltt_log_event(ev, args...) \
20+#define xnltt_log_event(ev, args...) ;
21+/*
22 do { \
23 if (xnltt_evtable[ev].ltt_filter & xnltt_filter) \
24 ltt_log_std_formatted_event(xnltt_evtable[ev].ltt_evid, ##args); \
25 } while(0)
26+*/
27
28 static inline void xnltt_set_filter (int mask)
29 {
30diff -Naur xenomai-2.2.3/include/nucleus/synch.h xenomai-2.2.3-good/include/nucleus/synch.h
31--- xenomai-2.2.3/include/nucleus/synch.h 2006-08-13 15:42:27.000000000 -0400
32+++ xenomai-2.2.3-good/include/nucleus/synch.h 2006-11-14 10:01:40.000000000 -0500
33@@ -17,6 +17,12 @@
34 * 02111-1307, USA.
35 */
36
37+/****************************************************
38+ * JOV - XenoLTT - 2006-10-24
39+ * To enable LTTng tracing functions on Xenomai synch
40+ ****************************************************/
41+#include <linux/ltt/ltt-facility-xenoltt.h>
42+
43 #ifndef _XENO_NUCLEUS_SYNCH_H
44 #define _XENO_NUCLEUS_SYNCH_H
45
46@@ -89,6 +95,12 @@
47
48 static inline void xnsynch_set_owner (xnsynch_t *synch, struct xnthread *thread)
49 {
50+/**************************************************************
51+ * JOV - XenoLTT - 2006-10-24
52+ * Here we place the tracing call for the set owner function
53+ * Args: synch object, thread
54+ **************************************************************/
55+ trace_xenoltt_xeno_synch_set_owner(thread,synch);
56 synch->owner = thread;
57 }
58
59diff -Naur xenomai-2.2.3/ksrc/nucleus/intr.c xenomai-2.2.3-good/ksrc/nucleus/intr.c
60--- xenomai-2.2.3/ksrc/nucleus/intr.c 2006-07-18 09:19:03.000000000 -0400
61+++ xenomai-2.2.3-good/ksrc/nucleus/intr.c 2006-11-14 10:01:18.000000000 -0500
62@@ -389,7 +389,7 @@
63 xnarch_memory_barrier();
64
65 xnltt_log_event(xeno_ev_ienter, irq);
66-
67+
68 ++sched->inesting;
69 s = intr->isr(intr);
70 ++intr->hits;
71@@ -476,7 +476,7 @@
72 xnarch_memory_barrier();
73
74 xnltt_log_event(xeno_ev_ienter, irq);
75-
76+
77 ++sched->inesting;
78
79 xnintr_shirq_lock(shirq);
80@@ -521,7 +521,7 @@
81 xnarch_memory_barrier();
82
83 xnltt_log_event(xeno_ev_ienter, irq);
84-
85+
86 ++sched->inesting;
87
88 xnintr_shirq_lock(shirq);
89diff -Naur xenomai-2.2.3/ksrc/nucleus/ltt.c xenomai-2.2.3-good/ksrc/nucleus/ltt.c
90--- xenomai-2.2.3/ksrc/nucleus/ltt.c 2006-07-18 09:19:03.000000000 -0400
91+++ xenomai-2.2.3-good/ksrc/nucleus/ltt.c 2006-11-14 10:01:18.000000000 -0500
92@@ -34,8 +34,7 @@
93 va_start(ap, fmt);
94 vsnprintf(markbuf, sizeof(markbuf), fmt, ap);
95 va_end(ap);
96- ltt_log_std_formatted_event(xnltt_evtable[xeno_ev_mark].
97- ltt_evid, markbuf);
98+// ltt_log_std_formatted_event(xnltt_evtable[xeno_ev_mark]. ltt_evid, markbuf);
99 }
100 }
101
102@@ -46,13 +45,15 @@
103 /* Create all custom LTT events we need. */
104
105 for (ev = 0; xnltt_evtable[ev].ltt_label != NULL; ev++) {
106+/*
107 evid = ltt_create_event(xnltt_evtable[ev].ltt_label,
108 xnltt_evtable[ev].ltt_format,
109 LTT_CUSTOM_EV_FORMAT_TYPE_STR, NULL);
110+*/
111 if (evid < 0) {
112 while (--ev >= 0) {
113 xnltt_evtable[ev].ltt_evid = -1;
114- ltt_destroy_event(xnltt_evtable[ev].ltt_evid);
115+// ltt_destroy_event(xnltt_evtable[ev].ltt_evid);
116 }
117
118 return evid;
119@@ -81,9 +82,10 @@
120 void __exit xnltt_umount(void)
121 {
122 int ev;
123-
124+/*
125 for (ev = 0; xnltt_evtable[ev].ltt_evid != -1; ev++)
126 ltt_destroy_event(xnltt_evtable[ev].ltt_evid);
127+*/
128 }
129
130 struct xnltt_evmap xnltt_evtable[] = {
131diff -Naur xenomai-2.2.3/ksrc/nucleus/pod.c xenomai-2.2.3-good/ksrc/nucleus/pod.c
132--- xenomai-2.2.3/ksrc/nucleus/pod.c 2006-09-03 09:45:41.000000000 -0400
133+++ xenomai-2.2.3-good/ksrc/nucleus/pod.c 2006-12-08 09:03:25.000000000 -0500
134@@ -44,6 +44,12 @@
135 #include <nucleus/module.h>
136 #include <nucleus/ltt.h>
137
138+/****************************************************
139+ * JOV - XenoLTT - 2006-09-25
140+ * To enable LTTng tracing functions on Xenomai task
141+ ****************************************************/
142+#include <linux/ltt/ltt-facility-xenoltt.h>
143+
144 /* NOTE: We need to initialize the globals: remember that this code
145 also runs over user-space VMs... */
146
147@@ -227,6 +233,7 @@
148 void xnpod_schedule_handler(void)
149 {
150 xnltt_log_event(xeno_ev_smpsched);
151+
152 xnsched_set_resched(xnpod_current_sched());
153 xnpod_schedule();
154 }
155@@ -814,6 +821,13 @@
156 return err;
157
158 xnltt_log_event(xeno_ev_thrinit, thread->name, flags);
159+
160+/*************************************************************
161+ * JOV - XenoLTT - 2006-09-25
162+ * Here we place the tracing call for the thread init function
163+ * Args: Name, address, flags, priority
164+ *************************************************************/
165+ trace_xenoltt_xeno_thread_init(thread->name,thread,flags,prio);
166
167 xnlock_get_irqsave(&nklock, s);
168 thread->sched = xnpod_current_sched();
169@@ -947,6 +961,13 @@
170
171 xnltt_log_event(xeno_ev_thrstart, thread->name);
172
173+/**************************************************************
174+ * JOV - XenoLTT - 2006-09-25
175+ * Here we place the tracing call for the thread start function
176+ * Args: Name, address
177+ **************************************************************/
178+ trace_xenoltt_xeno_thread_start(thread->name,thread);
179+
180 #if defined(__KERNEL__) && defined(CONFIG_XENO_OPT_PERVASIVE)
181 if (testbits(thread->status, XNSHADOW)) {
182 xnlock_put_irqrestore(&nklock, s);
183@@ -1027,7 +1048,14 @@
184 xnlock_get_irqsave(&nklock, s);
185
186 xnltt_log_event(xeno_ev_threstart, thread->name);
187+/***************************************************************
188+ * JOV - XenoLTT - 2006-10-05
189+ * Here we place the tracing call for the thread restart function
190+ * Args: Name, address
191+ ***************************************************************/
192+ trace_xenoltt_xeno_thread_restart(thread->name,thread);
193
194+
195 /* Break the thread out of any wait it is currently in. */
196 xnpod_unblock_thread(thread);
197
198@@ -1226,6 +1254,14 @@
199
200 xnltt_log_event(xeno_ev_thrdelete, thread->name);
201
202+/***************************************************************
203+ * JOV - XenoLTT - 2006-09-25
204+ * Here we place the tracing call for the thread delete function
205+ * Args: Name, address
206+ ***************************************************************/
207+ trace_xenoltt_xeno_thread_delete(thread->name,thread);
208+
209+
210 sched = thread->sched;
211
212 removeq(&nkpod->threadq, &thread->glink);
213@@ -1375,6 +1411,14 @@
214
215 xnltt_log_event(xeno_ev_thrsuspend, thread->name, mask, timeout, wchan);
216
217+/****************************************************************
218+ * JOV - XenoLTT - 2006-09-25
219+ * Here we place the tracing call for the thread suspend function
220+ * Args: Name, address, address of a pended resource
221+ ****************************************************************/
222+ trace_xenoltt_xeno_thread_suspend(thread->name,thread,mask,timeout,wchan);
223+
224+
225 sched = thread->sched;
226
227 if (thread == sched->runthread) {
228@@ -1552,6 +1596,14 @@
229 xnlock_get_irqsave(&nklock, s);
230
231 xnltt_log_event(xeno_ev_thresume, thread->name, mask);
232+
233+/***************************************************************
234+ * JOV - XenoLTT - 2006-09-25
235+ * Here we place the tracing call for the thread resume function
236+ * Args: Name, address, start time, period
237+ ***************************************************************/
238+ trace_xenoltt_xeno_thread_resume(thread->name,thread,mask);
239+
240 xnarch_trace_pid(xnthread_user_task(thread) ?
241 xnarch_user_pid(xnthread_archtcb(thread)) : -1,
242 xnthread_current_priority(thread));
243@@ -1701,6 +1753,12 @@
244 xnlock_get_irqsave(&nklock, s);
245
246 xnltt_log_event(xeno_ev_thrunblock, thread->name, thread->status);
247+/***************************************************************
248+ * JOV - XenoLTT - 2006-09-25
249+ * Here we place the tracing call for the thread unblock function
250+ * Args: Name, address, start time, period
251+ ***************************************************************/
252+ trace_xenoltt_xeno_thread_unblock(thread->name,thread,thread->status);
253
254 if (testbits(thread->status, XNDELAY))
255 xnpod_resume_thread(thread, XNDELAY);
256@@ -1785,6 +1843,13 @@
257
258 xnltt_log_event(xeno_ev_threnice, thread->name, prio);
259
260+/***************************************************************
261+ * JOV - XenoLTT - 2006-09-25
262+ * Here we place the tracing call for the thread renice function
263+ * Args: Name, address, priority
264+ ***************************************************************/
265+ trace_xenoltt_xeno_thread_renice(thread->name,thread,prio);
266+
267 oldprio = thread->cprio;
268
269 /* Change the thread priority, taking in account an undergoing PIP
270@@ -2316,11 +2381,11 @@
271 #ifdef CONFIG_XENO_OPT_PERVASIVE
272 int shadow;
273 #endif /* CONFIG_XENO_OPT_PERVASIVE */
274-
275 if (xnarch_escalate())
276 return;
277
278 xnltt_log_event(xeno_ev_resched);
279+
280 #endif /* __KERNEL__ */
281
282 /* No immediate rescheduling is possible if an ISR or callout
283@@ -2419,6 +2484,13 @@
284
285 xnltt_log_event(xeno_ev_switch, threadout->name, threadin->name);
286
287+/**************************************************************
288+ * JOV - XenoLTT - 2006-11-09
289+ * Here we place the tracing call for the thread switch fonction
290+ * Args: Name, address, thread out name, address
291+ **************************************************************/
292+ trace_xenoltt_xeno_thread_switch(threadin->name,threadin,threadout->name,threadout);
293+
294 #if defined(__KERNEL__) && defined(CONFIG_XENO_OPT_PERVASIVE)
295 shadow = testbits(threadout->status, XNSHADOW);
296 #endif /* __KERNEL__ && CONFIG_XENO_OPT_PERVASIVE */
297@@ -2526,6 +2598,7 @@
298 xnthread_t *runthread = sched->runthread, *threadin;
299
300 xnltt_log_event(xeno_ev_fastsched);
301+
302 xnarch_trace_pid(xnthread_user_task(runthread) ?
303 xnarch_user_pid(xnthread_archtcb(runthread)) : -1,
304 xnthread_current_priority(runthread));
305@@ -3245,7 +3318,7 @@
306 xnlock_get(&nklock);
307
308 xnltt_log_event(xeno_ev_tmtick, xnpod_current_thread()->name);
309-
310+
311 #ifdef CONFIG_XENO_OPT_WATCHDOG
312 if (xnarch_get_cpu_tsc() >= sched->watchdog_trigger) {
313 if (!xnpod_root_p() && sched->watchdog_armed) {
314@@ -3371,6 +3444,13 @@
315
316 xnltt_log_event(xeno_ev_thrperiodic, thread->name, idate, period);
317
318+/**************************************************************
319+ * JOV - XenoLTT - 2006-09-25
320+ * Here we place the tracing call for the set periodic function
321+ * Args: Name, address, start time, period
322+ **************************************************************/
323+ trace_xenoltt_xeno_thread_set_period(thread->name,thread,idate,period,&thread->ptimer);
324+
325 if (period == XN_INFINITE) {
326 if (xntimer_running_p(&thread->ptimer))
327 xntimer_stop(&thread->ptimer);
328@@ -3392,6 +3472,7 @@
329 thread->pexpect =
330 xntimer_get_raw_expiry(&thread->ptimer)
331 + xntimer_interval(&thread->ptimer);
332+
333 xnpod_suspend_thread(thread, XNDELAY, XN_INFINITE,
334 NULL);
335 } else
336@@ -3466,6 +3547,13 @@
337
338 xnltt_log_event(xeno_ev_thrwait, thread->name);
339
340+/**************************************************************
341+ * JOV - XenoLTT - 2006-09-25
342+ * Here we place the tracing call for the wait perdiod function
343+ * Args: Name, address
344+ **************************************************************/
345+ trace_xenoltt_xeno_thread_wait_period(thread->name,thread);
346+
347 now = xntimer_get_rawclock(); /* Work with either TSC or periodic ticks. */
348
349 if (likely(now < thread->pexpect)) {
350@@ -3500,7 +3588,13 @@
351 #endif /* BITS_PER_LONG < 64 */
352 thread->pexpect += period * overruns;
353 err = -ETIMEDOUT;
354- }
355+/**************************************************************
356+ * JOV - XenoLTT - 2006-10-16
357+ * Here we place the tracing call for the event of period exceed
358+ * Args: Name, address, number of periods exceeded
359+ **************************************************************/
360+ trace_xenoltt_xeno_thread_missed_period(thread->name,thread,overruns);
361+ }
362
363 thread->pexpect += period;
364
365diff -Naur xenomai-2.2.3/ksrc/nucleus/synch.c xenomai-2.2.3-good/ksrc/nucleus/synch.c
366--- xenomai-2.2.3/ksrc/nucleus/synch.c 2006-09-03 12:44:10.000000000 -0400
367+++ xenomai-2.2.3-good/ksrc/nucleus/synch.c 2006-11-14 10:01:18.000000000 -0500
368@@ -37,6 +37,11 @@
369 #include <nucleus/module.h>
370 #include <nucleus/ltt.h>
371
372+/****************************************************
373+ * JOV - XenoLTT - 2006-10-17
374+ * To enable LTTng tracing functions on Xenomai synch
375+ ****************************************************/
376+#include <linux/ltt/ltt-facility-xenoltt.h>
377 /*!
378 * \fn void xnsynch_init(xnsynch_t *synch, xnflags_t flags);
379 * \brief Initialize a synchronization object.
380@@ -89,6 +94,7 @@
381 {
382 initph(&synch->link);
383
384+
385 if (flags & XNSYNCH_PIP)
386 flags |= XNSYNCH_PRIO; /* Obviously... */
387
388@@ -109,7 +115,13 @@
389
390 static inline void xnsynch_renice_thread(xnthread_t *thread, int prio)
391 {
392- thread->cprio = prio;
393+/**************************************************************
394+ * JOV - XenoLTT - 2006-10-24
395+ * Here we place the tracing call for the set renice function
396+ * Args: thread, priority
397+ **************************************************************/
398+ trace_xenoltt_xeno_synch_renice_thread(thread->name,thread,prio);
399+ thread->cprio = prio;
400
401 if (thread->wchan)
402 /* Ignoring the XNSYNCH_DREORD flag on purpose here. */
403@@ -168,6 +180,12 @@
404 xnlock_get_irqsave(&nklock, s);
405
406 xnltt_log_event(xeno_ev_sleepon, thread->name, synch);
407+/**************************************************************
408+ * JOV - XenoLTT - 2006-10-17
409+ * Here we place the tracing call for the sleepon synch function
410+ * Args: Name, address, synch
411+ **************************************************************/
412+ trace_xenoltt_xeno_synch_sleepon(thread->name,thread,synch);
413
414 if (!testbits(synch->status, XNSYNCH_PRIO)) { /* i.e. FIFO */
415 appendpq(&synch->pendq, &thread->plink);
416@@ -373,7 +391,14 @@
417
418 xnlock_get_irqsave(&nklock, s);
419
420- holder = getpq(&synch->pendq);
421+/**************************************************************
422+ * JOV - XenoLTT - 2006-10-30
423+ * Here we place the tracing call for the unblock function
424+ * Args: Last Owner Name, address, synch
425+ **************************************************************/
426+ trace_xenoltt_xeno_synch_unlock(lastowner->name,lastowner,synch);
427+
428+ holder = getpq(&synch->pendq);
429
430 if (holder) {
431 thread = link2thread(holder, plink);
432@@ -381,7 +406,14 @@
433 synch->owner = thread;
434 __setbits(thread->status, XNWAKEN);
435 xnltt_log_event(xeno_ev_wakeup1, thread->name, synch);
436- xnpod_resume_thread(thread, XNPEND);
437+/**************************************************************
438+ * JOV - XenoLTT - 2006-10-17
439+ * Here we place the tracing call for the wakeup synch function
440+ * Args: Name, address, synch
441+ **************************************************************/
442+ trace_xenoltt_xeno_synch_wakeup1(thread->name,thread,synch);
443+
444+ xnpod_resume_thread(thread, XNPEND);
445 } else
446 synch->owner = NULL;
447
448@@ -452,7 +484,14 @@
449 synch->owner = thread;
450 __setbits(thread->status, XNWAKEN);
451 xnltt_log_event(xeno_ev_wakeupx, thread->name, synch);
452- xnpod_resume_thread(thread, XNPEND);
453+/**************************************************************
454+ * JOV - XenoLTT - 2006-10-17
455+ * Here we place the tracing call for the wakeup synch function
456+ * Args: Name, address, synch
457+ **************************************************************/
458+ trace_xenoltt_xeno_synch_wakeupx(thread->name,thread,synch);
459+
460+ xnpod_resume_thread(thread, XNPEND);
461
462 if (testbits(synch->status, XNSYNCH_CLAIMED))
463 xnsynch_clear_boost(synch, lastowner);
464@@ -522,6 +561,12 @@
465 xnlock_get_irqsave(&nklock, s);
466
467 xnltt_log_event(xeno_ev_syncflush, synch, reason);
468+/**************************************************************
469+ * JOV - XenoLTT - 2006-10-17
470+ * Here we place the tracing call for the wakeup synch function
471+ * Args: Name, address, synch
472+ **************************************************************/
473+ trace_xenoltt_xeno_synch_syncflush(synch,reason);
474
475 status = emptypq_p(&synch->pendq) ? XNSYNCH_DONE : XNSYNCH_RESCHED;
476
477@@ -568,7 +613,13 @@
478 xnsynch_t *synch = thread->wchan;
479
480 xnltt_log_event(xeno_ev_syncforget, thread->name, synch);
481-
482+/**************************************************************
483+ * JOV - XenoLTT - 2006-10-17
484+ * Here we place the tracing call for the forget synch call
485+ * Args: Name, address, synch
486+ **************************************************************/
487+ trace_xenoltt_xeno_synch_syncforget(thread->name, thread, synch);
488+
489 __clrbits(thread->status, XNPEND);
490 thread->wchan = NULL;
491 removepq(&synch->pendq, &thread->plink);
492diff -Naur xenomai-2.2.3/ksrc/nucleus/timer.c xenomai-2.2.3-good/ksrc/nucleus/timer.c
493--- xenomai-2.2.3/ksrc/nucleus/timer.c 2006-08-27 06:45:08.000000000 -0400
494+++ xenomai-2.2.3-good/ksrc/nucleus/timer.c 2006-11-14 10:01:18.000000000 -0500
495@@ -48,6 +48,12 @@
496 #include <nucleus/thread.h>
497 #include <nucleus/timer.h>
498
499+/****************************************************
500+ * JOV - XenoLTT - 2006-10-18
501+ * To enable LTTng tracing functions on Xenomai task
502+ ****************************************************/
503+#include <linux/ltt/ltt-facility-xenoltt.h>
504+
505 static inline void xntimer_enqueue_aperiodic(xntimer_t *timer)
506 {
507 xntimerq_t *q = &timer->sched->timerqueue;
508@@ -202,22 +208,30 @@
509 xnsched_t *sched = xnpod_current_sched();
510 xntimerq_t *timerq = &sched->timerqueue;
511 xntimerh_t *holder;
512- xntimer_t *timer;
513-
514+ xntimer_t *timer;
515+
516 while ((holder = xntimerq_head(timerq)) != NULL) {
517 timer = aplink2timer(holder);
518
519 if (xntimerh_date(&timer->aplink) - nkschedlat >
520- xnarch_get_cpu_tsc())
521+ xnarch_get_cpu_tsc())
522 /* No need to continue in aperiodic mode since timeout
523 dates are ordered by increasing values. */
524 break;
525+
526
527 xntimer_dequeue_aperiodic(timer);
528
529 if (timer != &nkpod->htimer) {
530 if (!testbits(nkpod->status, XNTLOCK)) {
531- timer->handler(timer->cookie);
532+ /**************************************************************
533+ * JOV - XenoLTT - 2006-10-18
534+ * Here we place the tracing call for the current thread timer tick
535+ * Args: Name, Address
536+ **************************************************************/
537+ trace_xenoltt_xeno_timer_tick("1",holder);
538+
539+ timer->handler(timer->cookie);
540
541 if (timer->interval == XN_INFINITE ||
542 !testbits(timer->status, XNTIMER_DEQUEUED)
543@@ -234,12 +248,13 @@
544 nkpod->htimer.interval;
545 continue;
546 }
547+
548 } else
549- /* By postponing the propagation of the low-priority host
550+ /* By postponing the propagation of the low-priority host
551 tick to the interrupt epilogue (see
552 xnintr_irq_handler()), we save some I-cache, which
553 translates into precious microsecs on low-end hw. */
554- __setbits(sched->status, XNHTICK);
555+ __setbits(sched->status, XNHTICK);
556
557 xntimerh_date(&timer->aplink) += timer->interval;
558 xntimer_enqueue_aperiodic(timer);
559@@ -379,7 +394,8 @@
560 xntlholder_t *holder;
561 xnqueue_t *timerq;
562 xntimer_t *timer;
563-
564+
565+
566 /* Update the periodic clocks keeping the things strictly
567 monotonous (this routine is run on every cpu, but only CPU
568 XNTIMER_KEEPER_ID should do this). */
569@@ -389,7 +405,7 @@
570 timerq = &sched->timerwheel[nkpod->jiffies & XNTIMER_WHEELMASK];
571
572 while ((holder = xntlist_head(timerq)) != NULL) {
573- timer = plink2timer(holder);
574+ timer = plink2timer(holder);
575
576 if (xntlholder_date(&timer->plink) > nkpod->jiffies)
577 break;
578@@ -398,7 +414,14 @@
579
580 if (timer != &nkpod->htimer) {
581 if (!testbits(nkpod->status, XNTLOCK)) {
582- timer->handler(timer->cookie);
583+ /**************************************************************
584+ * JOV - XenoLTT - 2006-10-18
585+ * Here we place the tracing call for the current thread timer tick
586+ * Args: Name, Address
587+ **************************************************************/
588+ trace_xenoltt_xeno_timer_tick("2",holder);
589+
590+ timer->handler(timer->cookie);
591
592 if (timer->interval == XN_INFINITE ||
593 !testbits(timer->status, XNTIMER_DEQUEUED)
594@@ -409,8 +432,8 @@
595 nkpod->jiffies + nkpod->htimer.interval;
596 continue;
597 }
598- } else
599- __setbits(sched->status, XNHTICK);
600+ } else
601+ __setbits(sched->status, XNHTICK);
602
603 xntlholder_date(&timer->plink) =
604 nkpod->jiffies + timer->interval;
605diff -Naur xenomai-2.2.3/src/skins/native/libnative_la-alarm.loT xenomai-2.2.3-good/src/skins/native/libnative_la-alarm.loT
606--- xenomai-2.2.3/src/skins/native/libnative_la-alarm.loT 1969-12-31 19:00:00.000000000 -0500
607+++ xenomai-2.2.3-good/src/skins/native/libnative_la-alarm.loT 2006-12-07 11:09:26.000000000 -0500
608@@ -0,0 +1,7 @@
609+# libnative_la-alarm.lo - a libtool object file
610+# Generated by ltmain.sh - GNU libtool 1.5.6 (1.1220.2.95 2004/04/11 05:50:42) Debian: 224 $
611+#
612+# Please DO NOT delete this file!
613+# It is necessary for linking the library.
614+
615+# Name of the PIC object.
This page took 0.049515 seconds and 4 git commands to generate.