On 09/27/2012 08:23 AM, Christoph Permes wrote:

> Hi,
> 
> here is the output of /proc/timer_list when Xenomai initialization fails 
> (X86_PM_TIMER is disabled in kernel config):
> -------------------------------------------------
> Timer List Version: v0.4
> HRTIMER_MAX_CLOCK_BASES: 2
> now at 80944922880 nsecs
> 
> Tick Device: mode:     0
> Broadcast device
> Clock Event Device: hpet

>
> Tick Device: mode:     0

> Per CPU device: 0
> Clock Event Device: lapic
>  mode:           1

> Tick Device: mode:     0

> Per CPU device: 1
> Clock Event Device: lapic
>  mode:           1

mode 1 is shutdown, that is the reason why Xenomai will not start.



> When Xenomai initialization succeeds (same kernel config, X86_PM_TIMER 
> disabled):
> -------------------------------------------------


> Tick Device: mode:     1
> Broadcast device
> Clock Event Device: hpet
> 
> Tick Device: mode:     1
> Per CPU device: 0
> Clock Event Device: lapic
>  mode:           3
> 
> Tick Device: mode:     1
> Per CPU device: 1
> Clock Event Device: lapic
>  mode:           3


mode 3 means that the timer is running (in one-shot mode, but that is
not really important), in that case Xenomai can work.

> And finally with X86_PM_TIMER enabled (Xenomai works always here):
> -------------------------------------------------


> Tick Device: mode:     1

> Broadcast device
> Clock Event Device: hpet
>  mode:           3
> 
> Tick Device: mode:     1
> Per CPU device: 0
> Clock Event Device: lapic
>  mode:           3
> 
> Tick Device: mode:     1
> Per CPU device: 1
> Clock Event Device: lapic
>  mode:           3


Same here.


> I have also turned on APIC debugging with apic=debug to see whats going on:
> 
> Thats the output where everything is fine:
> [    0.026300] CPU0: Intel Celeron(R) Dual-Core CPU       T3100  @ 1.90GHz 
> stepping 0a
> [    0.026466] Using local APIC timer interrupts.
> [    0.026467] calibrating APIC timer ...
> [    0.026995] ... lapic delta = 1249983
> [    0.026995] ..... delta 1249983
> [    0.026995] ..... mult: 53694522
> [    0.026995] ..... calibration result: 199997
> [    0.026995] ..... CPU clock speed is 1899.0974 MHz.
> [    0.026995] ..... host bus clock speed is 199.0997 MHz.
> [    0.026995] ... verify APIC timer
> [    0.128395] ... jiffies delta = 100
> [    0.128454] ... jiffies result ok
> [    0.128602] Booting processor 1 APIC 0x1 ip 0x6000
> 
> And here is the output where Xenomai fails to initialize (note the value of 
> jiffies delta):
> [    0.026300] CPU0: Intel Celeron(R) Dual-Core CPU       T3100  @ 1.90GHz 
> stepping 0a
> [    0.026466] Using local APIC timer interrupts.
> [    0.026467] calibrating APIC timer ...
> [    0.026995] ... lapic delta = 20124747
> [    0.026995] ..... delta 20124747
> [    0.026995] ..... mult: 864482703
> [    0.026995] ..... calibration result: 3219959
> [    0.026995] ..... CPU clock speed is -12360.-057 MHz.


> [    0.026995] ..... host bus clock speed is 3219.0959 MHz.
> [    0.026995] ... verify APIC timer
> [    1.668621] ... jiffies delta = 1610


Well the clock speed is weird too... So, it would be interesting to find
out what happens during the APIC timer verification. Though you may
spend some time figuring out something which was fixed in later
revisions, so, I would advise to do a quick test of Xenomai 2.6.1 to see
if it still has the problem.

-- 
                                                                Gilles.

_______________________________________________
Xenomai mailing list
[email protected]
http://www.xenomai.org/mailman/listinfo/xenomai

Reply via email to