Well , i found the topic, but I'm using kernel 2.6.27 with xenomai 2.4.8 and the code to be patched is a little bit different. I dont't know how to do , can you help me ?
On Fri, Aug 28, 2009 at 3:04 PM, Gilles Chanteperdrix < gilles.chanteperd...@xenomai.org> wrote: > Gilles Chanteperdrix wrote: > > Felipe Castro wrote: > >> Hi , > >> > >> I'm trying xenomai running on PXA270 Voipac module. > >> Acctually i have a problem when running the lantency test program. > >> > >> The module loads OK , but when i run latency program: > >> > >> [ 110.874334] Xenomai: starting native API services. > >> [ 282.865308] I-pipe: Detected illicit call from domain 'Xenomai' > >> [ 282.865356] into a service reserved for domain 'Linux' and > below. > >> [ 282.903226] [<c0023068>] (dump_stack+0x0/0x18) from [<c006cbcc>] > >> (ipipe_check_context+0xdc/0x100) > >> [ 282.929809] [<c006caf0>] (ipipe_check_context+0x0/0x100) from > >> [<c0066168>] (module_address_lookup+0x34/0x108) > >> [ 282.959374] [<c0066134>] (module_address_lookup+0x0/0x108) from > >> [<c00670e4>] (kallsyms_lookup+0x7c/0x80) > >> [ 282.987650] [<c0067068>] (kallsyms_lookup+0x0/0x80) from [<c0067208>] > >> (sprint_symbol+0x38/0xb0) > >> [ 283.013599] [<c00671d0>] (sprint_symbol+0x0/0xb0) from [<c00672a4>] > >> (__print_symbol+0x24/0x38) > >> [ 283.039294] r6:c03334f8 r5:c7035e24 r4:c02b5728 > >> [ 283.053066] [<c0067280>] (__print_symbol+0x0/0x38) from [<c007cfec>] > >> (xnpod_trap_fault+0xc8/0x258) > >> [ 283.079818] r5:c7040810 r4:c7035f40 > >> [ 283.090466] [<c007cf24>] (xnpod_trap_fault+0x0/0x258) from > [<c0073b30>] > >> (xnarch_trap_fault+0x24/0x2c) > >> [ 283.117967] r6:c0330cc4 r5:c02f6c48 r4:c0332950 > >> [ 283.131742] [<c0073b0c>] (xnarch_trap_fault+0x0/0x2c) from > [<c01dcd38>] > >> (exception_event+0x50/0x74) > >> [ 283.158751] [<c01dcce8>] (exception_event+0x0/0x74) from [<c006bbac>] > >> (__ipipe_dispatch_event+0xdc/0x1e8) > >> [ 283.187285] r4:00000000 > >> [ 283.194805] [<c006bad0>] (__ipipe_dispatch_event+0x0/0x1e8) from > >> [<c001ee04>] (do_fpe+0x18/0x3c) > >> [ 283.221016] I-pipe tracer log (100 points): > >> [ 283.233469] | + func 0 > ipipe_trace_panic_freeze+0x10 > >> (ipipe_check_context+0x5c) > >> [ 283.260735] | + func -4 ipipe_check_context+0x10 > >> (module_address_lookup+0x34) > >> [ 283.287176] | + func -6 > module_address_lookup+0x10 > >> (kallsyms_lookup+0x7c) > >> [ 283.312583] | + func -10 in_gate_area_no_task+0x10 > >> (is_ksym_addr+0x34) > >> [ 283.336956] | + func -13 is_ksym_addr+0x10 > >> (kallsyms_lookup+0x38) > >> [ 283.360036] | + func -15 kallsyms_lookup+0x14 > >> (sprint_symbol+0x38) > >> [ 283.383375] | + func -18 sprint_symbol+0x14 > >> (__print_symbol+0x24) > >> [ 283.406456] | + func -21 __print_symbol+0x14 > >> (xnpod_trap_fault+0xc8) > >> [ 283.430313] | + func -24 xnpod_trap_fault+0x14 > >> (xnarch_trap_fault+0x24) > >> [ 283.454943] | + func -27 xnarch_trap_fault+0x14 > >> (exception_event+0x50) > >> [ 283.479316] | + func -30 exception_event+0x10 > >> (__ipipe_dispatch_event+0xdc) > >> [ 283.504982] | + func -34 > __ipipe_dispatch_event+0x14 > >> (do_fpe+0x18) > >> [ 283.528320] | + end 0x80000001 -45 > __ipipe_dispatch_event+0x1c8 > >> (__ipipe_syscall_root+0x80) > >> [ 283.555562] | + begin 0x80000001 -48 > __ipipe_dispatch_event+0x104 > >> (__ipipe_syscall_root+0x80) > >> [ 283.582778] | + end 0x80000000 -52 > >> ipipe_unstall_pipeline_head+0x90 (xnshadow_harden+0x1a0) > >> [ 283.610021] | # begin 0x80000000 -56 > >> ipipe_unstall_pipeline_head+0x34 (xnshadow_harden+0x1a0) > >> [ 283.637262] # func -58 > >> ipipe_unstall_pipeline_head+0x10 (xnshadow_harden+0x1a0) > >> [ 283.664477] # func -63 xnpod_switch_fpu+0x10 > >> (xnshadow_harden+0x190) > >> [ 283.688851] | # end 0x80000001 -66 __sched_text_start+0x6d0 > >> (xnshadow_harden+0xa8) > >> [ 283.713793] | # begin 0x80000001 -69 __sched_text_start+0x6b8 > >> (xnshadow_harden+0xa8) > >> [ 283.738707] | # end 0x80000000 -71 __sched_text_start+0x65c > >> (xnshadow_harden+0xa8) > >> [ 283.763597] | # [ 304] telnetd -1 -92 xnpod_schedule+0xb4 > >> (xnpod_schedule_handler+0x54) > >> [ 283.789056] | # func -95 xnpod_schedule+0x14 > >> (xnpod_schedule_handler+0x54) > >> [ 283.814463] | # func -98 > xnpod_schedule_handler+0x10 > >> (__ipipe_sync_stage+0x1b4) > >> [ 283.841162] | + func -101 __ipipe_sync_stage+0x10 > >> (ipipe_suspend_domain+0xa4) > >> [ 283.867086] | + func -104 ipipe_suspend_domain+0x10 > >> (__ipipe_walk_pipeline+0x74) > >> [ 283.893783] | +func -108 > __ipipe_walk_pipeline+0x10 > >> (__ipipe_restore_pipeline_head+0xc4) > >> [ 283.922809] | * +func -111 > >> __ipipe_restore_pipeline_head+0x10 (gatekeeper_thread+0x180) > >> [ 283.951058] | * +func -116 > __ipipe_set_irq_pending+0x10 > >> (__ipipe_dispatch_wired+0x7c) > >> [ 283.978792] | * +func -120 > __ipipe_dispatch_wired+0x10 > >> (__ipipe_handle_irq+0xa4) > >> [ 284.005233] | * +func -124 __ipipe_handle_irq+0x10 > >> (ipipe_trigger_irq+0x7c) > >> [ 284.030381] | * +func -128 ipipe_trigger_irq+0x10 > >> (xnpod_schedule+0x34) > >> [ 284.054494] | * +func -130 xnpod_schedule+0x14 > >> (gatekeeper_thread+0x164) > >> [ 284.078868] | * +func -133 disengage_irq_shield+0x10 > >> (gatekeeper_thread+0x160) > >> [ 284.104792] | * +[ 342] display- 0 -142 xnpod_resume_thread+0x70 > >> (gatekeeper_thread+0x15c) > >> [ 284.130509] | * +func -145 xnpod_resume_thread+0x14 > >> (gatekeeper_thread+0x15c) > >> [ 284.156173] | +begin 0x80000000 -147 gatekeeper_thread+0x140 > >> (kthread+0x58) > >> [ 284.178789] | +end 0x80000000 -150 > >> __ipipe_restore_pipeline_head+0xd8 (rpi_pop+0x4cc) > >> [ 284.204454] | * +func -153 > >> __ipipe_restore_pipeline_head+0x10 (rpi_pop+0x4cc) > >> [ 284.230119] | +begin 0x80000000 -157 rpi_pop+0x38 > >> (gatekeeper_thread+0x120) > >> [ 284.252709] +func -159 rpi_pop+0x14 > >> (gatekeeper_thread+0x120) > >> [ 284.275273] +func -162 kthread_should_stop+0x10 > >> (gatekeeper_thread+0xf8) > >> [ 284.300680] +func -165 ipipe_check_context+0x10 > >> (__sched_text_start+0x750) > >> [ 284.326603] +func -168 finish_task_switch+0x10 > >> (__sched_text_start+0x6e8) > >> [ 284.352269] | +end 0x80000001 -170 __sched_text_start+0x6d0 > >> (gatekeeper_thread+0xf4) > >> [ 284.377701] | +begin 0x80000001 -173 __sched_text_start+0x6b8 > >> (gatekeeper_thread+0xf4) > >> [ 284.403133] | +end 0x80000000 -176 __sched_text_start+0x65c > >> (gatekeeper_thread+0xf4) > >> [ 284.428565] | +func -180 ipipe_check_context+0x10 > >> (__atomic_notifier_call_chain+0x68) > >> [ 284.456841] | +func -182 iwmmxt_do+0x10 > >> (notifier_call_chain+0x4c) > >> [ 284.480180] | +func -185 nwfpe_notify+0x10 > >> (notifier_call_chain+0x4c) > >> [ 284.504321] | +func -188 notifier_call_chain+0x10 > >> (__atomic_notifier_call_chain+0x5c) > >> [ 284.532571] | +func -191 ipipe_check_context+0x10 > >> (__atomic_notifier_call_chain+0x34) > >> [ 284.560845] | +func -193 > >> __atomic_notifier_call_chain+0x14 (atomic_notifier_call_chain+0x24) > >> [ 284.590904] | +func -195 > >> atomic_notifier_call_chain+0x14 (__switch_to+0x30) > >> [ 284.616570] | +begin 0x80000000 -199 __sched_text_start+0x634 > >> (xnshadow_harden+0xa8) > >> [ 284.641486] | +end 0x80000001 -201 __sched_text_start+0x4a0 > >> (xnshadow_harden+0xa8) > >> [ 284.666375] | +begin 0x80000001 -204 __sched_text_start+0x484 > >> (xnshadow_harden+0xa8) > >> [ 284.691290] | +end 0x80000001 -206 > __ipipe_dispatch_event+0x1c8 > >> (__sched_text_start+0x44c) > >> [ 284.718248] | +begin 0x80000001 -209 > __ipipe_dispatch_event+0x104 > >> (__sched_text_start+0x44c) > >> [ 284.745206] | +end 0x80000000 -211 > >> __ipipe_restore_pipeline_head+0xd8 (schedule_event+0xbb4) > >> [ 284.772707] | * +func -214 > >> __ipipe_restore_pipeline_head+0x10 (schedule_event+0xbb4) > >> [ 284.800180] | +begin 0x80000000 -216 schedule_event+0x6b0 > >> (__ipipe_dispatch_event+0xdc) > >> [ 284.825872] +func -219 schedule_event+0x14 > >> (__ipipe_dispatch_event+0xdc) > >> [ 284.851278] | +end 0x80000001 -222 > __ipipe_dispatch_event+0xc4 > >> (__sched_text_start+0x44c) > >> [ 284.878004] | +begin 0x80000001 -225 > __ipipe_dispatch_event+0x40 > >> (__sched_text_start+0x44c) > >> [ 284.904727] +func -227 > __ipipe_dispatch_event+0x14 > >> (__sched_text_start+0x44c) > >> [ 284.931427] +func -230 ipipe_check_context+0x10 > >> (__sched_text_start+0x3c0) > >> [ 284.957351] | +end 0x80000000 -232 __ipipe_unstall_root+0x64 > >> (__sched_text_start+0x3b0) > >> [ 284.983533] | #begin 0x80000000 -235 __ipipe_unstall_root+0x34 > >> (__sched_text_start+0x3b0) > >> [ 285.009741] #func -237 __ipipe_unstall_root+0x10 > >> (__sched_text_start+0x3b0) > >> [ 285.035922] #func -243 pick_next_task_rt+0x10 > >> (__sched_text_start+0x250) > >> [ 285.061329] #func -247 check_spread+0x10 > >> (put_prev_task_fair+0x3c) > >> [ 285.085185] #func -249 put_prev_task_fair+0x10 > >> (__sched_text_start+0x214) > >> [ 285.110850] #func -254 calc_delta_mine+0x14 > >> (update_curr+0xcc) > >> [ 285.133672] #func -257 update_curr+0x14 > >> (dequeue_task_fair+0x2c) > >> [ 285.157011] #func -260 dequeue_task_fair+0x10 > >> (dequeue_task+0x124) > >> [ 285.180867] #func -265 dequeue_task+0x14 > >> (deactivate_task+0x2c) > >> [ 285.203948] #func -268 deactivate_task+0x10 > >> (__sched_text_start+0x1f8) > >> [ 285.228837] | #end 0x80000001 -271 __sched_text_start+0x18c > >> (xnshadow_harden+0xa8) > >> [ 285.253753] | #begin 0x80000001 -273 __sched_text_start+0x174 > >> (xnshadow_harden+0xa8) > >> [ 285.278669] #func -276 ipipe_check_context+0x10 > >> (__sched_text_start+0x144) > >> [ 285.304592] #func -279 sched_clock+0x10 > >> (sched_clock_cpu+0x30) > >> [ 285.327415] #func -281 sched_clock_cpu+0x10 > >> (__sched_text_start+0x134) > >> [ 285.352304] | #end 0x80000001 -283 __sched_text_start+0x128 > >> (xnshadow_harden+0xa8) > >> [ 285.377220] | +begin 0x80000001 -286 __sched_text_start+0x108 > >> (xnshadow_harden+0xa8) > >> [ 285.402135] +func -288 ipipe_check_context+0x10 > >> (__sched_text_start+0x94) > >> [ 285.427801] +func -290 preempt_schedule+0x10 > >> (__sched_text_start+0x78) > >> [ 285.452691] +func -293 ipipe_check_context+0x10 > >> (__sched_text_start+0x60) > >> [ 285.478355] +func -295 ipipe_check_context+0x10 > >> (__sched_text_start+0x24) > >> [ 285.504020] +func -297 __sched_text_start+0x14 > >> (xnshadow_harden+0xa8) > >> [ 285.528653] +func -300 preempt_schedule+0x10 > >> (__wake_up_sync+0xdc) > >> [ 285.552509] +func -302 ipipe_check_context+0x10 > >> (__wake_up_sync+0xc4) > >> [ 285.577140] | +end 0x80000000 -304 __ipipe_unstall_root+0x64 > >> (__ipipe_restore_root+0x64) > >> [ 285.603580] | #begin 0x80000000 -306 __ipipe_unstall_root+0x34 > >> (__ipipe_restore_root+0x64) > >> [ 285.630021] #func -308 __ipipe_unstall_root+0x10 > >> (__ipipe_restore_root+0x64) > >> [ 285.656461] #func -311 __ipipe_restore_root+0x10 > >> (__wake_up_sync+0xbc) > >> [ 285.681351] #func -313 preempt_schedule+0x10 > >> (try_to_wake_up+0x138) > >> [ 285.705466] #func -315 ipipe_check_context+0x10 > >> (try_to_wake_up+0x120) > >> [ 285.730355] | #end 0x80000001 -318 __ipipe_restore_root+0x58 > >> (try_to_wake_up+0x118) > >> [ 285.755503] | #begin 0x80000001 -320 __ipipe_restore_root+0x38 > >> (try_to_wake_up+0x118) > >> [ 285.780689] invalid use of FPU in Xenomai context at 0x93e0 > >> [ 285.797290] Xenomai: Switching display-340 to secondary mode after > >> exception #5 from user-space at 0x93e0 (pid 342) > >> [ 285.829719] Xenomai: registered exported object dispsem-342 > (semaphores) > >> > >> Any idea about ? > > > > Yes, it is the same problem as was posted a few days ago: the FPU > > support for PXA is not implemented. So, you should apply the patch that > > was posted a few days ago. The backtrace is due to the fact that we use > > print_symbol, which is verboten in real-time context, this needs to be > > fixed. > > > > BUT, and that is a capital "but", be aware that when latency or any > > other user-space real-time application which will use FPU while in > primary mode will switch to secondary mode, which will induce big > latencies. > > > So, if you do not want the high latencies, you are probably better off > > compiling real-time applications with -msoft-float. > > > > > > > -- > Gilles. >
_______________________________________________ Xenomai-core mailing list Xenomai-core@gna.org https://mail.gna.org/listinfo/xenomai-core