On Sun Apr 15 12, Alexander Leidinger wrote:
> On Sun, 15 Apr 2012 11:23:08 +0000 Alexander Best <arun...@freebsd.org>
> wrote:
> 
> > On Sun Apr 15 12, Alexander Best wrote:
> > > On Sun Apr 15 12, Alexander Best wrote:
> > > > On Sun Apr 15 12, Alexander Leidinger wrote:
> > > > > On Sat, 14 Apr 2012 22:47:46 +0200 Alexander Leidinger
> > > > > <alexan...@leidinger.net> wrote:
> > > > > 
> > > > > > On Sat, 14 Apr 2012 20:32:56 +0000 Alexander Best
> > > > > > <arun...@freebsd.org> wrote:
> > > > > > 
> > > > > > > On Sat Apr 14 12, Alexander Leidinger wrote:
> > > > > > > > On Fri, 13 Apr 2012 20:32:22 +0000 Alexander Best
> > > > > > > > <arun...@freebsd.org> wrote:
> > > > > > > > 
> > > > > > > > > i'm having problems with the patch. beforehand, playing
> > > > > > > > > music from www.mixcloud.com worked. now the flash based
> > > > > > > > > player is initialising forever.
> > > > > > > > 
> > > > > > > > > just drop me a note with exact instructions and i can
> > > > > > > > > give you more verbose information or debugging stats.
> > > > > > > > > again: this issue might be futex related and not a
> > > > > > > > > result of your patch.
> > > > > > > > 
> > > > > > > > Are you running -current? If yes I Looks try to get some
> > > > > > > > time to commit the linuxulator-dtrace probes, now that
> > > > > > > > SDT probes can be loaded dynamically there is no risk to
> > > > > > > > panic the system when the linuxulator is loaded after
> > > > > > > > boot and dtrace is used. This could help looking at
> > > > > > > > problems with locks.
> > > > > > > 
> > > > > > > yes i'm running a very recent HEAD on amd64.
> > > > > > 
> > > > > > I'm in the process of merging all the new stuff from HEAD
> > > > > > into my SVN branch. With a slow system and a slow line this
> > > > > > may take a while. I hope to at least update my branch in SVN
> > > > > > (users/netchild/linuxulator-dtrace) today. I don't know if I
> > > > > > get the time to merge it to HEAD today.
> > > > > 
> > > > > Hmmm... do I remember correctly that I already gave a dtrace
> > > > > patch to you to check for futex problems? I think I changed the
> > > > > locking-probes since I gave the patch to you, but I'm not sure.
> > > > > Anyway, the patch against a recent -current is available from
> > > > > http://www.leidinger.net/FreeBSD/current-patches now.
> > > > 
> > > > yeah you're right. i've applied the patch and compiled and
> > > > installed the kernel. i'm not very experienced with dtrace, so
> > > > i'll need some instructions on how to proceed.
> > > 
> > > buildkernel suceeded, but i got this error during buildworld:
> > 
> > it seems your patch breaks building world with MODULES_WITH_WORLD
> > defined. when modules get buildduring buildkernel, i don't see that
> > error.
> 
> opt_kdtrace.h is generated by config. I've never used
> MODULES_WITH_WORLD, so I have no idea how this case is handled.

ahh ok. i've managed to get some stats via stats_timing.d. this is a
snapshot during which a newly loaded tab in chromium was unresponsive for
about 5 seconds. without the linux flash plugin running i never experienced
such lock ups.

i've attached the d-script stats.

cheers.
alex

> 
> Bye,
> Alexander.
> 
> -- 
> http://www.Leidinger.net    Alexander @ Leidinger.net: PGP ID = B0063FE7
> http://www.FreeBSD.org       netchild @ FreeBSD.org  : PGP ID = 72077137
otaku% sudo ./stats_timing.d
^C
Number of calls per provider/application/kernel function:
  linuxulator32                                       npviewer.bin              
                          linux_schedtail                                       
            1
  linuxulator32                                       npviewer.bin              
                          linux_set_robust_list                                 
            1
  linuxulator32                                       npviewer.bin              
                          proc_init                                             
            1
  linuxulator32                                       npviewer.bin              
                          linux_kernver                                         
            3
  linuxulator32                                       npviewer.bin              
                          linux_get_osname                                      
            4
  linuxulator32                                       npviewer.bin              
                          linux_get_osrelease                                   
            4
  linuxulator32                                       npviewer.bin              
                          em_find                                               
            7
  linuxulator32                                       npviewer.bin              
                          linux_get_prison                                      
           11
  linuxulator32                                       npviewer.bin              
                          futex_atomic_op                                       
          335
  linuxulator32                                       npviewer.bin              
                          linux_emul_convpath                                   
          372
  linuxulator32                                       npviewer.bin              
                          futex_sleep                                           
          411
  linuxulator32                                       npviewer.bin              
                          futex_wait                                            
          411
  linuxulator32                                       npviewer.bin              
                          futex_wake                                            
          492
  linuxulator32                                       npviewer.bin              
                          futex_put                                             
         1289
  linuxulator32                                       npviewer.bin              
                          linux_sys_futex                                       
         1372
  linuxulator32                                       npviewer.bin              
                          futex_get                                             
         1707
  linuxulator32                                       npviewer.bin              
                          futex_get0                                            
         1707
  linuxulator32                                       npviewer.bin              
                          linux_clock_gettime                                   
        10694
  linuxulator32                                       npviewer.bin              
                          linux_to_native_clockid                               
        10694
  linuxulator32                                       npviewer.bin              
                          native_to_linux_timespec                              
        10694
CPU-timing statistics per provider/application/kernel function (in ns):
  linuxulator32                                       npviewer.bin              
                          linux_sys_futex                                   
           value  ------------- Distribution ------------- count    
         -131072 |                                         0        
          -65536 |@                                        21       
          -32768 |@@@@@                                    172      
          -16384 |@@@@@@                                   199      
           -8192 |@@@@@@@@@@@                              392      
           -4096 |@@@@                                     136      
           -2048 |@@@@@                                    156      
           -1024 |@@@@@@@@                                 289      
            -512 |                                         0        

  linuxulator32                                       npviewer.bin              
                          linux_clock_gettime                               
           value  ------------- Distribution ------------- count    
          -65536 |                                         0        
          -32768 |                                         1        
          -16384 |                                         5        
           -8192 |                                         66       
           -4096 |@                                        164      
           -2048 |@                                        315      
           -1024 |@@                                       479      
            -512 |@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@     9664     
            -256 |                                         0        

  linuxulator32                                       npviewer.bin              
                          futex_get                                         
           value  ------------- Distribution ------------- count    
         -131072 |                                         0        
          -65536 |                                         5        
          -32768 |@                                        37       
          -16384 |                                         14       
           -8192 |@                                        34       
           -4096 |@@@@                                     164      
           -2048 |@@@@@@@@@@@@@@@@@@@                      822      
           -1024 |@@@@@@@@@@@                              449      
            -512 |@@@@                                     182      
            -256 |                                         0        

  linuxulator32                                       npviewer.bin              
                          futex_wait                                        
           value  ------------- Distribution ------------- count    
          -65536 |                                         0        
          -32768 |@@                                       17       
          -16384 |@@@@@@@@@@@@@@@@@@@@                     201      
           -8192 |@@@@@@@@                                 82       
           -4096 |@@@@@@@@@@                               104      
           -2048 |                                         0        

  linuxulator32                                       npviewer.bin              
                          futex_sleep                                       
           value  ------------- Distribution ------------- count    
          -65536 |                                         0        
          -32768 |@                                        13       
          -16384 |@@@@@@@@@@@@@@@@@@@@                     202      
           -8192 |@@@@@@@                                  72       
           -4096 |@@@@@@@@@@@                              112      
           -2048 |                                         5        
           -1024 |                                         0        

  linuxulator32                                       npviewer.bin              
                          futex_get0                                        
           value  ------------- Distribution ------------- count    
         -131072 |                                         0        
          -65536 |                                         4        
          -32768 |@                                        38       
          -16384 |                                         12       
           -8192 |@                                        24       
           -4096 |@@@                                      119      
           -2048 |@@@@@@@@@@@                              489      
           -1024 |@@@@@@@@@@@@@@@@                         691      
            -512 |@@@@@@@@                                 330      
            -256 |                                         0        

  linuxulator32                                       npviewer.bin              
                          linux_emul_convpath                               
           value  ------------- Distribution ------------- count    
         -131072 |                                         0        
          -65536 |                                         2        
          -32768 |@@                                       14       
          -16384 |@@@@@                                    42       
           -8192 |@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@       314      
           -4096 |                                         0        

  linuxulator32                                       npviewer.bin              
                          futex_put                                         
           value  ------------- Distribution ------------- count    
          -16384 |                                         0        
           -8192 |                                         8        
           -4096 |@@                                       58       
           -2048 |@@@@@@@                                  222      
           -1024 |@@@@@@@@@@@@@@@@@                        535      
            -512 |@@@@@@@@@@@@@@                           466      
            -256 |                                         0        

  linuxulator32                                       npviewer.bin              
                          native_to_linux_timespec                          
           value  ------------- Distribution ------------- count    
          -65536 |                                         0        
          -32768 |                                         1        
          -16384 |                                         0        
           -8192 |                                         9        
           -4096 |                                         26       
           -2048 |                                         9        
           -1024 |                                         3        
            -512 |                                         13       
            -256 |@                                        213      
            -128 |@@                                       498      
             -64 |@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@    9922     
             -32 |                                         0        

  linuxulator32                                       npviewer.bin              
                          linux_to_native_clockid                           
           value  ------------- Distribution ------------- count    
          -16384 |                                         0        
           -8192 |                                         5        
           -4096 |                                         15       
           -2048 |                                         6        
           -1024 |                                         4        
            -512 |                                         20       
            -256 |@                                        309      
            -128 |@@@@                                     1072     
             -64 |@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@      9263     
             -32 |                                         0        

  linuxulator32                                       npviewer.bin              
                          futex_wake                                        
           value  ------------- Distribution ------------- count    
          -16384 |                                         0        
           -8192 |                                         2        
           -4096 |@                                        12       
           -2048 |@@@@@@@@@@@@@@@@@@@@                     252      
           -1024 |@@@@@@@@@                                105      
            -512 |                                         5        
            -256 |                                         1        
            -128 |@@@@@                                    65       
             -64 |@@@@                                     50       
             -32 |                                         0        

  linuxulator32                                       npviewer.bin              
                          futex_atomic_op                                   
           value  ------------- Distribution ------------- count    
           -8192 |                                         0        
           -4096 |                                         2        
           -2048 |                                         0        
           -1024 |                                         4        
            -512 |@@@@@@@@@@@@@@@@@@@@@@@@@@               221      
            -256 |@@@@@@@@                                 63       
            -128 |@@@@@                                    45       
             -64 |                                         0        

  linuxulator32                                       npviewer.bin              
                          linux_get_osname                                  
           value  ------------- Distribution ------------- count    
           -2048 |                                         0        
           -1024 |@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@           3        
            -512 |@@@@@@@@@@                               1        
            -256 |                                         0        

  linuxulator32                                       npviewer.bin              
                          em_find                                           
           value  ------------- Distribution ------------- count    
           -2048 |                                         0        
           -1024 |@@@@@@                                   1        
            -512 |@@@@@@@@@@@                              2        
            -256 |@@@@@@@@@@@@@@@@@                        3        
            -128 |                                         0        
             -64 |@@@@@@                                   1        
             -32 |                                         0        

  linuxulator32                                       npviewer.bin              
                          linux_kernver                                     
           value  ------------- Distribution ------------- count    
           -2048 |                                         0        
           -1024 |@@@@@@@@@@@@@@@@@@@@@@@@@@@              2        
            -512 |@@@@@@@@@@@@@                            1        
            -256 |                                         0        

  linuxulator32                                       npviewer.bin              
                          linux_get_prison                                  
           value  ------------- Distribution ------------- count    
           -1024 |                                         0        
            -512 |@@@@                                     1        
            -256 |@@@@@@@@@@@@@@@@@@                       5        
            -128 |@@@@@@@@@@@@@@@@@@                       5        
             -64 |                                         0        

  linuxulator32                                       npviewer.bin              
                          linux_get_osrelease                               
           value  ------------- Distribution ------------- count    
           -1024 |                                         0        
            -512 |@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ 4        
            -256 |                                         0        

  linuxulator32                                       npviewer.bin              
                          linux_schedtail                                   
           value  ------------- Distribution ------------- count    
           -4096 |                                         0        
           -2048 |@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ 1        
           -1024 |                                         0        

  linuxulator32                                       npviewer.bin              
                          proc_init                                         
           value  ------------- Distribution ------------- count    
           -4096 |                                         0        
           -2048 |@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ 1        
           -1024 |                                         0        

  linuxulator32                                       npviewer.bin              
                          linux_set_robust_list                             
           value  ------------- Distribution ------------- count    
           -2048 |                                         0        
           -1024 |@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ 1        
            -512 |                                         0        

Longest running (CPU-time!) functions per provider (in ns):
  linuxulator32                                       linux_emul_convpath       
                                   -11315
  linuxulator32                                       futex_wait                
                                    -4120
  linuxulator32                                       futex_sleep               
                                    -3655
  linuxulator32                                       proc_init                 
                                    -3015
  linuxulator32                                       linux_schedtail           
                                    -2705
  linuxulator32                                       linux_set_robust_list     
                                    -1550
  linuxulator32                                       linux_sys_futex           
                                    -1030
  linuxulator32                                       linux_get_osname          
                                    -1015
  linuxulator32                                       linux_get_osrelease       
                                     -855
  linuxulator32                                       futex_get                 
                                     -740
  linuxulator32                                       linux_clock_gettime       
                                     -615
  linuxulator32                                       futex_put                 
                                     -575
  linuxulator32                                       linux_kernver             
                                     -530
  linuxulator32                                       futex_get0                
                                     -520
  linuxulator32                                       linux_get_prison          
                                     -180
  linuxulator32                                       futex_atomic_op           
                                     -150
  linuxulator32                                       em_find                   
                                     -125
  linuxulator32                                       futex_wake                
                                     -100
  linuxulator32                                       linux_to_native_clockid   
                                      -95
  linuxulator32                                       native_to_linux_timespec  
                                      -95
Lock CPU-timing statistics:
  futex_mtx                                         
           value  ------------- Distribution ------------- count    
          -16384 |                                         0        
           -8192 |                                         1        
           -4096 |                                         3        
           -2048 |                                         5        
           -1024 |@                                        78       
            -512 |@@@@@                                    444      
            -256 |@@@@@@@@@@@                              1037     
            -128 |@@@@@@@@@@@@@@@@@@                       1771     
             -64 |@@@@@                                    501      
             -32 |                                         0        

  emul_lock                                         
           value  ------------- Distribution ------------- count    
           -1024 |                                         0        
            -512 |@@@@@@@@@@@@@                            1        
            -256 |@@@@@@@@@@@@@                            1        
            -128 |@@@@@@@@@@@@@                            1        
             -64 |                                         0        

  emul_shared_wlock                                 
           value  ------------- Distribution ------------- count    
            -256 |                                         0        
            -128 |@@@@@@@@@@@@@@@@@@@@                     1        
             -64 |@@@@@@@@@@@@@@@@@@@@                     1        
             -32 |                                         0        

Longest running (CPU-time!) locks:
  emul_lock                                                      -250
  emul_shared_wlock                                              -120
  futex_mtx                                                       -95


_______________________________________________
freebsd-emulation@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-emulation
To unsubscribe, send any mail to "freebsd-emulation-unsubscr...@freebsd.org"

Reply via email to