--- ../../../vendor/pvfs2/pvfs-2-8-2-rc1/src/kernel/linux-2.6/dcache.c	2009-11-14 10:52:24.000000000 -0600
+++ src/kernel/linux-2.6/dcache.c	2009-12-09 09:02:09.000000000 -0600
@@ -13,6 +13,8 @@
 #include "pvfs2-kernel.h"
 #include "pvfs2-internal.h"
 
+void print_dentry(struct dentry *entry, int ret);
+
 /* should return 1 if dentry can still be trusted, else 0 */
 static int pvfs2_d_revalidate_common(struct dentry* dentry)
 {
@@ -237,6 +239,35 @@
     .d_delete = pvfs2_d_delete,
 };
 
+void print_dentry(struct dentry *entry, int ret)
+{
+  if(!entry)
+  {
+    printk("--- dentry %p: no entry, ret: %d\n", entry, ret);
+    return;
+  }
+
+  if(!entry->d_inode)
+  {
+    printk("--- dentry %p: no d_inode, ret: %d\n", entry, ret);
+    return;
+  }
+
+  if(!entry->d_parent)
+  {
+    printk("--- dentry %p: no d_parent, ret: %d\n", entry, ret);
+    return;
+  }
+
+  printk("--- dentry %p: d_count: %d, name: %s, parent: %p, parent name: %s, ret: %d\n",
+        entry,
+        atomic_read(&entry->d_count),
+        entry->d_name.name,
+        entry->d_parent,
+        entry->d_parent->d_name.name,
+        ret);
+}
+
 /*
  * Local variables:
  *  c-indent-level: 4
