--- linux/fs/ext3/namei.c.orig Thu Jan 30 01:15:13 2003 +++ linux/fs/ext3/namei.c Sat Feb 1 00:33:46 2003 @@ -710,6 +710,24 @@ return ret; } +static int ext3_find_inode(struct inode *inode, unsigned long ino, + void *opaque) +{ + const char *name = NULL; + int len = 0; + + if (opaque) { + struct dentry *dentry = opaque; + name = dentry->d_name.name; + len = dentry->d_name.len; + } + printk(KERN_INFO "finding inode %s:%lu (%p) count %d (%p = %*s)\n", + kdevname(inode->i_dev), ino, inode, atomic_read(&inode->i_count), + opaque, len, name ? name : ""); + + return 1; +} + static struct dentry *ext3_lookup(struct inode * dir, struct dentry *dentry) { struct inode * inode; @@ -724,8 +742,8 @@ if (bh) { unsigned long ino = le32_to_cpu(de->inode); brelse (bh); - inode = iget(dir->i_sb, ino); + inode = iget4(dir->i_sb, ino, ext3_find_inode, dentry); if (!inode) return ERR_PTR(-EACCES); --- linux/fs/ext3/inode.c.orig Thu Jan 30 01:15:13 2003 +++ linux/fs/ext3/inode.c Sat Feb 1 00:34:45 2003 @@ -166,6 +166,9 @@ */ void ext3_put_inode (struct inode * inode) { + printk(KERN_INFO "putting inode %s:%lu (%p) count %d\n", + kdevname(inode->i_dev), inode->i_ino, inode, + atomic_read(&inode->i_count)); ext3_discard_prealloc (inode); }