Home | History | Annotate | Line # | Download | only in Examples
      1  1.1  christos The following are demonstrations of the vopstat script.
      2  1.1  christos 
      3  1.1  christos 
      4  1.1  christos By default, vopstat traces activity at the vnode interface and prints
      5  1.1  christos summaries every five seconds. It will either trace all filesystems or
      6  1.1  christos just the mountpoint specified.
      7  1.1  christos 
      8  1.1  christos Here it was run on /extra1, while a tar command archived /extra1,
      9  1.1  christos 
     10  1.1  christos    # ./vopstat /extra1
     11  1.1  christos    VOP Physical IO                                                   Count
     12  1.1  christos    fop_getpage                                                          66
     13  1.1  christos    
     14  1.1  christos    VOP Count                                                         Count
     15  1.1  christos    fop_readdir                                                           1
     16  1.1  christos    fop_read                                                              2
     17  1.1  christos    fop_cmp                                                               2
     18  1.1  christos    fop_seek                                                              3
     19  1.1  christos    fop_close                                                             7
     20  1.1  christos    fop_open                                                             10
     21  1.1  christos    fop_getattr                                                          12
     22  1.1  christos    fop_access                                                           13
     23  1.1  christos    fop_lookup                                                           16
     24  1.1  christos    fop_rwunlock                                                       3802
     25  1.1  christos    fop_rwlock                                                         3802
     26  1.1  christos    fop_putpage                                                        4701
     27  1.1  christos    fop_getpage                                                        6648
     28  1.1  christos    fop_dispose                                                       19109
     29  1.1  christos    
     30  1.1  christos    VOP Wall Time                                                  mSeconds
     31  1.1  christos    fop_readdir                                                           0
     32  1.1  christos    fop_cmp                                                               0
     33  1.1  christos    fop_read                                                              0
     34  1.1  christos    fop_seek                                                              0
     35  1.1  christos    fop_close                                                             0
     36  1.1  christos    fop_open                                                              0
     37  1.1  christos    fop_access                                                            0
     38  1.1  christos    fop_getattr                                                           0
     39  1.1  christos    fop_lookup                                                            0
     40  1.1  christos    fop_rwunlock                                                         64
     41  1.1  christos    fop_putpage                                                          86
     42  1.1  christos    fop_rwlock                                                           93
     43  1.1  christos    fop_dispose                                                         346
     44  1.1  christos    fop_getpage                                                         402
     45  1.1  christos    ^C
     46  1.1  christos 
     47  1.1  christos There were 66 calls for physical I/O operations, fop_getpage, as files
     48  1.1  christos were read from disk. The VOP Count show that there were many calls to
     49  1.1  christos fop_putpage and fop_getpage, as tar works its way through files; and 
     50  1.1  christos many more to fop_dispose. The total elaspsed time for these calls
     51  1.1  christos are listed at the bottom, in milleseconds.
     52  1.1  christos 
     53  1.1  christos This rate of events will put some pressure on the DTrace buffer,
     54  1.1  christos you may see dynamic variable drops.
     55  1.1  christos 
     56  1.1  christos 
     57  1.1  christos 
     58  1.1  christos vopstat also has a -t option to trace activity. Here it is run on /extra1 
     59  1.1  christos while an "ls" command listed files from that directory,
     60  1.1  christos 
     61  1.1  christos # ./vopstat -t /extra1
     62  1.1  christos    Event           Device                                                    Path RW     Size   Offset
     63  1.1  christos -> fop_getattr     -                                                      /extra1  -        0        0
     64  1.1  christos <- fop_getattr     -                                                      /extra1  -        0        0
     65  1.1  christos -> fop_access      -                                                      /extra1  -        0        0
     66  1.1  christos <- fop_access      -                                                      /extra1  -        0        0
     67  1.1  christos -> fop_open        -                                                      /extra1  -        0        0
     68  1.1  christos <- fop_open        -                                                      /extra1  -        0        0
     69  1.1  christos -> fop_getattr     -                                                      /extra1  -        0        0
     70  1.1  christos <- fop_getattr     -                                                      /extra1  -        0        0
     71  1.1  christos -> fop_rwlock      -                                                      /extra1  -        0        0
     72  1.1  christos <- fop_rwlock      -                                                      /extra1  -        0        0
     73  1.1  christos -> fop_readdir     -                                                      /extra1  -        0        0
     74  1.1  christos -> fop_getpage     -                                                      /extra1  -        0        0
     75  1.1  christos <- fop_getpage     -                                                      /extra1  -        0        0
     76  1.1  christos -> fop_rwunlock    -                                                      /extra1  -        0        0
     77  1.1  christos <- fop_rwunlock    -                                                      /extra1  -        0        0
     78  1.1  christos -> fop_rwlock      -                                                      /extra1  -        0        0
     79  1.1  christos <- fop_rwlock      -                                                      /extra1  -        0        0
     80  1.1  christos -> fop_readdir     -                                                      /extra1  -        0        0
     81  1.1  christos <- fop_readdir     -                                                      /extra1  -        0        0
     82  1.1  christos -> fop_rwunlock    -                                                      /extra1  -        0        0
     83  1.1  christos <- fop_rwunlock    -                                                      /extra1  -        0        0
     84  1.1  christos -> fop_close       -                                                      /extra1  -        0      512
     85  1.1  christos <- fop_close       -                                                      /extra1  -        0      512
     86  1.1  christos ^C
     87  1.1  christos 
     88  1.1  christos Each call can be seen as it happened, including the entry and return of
     89  1.1  christos these calls.
     90