patch to fix 2.1.49 busy inodes

Bill Hawes (whawes@star.net)
Thu, 14 Aug 1997 09:27:24 -0400


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

The attached patch fixes one source of busy inodes in 2.1.49. The
problem was that get_empty_inode() wasn't clearing the i_dev field, so
when the unmounting code gets an empty inode, it sometimes (often?) got
one that appeared to be on the device it was trying to unmount.

This should clear up some of the unmounting problems.

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

--- fs/inode.c.old Tue Aug 12 07:49:18 1997
+++ fs/inode.c Thu Aug 14 09:13:39 1997
@@ -421,6 +421,7 @@
inode = list_entry(tmp, struct inode, i_list);
add_new_inode:
inode->i_sb = NULL;
+ inode->i_dev = 0;
inode->i_ino = ++last_ino;
inode->i_count = 1;
list_add(&inode->i_list, &inode_in_use);

--------------16527604F6B272ED17D573B5--