patch-2.0.31 linux/fs/inode.c

Next file: linux/fs/isofs/inode.c
Previous file: linux/fs/filesystems.c
Back to the patch index
Back to the overall index

diff -u --recursive --new-file v2.0.30/linux/fs/inode.c linux/fs/inode.c
@@ -467,6 +467,14 @@
 	
 	inode->i_count--;
 
+	if (inode->i_count)
+	/*
+	 * Huoh, we were supposed to be the last user, but someone has
+	 * grabbed it while we were sleeping. Dont destroy inode VM
+	 * mappings, it might cause a memory leak.
+	 */
+		return;
+
 	if (inode->i_mmap) {
 		printk("iput: inode %lu on device %s still has mappings.\n",
 			inode->i_ino, kdevname(inode->i_dev));

FUNET's LINUX-ADM group, linux-adm@nic.funet.fi
TCL-scripts by Sam Shen, slshen@lbl.gov