On Fri, Oct 12, 2007 at 03:41:19PM +0200, Philippe Gerum wrote: > It looks like we are still using the TSC emulation over the 8254; I > don't ever recall if it's supposed to work actually. Now that the > remaining known issues have been fixed by Jan's latest patch, could you > switch your CPU config to CORE2, instead of 486? Maybe we'll get lucky.
You won't get away so easy. CPU switched back to CORE2, same behaviour. New trace: [EMAIL PROTECTED]:~# cat /proc/ipipe/trace/frozen I-pipe frozen back-tracing service on 2.6.22.9-xeno/ipipe-1.10-07 ------------------------------------------------------------ CPU: 0, Freeze: 224810852352 cycles, Trace Points: 100 (+100) Calibrated minimum trace-point overhead: 0.090 us +----- Hard IRQs ('|': locked) |+---- <unused> ||+--- <unused> |||+-- Xenomai ||||+- Linux ('*': domain stalled, '+': current, '#': current+stalled) ||||| +---------- Delay flag ('+': > 1 us, '!': > 10 us) ||||| | +- NMI noise ('N') ||||| | | Type User Val. Time Delay Function (Parent) : +func -32 0.090 ipipe_check_context+0xc (kmem_cache_alloc+0x27) : #func -32 0.070 __ipipe_restore_root+0x8 (kmem_cache_alloc+0x68) : #func -31 0.085 __ipipe_unstall_root+0x8 (__ipipe_restore_root+0x27) :| #begin 0x80000000 -31 0.085 __ipipe_unstall_root+0x4d (__ipipe_restore_root+0x27) :| +end 0x80000000 -31 0.170 __ipipe_unstall_root+0x3f (__ipipe_restore_root+0x27) : +func -31 0.090 ipipe_check_context+0xc (cache_alloc_refill+0x48e) : #func -31 0.100 ipipe_check_context+0xc (cache_alloc_refill+0x4a0) : #func -31 0.095 ipipe_check_context+0xc (cache_alloc_refill+0x4c9) : #func -31 0.120 ipipe_check_context+0xc (cache_alloc_refill+0x6b) : #func -31 0.140 ipipe_check_context+0xc (cache_alloc_refill+0x162) : #func -31 0.080 __ipipe_restore_root+0x8 (__kmalloc+0x8a) : #func -31 0.085 __ipipe_unstall_root+0x8 (__ipipe_restore_root+0x27) :| #begin 0x80000000 -30 0.085 __ipipe_unstall_root+0x4d (__ipipe_restore_root+0x27) :| +end 0x80000000 -30 0.220 __ipipe_unstall_root+0x3f (__ipipe_restore_root+0x27) : +func -30 0.390 xnheap_init+0x14 (xnpod_init+0x24b) : +func -30+ 7.836 init_extent+0xe (xnheap_init+0x118) : +func -22 0.320 xnthread_init+0xe (xnpod_init+0x2b5) : +func -22 0.145 __xntimer_init+0xe (xnthread_init+0x58) : +func -21 0.090 snprintf+0xb (__xntimer_init+0x96) : +func -21 0.120 vsnprintf+0xe (snprintf+0x22) : +func -21 0.220 number+0xe (vsnprintf+0x2f9) :| +begin 0x80000000 -21 0.115 __xntimer_init+0x14b (xnthread_init+0x58) :| *+func -21 0.130 __ipipe_restore_pipeline_head+0x11 (__xntimer_init+0x119) :| +end 0x80000000 -21 0.175 __ipipe_restore_pipeline_head+0x9e (__xntimer_init+0x119) : +func -21 0.110 __xntimer_init+0xe (xnthread_init+0x9f) : +func -20 0.075 snprintf+0xb (__xntimer_init+0x96) : +func -20 0.140 vsnprintf+0xe (snprintf+0x22) : +func -20 0.240 number+0xe (vsnprintf+0x2f9) :| +begin 0x80000000 -20 0.125 __xntimer_init+0x14b (xnthread_init+0x9f) :| *+func -20 0.085 __ipipe_restore_pipeline_head+0x11 (__xntimer_init+0x119) :| +end 0x80000000 -20 0.475 __ipipe_restore_pipeline_head+0x9e (__xntimer_init+0x119) : +func -19 0.205 xnregistry_init+0xb (xnpod_init+0x360) : +func -19 0.095 rthal_apc_alloc+0x14 (xnregistry_init+0x1c) :| +begin 0x80000000 -19 0.175 rthal_apc_alloc+0xbc (xnregistry_init+0x1c) :| *+func -19 0.120 __ipipe_restore_pipeline_head+0x11 (rthal_apc_alloc+0xaf) :| +end 0x80000000 -19 0.125 __ipipe_restore_pipeline_head+0x9e (rthal_apc_alloc+0xaf) : +func -19 0.205 create_proc_entry+0xd (xnregistry_init+0x3e) : +func -18 0.215 proc_create+0x14 (create_proc_entry+0x43) : +func -18 0.095 __kmalloc+0xe (proc_create+0x95) : +func -18 0.090 ipipe_check_context+0xc (__kmalloc+0xb2) : +func -18 0.080 ipipe_check_context+0xc (__kmalloc+0x4e) : #func -18 0.080 __ipipe_restore_root+0x8 (__kmalloc+0x8a) : #func -18 0.095 __ipipe_unstall_root+0x8 (__ipipe_restore_root+0x27) :| #begin 0x80000000 -18 0.090 __ipipe_unstall_root+0x4d (__ipipe_restore_root+0x27) :| +end 0x80000000 -18 0.155 __ipipe_unstall_root+0x3f (__ipipe_restore_root+0x27) : +func -17 0.215 proc_register+0xe (create_proc_entry+0x61) : +func -17 0.205 idr_pre_get+0xa (proc_register+0x21) : +func -17 0.165 ipipe_check_context+0xc (proc_register+0x2f) : +func -17 0.170 idr_get_new+0x9 (proc_register+0x3e) : +func -17 0.285 idr_get_new_above_int+0xe (idr_get_new+0x12) : +func -16 0.360 find_next_bit+0xe (idr_get_new_above_int+0xcd) : +func -16 0.185 find_next_bit+0xe (idr_get_new_above_int+0xcd) : +func -16 0.100 ipipe_check_context+0xc (proc_register+0x4a) : +func -16 0.130 ipipe_check_context+0xc (proc_register+0x7b) : +func -16! 10.241 ipipe_check_context+0xc (proc_register+0x91) : +func -5 0.205 kmem_cache_alloc+0x14 (xnregistry_init+0x13a) : +func -5 0.080 ipipe_check_context+0xc (kmem_cache_alloc+0x8a) : +func -5 0.090 ipipe_check_context+0xc (kmem_cache_alloc+0x27) : #func -5 0.090 __ipipe_restore_root+0x8 (kmem_cache_alloc+0x68) : #func -5 0.095 __ipipe_unstall_root+0x8 (__ipipe_restore_root+0x27) :| #begin 0x80000000 -5 0.095 __ipipe_unstall_root+0x4d (__ipipe_restore_root+0x27) :| +end 0x80000000 -5 0.776 __ipipe_unstall_root+0x3f (__ipipe_restore_root+0x27) : +func -4 0.240 xnsynch_init+0x8 (xnregistry_init+0x169) : +func -4 0.105 xnshadow_grab_events+0x8 (xnpod_init+0x36c) : +func -4 0.140 ipipe_catch_event+0x14 (xnshadow_grab_events+0x1c) : +func -4 0.085 ipipe_critical_enter+0x9 (ipipe_catch_event+0x4d) :| +begin 0x80000001 -3 0.135 ipipe_critical_enter+0x1b (ipipe_catch_event+0x4d) :| +func -3 0.080 ipipe_critical_exit+0x9 (ipipe_catch_event+0xc8) :| +end 0x80000001 -3 0.110 ipipe_critical_exit+0x1a (ipipe_catch_event+0xc8) : +func -3 0.105 ipipe_catch_event+0x14 (xnshadow_grab_events+0x30) : +func -3 0.085 ipipe_critical_enter+0x9 (ipipe_catch_event+0x4d) :| +begin 0x80000001 -3 0.125 ipipe_critical_enter+0x1b (ipipe_catch_event+0x4d) :| +func -3 0.070 ipipe_critical_exit+0x9 (ipipe_catch_event+0xc8) :| +end 0x80000001 -3 0.125 ipipe_critical_exit+0x1a (ipipe_catch_event+0xc8) : +func -3 0.090 ipipe_catch_event+0x14 (xnshadow_grab_events+0x44) : +func -3 0.085 ipipe_critical_enter+0x9 (ipipe_catch_event+0x4d) :| +begin 0x80000001 -2 0.110 ipipe_critical_enter+0x1b (ipipe_catch_event+0x4d) :| +func -2 0.070 ipipe_critical_exit+0x9 (ipipe_catch_event+0xc8) :| +end 0x80000001 -2 0.105 ipipe_critical_exit+0x1a (ipipe_catch_event+0xc8) : +func -2 0.085 ipipe_catch_event+0x14 (xnshadow_grab_events+0x58) : +func -2 0.085 ipipe_critical_enter+0x9 (ipipe_catch_event+0x4d) :| +begin 0x80000001 -2 0.110 ipipe_critical_enter+0x1b (ipipe_catch_event+0x4d) :| +func -2 0.075 ipipe_critical_exit+0x9 (ipipe_catch_event+0xc8) :| +end 0x80000001 -2 0.090 ipipe_critical_exit+0x1a (ipipe_catch_event+0xc8) : +func -2 0.080 ipipe_catch_event+0x14 (xnshadow_grab_events+0x6c) : +func -2 0.085 ipipe_critical_enter+0x9 (ipipe_catch_event+0x4d) :| +begin 0x80000001 -2 0.105 ipipe_critical_enter+0x1b (ipipe_catch_event+0x4d) :| +func -1 0.075 ipipe_critical_exit+0x9 (ipipe_catch_event+0xc8) :| +end 0x80000001 -1 0.200 ipipe_critical_exit+0x1a (ipipe_catch_event+0xc8) : +func -1 0.180 xnpod_enable_timesource+0xd (xnpod_init+0x371) :| +begin 0x80000000 -1 0.255 xnpod_enable_timesource+0x15b (xnpod_init+0x371) :| *+func -1 0.110 xnintr_init+0x9 (xnpod_enable_timesource+0x69) :| *+func -1 0.125 __ipipe_restore_pipeline_head+0x11 (xnpod_enable_timesource+0x169) :| +end 0x80000000 0 0.095 __ipipe_restore_pipeline_head+0x9e (xnpod_enable_timesource+0x169) : +func 0 0.085 xnarch_get_host_time+0xc (xnpod_enable_timesource+0x97) : +func 0 0.115 do_gettimeofday+0xe (xnarch_get_host_time+0x14) : +func 0 0.220 read_tsc+0x8 (do_gettimeofday+0x33) : +func 0 0.195 xnarch_get_cpu_time+0x8 (xnpod_enable_timesource+0xa0) : +func 0 0.260 xnarch_tsc_to_ns+0x12 (xnarch_get_cpu_time+0xf) < +func 0 0.135 rthal_timer_request+0x14 (xnpod_enable_timesource+0xcb) +func 0 0.090 ipipe_request_tickdev+0x14 (rthal_timer_request+0x27) +func 0 0.085 ipipe_critical_enter+0x9 (ipipe_request_tickdev+0x28) | +begin 0x80000001 0 0.220 ipipe_critical_enter+0x1b (ipipe_request_tickdev+0x28) | +func 0 0.105 __ipipe_check_tickdev+0x8 (ipipe_request_tickdev+0xc4) | +func 0 0.070 ipipe_critical_exit+0x9 (ipipe_request_tickdev+0x3c) | +end 0x80000001 0 0.190 ipipe_critical_exit+0x1a (ipipe_request_tickdev+0x3c) | +begin 0x80000001 0 11.123 rthal_timer_request+0x12b (xnpod_enable_timesource+0xcb) | +func 12 0.085 __const_udelay+0x8 (rthal_timer_request+0xbe) | +func 12 0.090 __delay+0x8 (__const_udelay+0x1c) | +func 12 16.920 delay_tsc+0x9 (__delay+0xe) | +end 0x80000001 29 0.135 rthal_timer_request+0x13a (xnpod_enable_timesource+0xcb) +func 29 0.105 rthal_irq_request+0xc (rthal_timer_request+0xeb) +func 29 0.205 ipipe_virtualize_irq+0x14 (rthal_irq_request+0x42) +func 29 0.095 __ipipe_spin_lock_irqsave+0x9 (ipipe_virtualize_irq+0x76) | +begin 0x80000001 29 0.170 __ipipe_spin_lock_irqsave+0x4b (ipipe_virtualize_irq+0x76) | #func 29 0.120 __ipipe_enable_irqdesc+0x8 (ipipe_virtualize_irq+0x141) | #func 29 0.095 __ipipe_spin_unlock_irqrestore+0x9 (ipipe_virtualize_irq+0xac) | +end 0x80000001 30 0.120 __ipipe_spin_unlock_irqrestore+0x36 (ipipe_virtualize_irq+0xac) | +begin 0x80000000 30 0.205 xnpod_enable_timesource+0x18f (xnpod_init+0x371) | *+func 30 0.175 xntimer_start_aperiodic+0xe (xnpod_enable_timesource+0x1b9) | *+func 30 0.320 xnarch_ns_to_tsc+0x14 (xntimer_start_aperiodic+0x12d) | *+func 30 0.190 xntimer_next_local_shot+0x12 (xntimer_start_aperiodic+0x10d) | *+func 31 0.135 ipipe_trigger_irq+0xd (xntimer_next_local_shot+0x82) | *+func 31 0.115 __ipipe_handle_irq+0x14 (ipipe_trigger_irq+0x14c) | *+func 31 0.130 __ipipe_dispatch_wired+0x16 (__ipipe_handle_irq+0x4f) | *+func 31 0.160 __ipipe_set_irq_pending+0x16 (__ipipe_dispatch_wired+0xd9) | *+func 31 0.120 __ipipe_restore_pipeline_head+0x11 (xnpod_enable_timesource+0x179) | +func 31 0.130 __ipipe_walk_pipeline+0xa (__ipipe_restore_pipeline_head+0xdc) | + func 31 0.130 ipipe_suspend_domain+0xe (__ipipe_walk_pipeline+0x78) | + func 31 0.285 __ipipe_sync_stage+0xe (ipipe_suspend_domain+0x84) | # func 32 0.140 xnintr_clock_handler+0x16 (__ipipe_sync_stage+0x105) | # func 32 0.185 xntimer_tick_aperiodic+0xe (xnintr_clock_handler+0x34) | # func 32 0.205 xntimer_next_local_shot+0x12 (xntimer_tick_aperiodic+0x15c) | # func 32 0.260 rthal_irq_host_pend+0x8 (xnintr_clock_handler+0xaa) | # func 33 0.145 __ipipe_schedule_irq+0xe (rthal_irq_host_pend+0x16) | # func 33 0.240 __ipipe_set_irq_pending+0x16 (__ipipe_schedule_irq+0x68) | +func 33 0.125 __ipipe_sync_stage+0xe (ipipe_suspend_domain+0x84) | #end 0x80000000 33 0.125 __ipipe_sync_stage+0x192 (ipipe_suspend_domain+0x84) #func 33 0.090 do_IRQ+0xe (__ipipe_sync_stage+0x1dd) #func 33 0.095 irq_enter+0x8 (do_IRQ+0x2b) #func 33 0.075 handle_level_irq+0x16 (do_IRQ+0x38) #func 33 0.085 ipipe_check_context+0xc (handle_level_irq+0x24) #func 34 0.080 ipipe_check_context+0xc (handle_level_irq+0x5c) #func 34 0.090 handle_IRQ_event+0xe (handle_level_irq+0x65) #func 34 0.100 timer_interrupt+0x8 (handle_IRQ_event+0x31) #func 34 0.070 tick_handle_periodic+0xe (timer_interrupt+0x13) #func 34 0.080 tick_periodic+0x8 (tick_handle_periodic+0x17) #func 34 0.090 ipipe_check_context+0xc (tick_periodic+0x3f) #func 34 0.110 do_timer+0x14 (tick_periodic+0x67) #func 34 0.110 update_wall_time+0xe (do_timer+0x29) #func 34 0.175 read_tsc+0x8 (update_wall_time+0x24) #func 34 0.090 clocksource_get_next+0xa (update_wall_time+0x212) #func 35 0.095 ipipe_check_context+0xc (clocksource_get_next+0x14) #func 35 0.085 ipipe_check_context+0xc (clocksource_get_next+0x30) #func 35 0.090 __ipipe_restore_root+0x8 (clocksource_get_next+0x4a) #func 35 0.120 ipipe_check_context+0xc (clocksource_get_next+0x54) #func 35 0.100 ipipe_check_context+0xc (tick_periodic+0x78) #func 35 0.095 update_process_times+0x12 (tick_periodic+0x29) #func 35 0.105 account_system_time+0x16 (update_process_times+0x71) #func 35 0.090 run_local_timers+0x8 (update_process_times+0x2f) #func 35 0.080 raise_softirq+0x16 (run_local_timers+0x12) #func 35 0.085 ipipe_check_context+0xc (raise_softirq+0x22) #func 35 0.100 __ipipe_restore_root+0x8 (raise_softirq+0x6c) #func 36 0.110 softlockup_tick+0x14 (run_local_timers+0x17) #func 36 0.075 rcu_pending+0x8 (update_process_times+0x36) #func 36 0.110 __rcu_pending+0x8 (rcu_pending+0x17) #func 36 0.085 rcu_check_callbacks+0x8 (update_process_times+0x43) #func 36 0.120 idle_cpu+0x8 (rcu_check_callbacks+0x45) #func 36 0.080 __tasklet_schedule+0x16 (rcu_check_callbacks+0x3a) #func 36 0.080 ipipe_check_context+0xc (__tasklet_schedule+0x22) #func 36 0.115 __ipipe_restore_root+0x8 (__tasklet_schedule+0x77) #func 36 0.090 scheduler_tick+0x16 (update_process_times+0x48) #func 36 0.110 sched_clock+0x12 (scheduler_tick+0x1b) #func 37 0.095 idle_cpu+0x8 (scheduler_tick+0x2c) #func 37 0.075 task_running_tick+0x14 (scheduler_tick+0x5e) #func 37 0.090 ipipe_check_context+0xc (task_running_tick+0x3f) #func 37 0.090 ipipe_check_context+0xc (task_running_tick+0x95) #func 37 0.115 run_posix_cpu_timers+0xe (update_process_times+0x4f) #func 37 0.090 profile_tick+0x12 (tick_periodic+0x33) #func 37 0.120 profile_pc+0x8 (profile_tick+0x47) #func 37 0.125 ipipe_check_context+0xc (handle_IRQ_event+0x59) #func 37 0.120 note_interrupt+0xe (handle_level_irq+0xbb) #func 37 0.125 ipipe_check_context+0xc (handle_level_irq+0x79) #func 38 0.100 enable_8259A_irq+0x16 (handle_level_irq+0x97) #func 38 0.100 __ipipe_spin_lock_irqsave+0x9 (enable_8259A_irq+0x2b) | #begin 0x80000001 38 0.105 __ipipe_spin_lock_irqsave+0x4b (enable_8259A_irq+0x2b) | #func 38 0.105 __ipipe_spin_unlock_irqrestore+0x9 (enable_8259A_irq+0x6c) | #end 0x80000001 38 0.140 __ipipe_spin_unlock_irqrestore+0x36 (enable_8259A_irq+0x6c) #func 38 0.110 ipipe_check_context+0xc (handle_level_irq+0xa1) #func 38 0.115 irq_exit+0x8 (do_IRQ+0x3d) #func 38 0.095 do_softirq+0x12 (irq_exit+0x39) #func 38 0.120 ipipe_check_context+0xc (do_softirq+0x3a) #func 39 0.110 __do_softirq+0xb (do_softirq+0x6d) #func 39 0.090 __ipipe_unstall_root+0x8 (__do_softirq+0x33) | #begin 0x80000000 39 0.090 __ipipe_unstall_root+0x4d (__do_softirq+0x33) | +end 0x80000000 39 0.135 __ipipe_unstall_root+0x3f (__do_softirq+0x33) +func 39 0.110 run_timer_softirq+0xe (__do_softirq+0x52) +func 39 0.120 hrtimer_run_queues+0xe (run_timer_softirq+0x19) +func 39 0.095 ipipe_check_context+0xc (hrtimer_run_queues+0xc5) #func 39 0.000 ipipe_check_context+0xc (hrtimer_run_queues+0xd7) -- Stelian Pop <[EMAIL PROTECTED]> _______________________________________________ Xenomai-core mailing list Xenomai-core@gna.org https://mail.gna.org/listinfo/xenomai-core