minor patch for fs/inode.c

Bill Hawes (whawes@star.net)
Sun, 01 Feb 1998 11:13:10 -0500


This is a multi-part message in MIME format.
--------------C58ABC19119910E2FA747EAA
Content-Type: text/plain; charset=us-ascii
Content-Transfer-Encoding: 7bit

I've added another sanity check to iput() to look for locks remaining when an
inode use count goes to 0. This shouldn't be happening, but it would be good to
make sure anyway. (The message hasn't appeared yet on my system.)

The patch also changes the test limit for wrapped inode counts.

Regards,
Bill
--------------C58ABC19119910E2FA747EAA
Content-Type: text/plain; charset=us-ascii; name="inode_84-patch"
Content-Transfer-Encoding: 7bit
Content-Disposition: inline; filename="inode_84-patch"

--- fs/inode.c.old Fri Jan 30 22:41:23 1998
+++ fs/inode.c Sun Feb 1 11:55:40 1998
@@ -699,19 +748,22 @@
list_add(&inode->i_list, inode_in_use.prev);
}
#ifdef INODE_PARANOIA
+if (inode->i_flock)
+printk(KERN_ERR "iput: inode %s/%ld still has locks!\n",
+kdevname(inode->i_dev), inode->i_ino);
if (!list_empty(&inode->i_dentry))
-printk("iput: device %s inode %ld still has aliases!\n",
+printk(KERN_ERR "iput: device %s inode %ld still has aliases!\n",
kdevname(inode->i_dev), inode->i_ino);
if (inode->i_count)
-printk("iput: device %s inode %ld count changed, count=%d\n",
+printk(KERN_ERR "iput: device %s inode %ld count changed, count=%d\n",
kdevname(inode->i_dev), inode->i_ino, inode->i_count);
if (atomic_read(&inode->i_sem.count) != 1)
-printk("iput: Aieee, semaphore in use device %s, count=%d\n",
+printk(KERN_ERR "iput: Aieee, semaphore in use device %s, count=%d\n",
kdevname(inode->i_dev), atomic_read(&inode->i_sem.count));
#endif
}
- if (inode->i_count > (1<<15)) {
- printk("iput: device %s inode %ld count wrapped\n",
+ if (inode->i_count > (1<<31)) {
+ printk(KERN_ERR "iput: inode %s/%ld count wrapped\n",
kdevname(inode->i_dev), inode->i_ino);
}
spin_unlock(&inode_lock);

--------------C58ABC19119910E2FA747EAA--