1 Index: linux-2.6.0/fs/inode.c
2 ===================================================================
3 --- linux-2.6.0.orig/fs/inode.c 2004-01-04 15:21:49.000000000 +0300
4 +++ linux-2.6.0/fs/inode.c 2004-01-04 15:25:35.000000000 +0300
8 EXPORT_SYMBOL(invalidate_inodes);
11 +void show_remaining_inodes(struct super_block *sb)
13 + struct list_head *head;
14 + struct list_head *next;
17 + spin_lock(&inode_lock);
18 + head = &sb->s_inodes;
21 + struct list_head * tmp = next;
22 + struct inode * inode;
27 + inode = list_entry(tmp, struct inode, i_sb_list);
28 + if (atomic_read(&inode->i_count) == 0)
31 + "%u:%u %lu (%p) mode %o count %u\n",
32 + MAJOR(sb->s_dev), MINOR(sb->s_dev),
33 + inode->i_ino, inode,
34 + inode->i_mode, atomic_read(&inode->i_count));
36 + spin_unlock(&inode_lock);
40 int __invalidate_device(struct block_device *bdev, int do_sync)
42 struct super_block *sb;
43 Index: linux-2.6.0/fs/super.c
44 ===================================================================
45 --- linux-2.6.0.orig/fs/super.c 2004-01-04 15:26:13.000000000 +0300
46 +++ linux-2.6.0/fs/super.c 2004-01-04 15:26:36.000000000 +0300
48 if (invalidate_inodes(sb)) {
49 printk("VFS: Busy inodes after unmount. "
50 "Self-destruct in 5 seconds. Have a nice day...\n");
51 + show_remaining_inodes(sb);