Re: [patch] Real-Time Preemption, -RT-2.6.12-rc6-V0.7.48-00

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



* William Weston <[email protected]> wrote:

>                  _------=> CPU#            
>                 / _-----=> irqs-off        
>                | / _----=> need-resched    
>                || / _---=> hardirq/softirq 
>                ||| / _--=> preempt-depth   
>                |||| /                      
>                |||||     delay             
>    cmd     pid ||||| time  |   caller      
>       \   /    |||||   \   |   /           
[...]
>   wmResh-3189  1....    1us : up_mutex (sock_def_readable)
>   wmResh-3189  1....    2us : __up_mutex (up_mutex)
>   <idle>-0     0Dnh2    2us : _raw_spin_unlock (__schedule)
>   <idle>-0     0Dnh1    2us!: preempt_schedule (__schedule)
>   wmResh-3189  1Dnh.  204us : _raw_spin_lock (__up_mutex)
>   wmResh-3189  1Dnh1  205us : _raw_spin_unlock (__up_mutex)
>   <idle>-0     0Dnh1  205us : _raw_spin_lock (__schedule)
>   wmResh-3189  1....  205us : _read_unlock (unix_stream_sendmsg)

look at the CPU# column, we have trace entries from both CPU#0 and CPU#1 
- and both of them are delayed by 200 usecs! The CPU#0 delay happened in 
the idle thread, between preempt_schedule() in __schedule() and 
_raw_spin_lock in __schedule(). It's a codepath where there's no 
spinning done. The CPU#1 delay happened in the wmResh process, between 
__up_mutex()'s entry and the first _raw_spin_lock() it did. This too is 
a codepath where no spinning is done. (and even if there was spinning, 
the two locks are not the same.)

in other words, since there is no OS-level explanation for the delay, 
this can only be an effect of the hardware/system. (Or it could be a bug 
in the measurement, but the likelyhood of seeing a 200 usec bump in the 
measurement is quite small.)

	Ingo
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [email protected]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

[Index of Archives]     [Kernel Newbies]     [Netfilter]     [Bugtraq]     [Photo]     [Stuff]     [Gimp]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Video 4 Linux]     [Linux for the blind]     [Linux Resources]
  Powered by Linux