Whamcloud - gitweb
b=2123
authornic <nic>
Thu, 18 Mar 2004 01:31:33 +0000 (01:31 +0000)
committernic <nic>
Thu, 18 Mar 2004 01:31:33 +0000 (01:31 +0000)
add dcache_refcount_debug patch to hp-pnnl series

lustre/kernel_patches/patches/dcache_refcount_debug.patch [new file with mode: 0644]
lustre/kernel_patches/series/hp-pnnl-2.4.20

diff --git a/lustre/kernel_patches/patches/dcache_refcount_debug.patch b/lustre/kernel_patches/patches/dcache_refcount_debug.patch
new file mode 100644 (file)
index 0000000..0eddc23
--- /dev/null
@@ -0,0 +1,24 @@
+--- ./fs/dcache.c.orig 2004-01-30 14:54:45.000000000 -0700
++++ ./fs/dcache.c      2004-02-20 14:49:18.000000000 -0700
+@@ -348,8 +348,20 @@
+               dentry_stat.nr_unused--;
+               /* Unused dentry with a count? */
+-              if (atomic_read(&dentry->d_count))
++              if (atomic_read(&dentry->d_count)) {
++                      struct inode *inode = dentry->d_inode;
++                      printk(KERN_CRIT "dentry %*s %p->%lu/%u(%p/%s) ct %d\n",
++                             dentry->d_name.len, dentry->d_name.name, dentry,
++                             inode ? inode->i_ino : 0,
++                             inode ? inode->i_generation : 0, inode,
++                             inode ? inode->i_sb ?
++                                      inode->i_sb->s_type->name : "" : "",
++                             atomic_read(&dentry->d_count));
++                      spin_unlock(&dcache_lock);
++                      set_task_state(current, TASK_UNINTERRUPTIBLE);
++                      schedule();
+                       BUG();
++              }
+               prune_one_dentry(dentry);
+               if (!--count)
index f1130c6..cb9c74c 100644 (file)
@@ -43,3 +43,4 @@ ext3-xattr-ptr-arith-fix.patch
 procfs-ndynamic-2.4.patch
 ext3-truncate-buffer-head.patch
 inode-max-readahead-2.4.24.patch
+dcache_refcount_debug.patch