xfs
[Top] [All Lists]

repost TAKE - Implement vnode tracing.

To: slinx-xfs@xxxxxxxxxxxx, linux-xfs@xxxxxxxxxxx
Subject: repost TAKE - Implement vnode tracing.
From: Ted Kline <jtk@xxxxxxx>
Date: Fri, 21 Apr 2000 22:55:22 -0500 (CDT)
Sender: owner-linux-xfs@xxxxxxxxxxx
Bummer, sendmail ate the major portion of my take msg...

        -Ted

Date: Fri, 21 Apr 2000 22:35:12 -0500 (CDT)
To: slinx-xfs@xxxxxxxxxxxxxxxxxxxx, linux-xfs@xxxxxxxxxxx
Subject: TAKE - Implement vnode tracing.
Sender: owner-slinx-xfs@xxxxxxxxxxxxxxxxxxxx
Precedence: bulk

Implement an optional (via config) vnode tracing functionality..

Run your favorite form of make config/oldconfig/xconfig and select
"CONFIG_XFS_VNODE_TRACING" under XFS in the filesystem section.

i.e.:

   
   [1]kdb> vnode 0xc2b58008
   vnode: 0xc2b58008 v_count 2 type VDIR
      v_inode 0xc27b7700 v_bh->bh_first 0xc275c268 pobj 0xc275c250
      ops xfs_vnodeops
      v_trace 0xc3fa0920

 -later-

   [0]kdb> vntrace 0xc2b58008
   vntrace vp 0xc2b58008
   hold @xfs_vfsops.c:1396 v_count 1 => 2  ra = linvfs_read_super+0x1c4
     cpu = 1 pid = 1350 flag = 0x4100000 <VROOT VSHARE > 
   entry to xfs_getattr v_count = 2  ra = linvfs_read_super+0x1ff
     cpu = 1 pid = 1350 flag = 0x4100000 <VROOT VSHARE > 
   entry to xfs_getattr v_count = 2  ra = linvfs_revalidate+0x3a
     cpu = 1 pid = 1350 flag = 0x4100000 <VROOT VSHARE > 
   rele @xfs_super.c:351 v_count 2 => 1  ra = iput+0x38
     cpu = 1 pid = 1354 flag = 0x4100000 <VROOT VSHARE > 
   free @xfs_vfsops.c:1259  ra = fs_dounmount+0x90
     cpu = 1 pid = 1354 flag = 0x4100000 <VROOT VSHARE > 
   entry to xfs_inactive v_count = 0  ra = vn_rele+0x13d
     cpu = 1 pid = 1354 flag = 0x4100002 <VINACT VROOT VSHARE > 

   [0]kdb> 


linux/fs/Config.in
        - Add config tag for Vnode Tracing - CONFIG_XFS_VNODE_TRACING.

linux/fs/xfs/Makefile
linux/fs/xfs/linux/Makefile
        - Close a large hole in the header dependency chain.

linux/fs/xfs/linux/xfs_random.c
        - Correct #ifdef and fill out the ktrace() routines.

linux/fs/xfs/linux/xfs_vnode.c
        - Allocate/free the v_trace buffer, fill out the vn_trace_*()
          routines.

linux/fs/xfs/pseudo-inc/sys/ktrace.h
        - Fill in missing pieces for the ktrace() routines.

linux/fs/xfs/pseudo-inc/sys/vnode.h
        - Correct #ifdef'ing for vnode tracing and fill in missing
          pieces.

linux/fs/xfs/xfsidbg.c
        - Add some NULL deref protection to the kdb_vnode cmd.
          Implement the kdb_vntrace cmd.

linux/include/asm-i386/kdbprivate.h
        - Bump the max # of kdb commands from 100 to 125.

- End of mod 2.3.99pre2-xfs:slinx:59377a




<Prev in Thread] Current Thread [Next in Thread>
  • repost TAKE - Implement vnode tracing., Ted Kline <=