patch-2.4.0-test4 linux/fs/udf/file.c

Next file: linux/include/asm-alpha/elf.h
Previous file: linux/fs/smbfs/file.c
Back to the patch index
Back to the overall index

diff -u --recursive --new-file v2.4.0-test3/linux/fs/udf/file.c linux/fs/udf/file.c
@@ -38,6 +38,7 @@
 #include <linux/string.h> /* memset */
 #include <linux/errno.h>
 #include <linux/locks.h>
+#include <linux/smp_lock.h>
 
 #include "udf_i.h"
 #include "udf_sb.h"
@@ -296,8 +297,11 @@
  */
 static int udf_release_file(struct inode * inode, struct file * filp)
 {
-	if (filp->f_mode & FMODE_WRITE)
+	if (filp->f_mode & FMODE_WRITE) {
+		lock_kernel();
 		udf_discard_prealloc(inode);
+		unlock_kernel();
+	}
 	return 0;
 }
 

FUNET's LINUX-ADM group, linux-adm@nic.funet.fi
TCL-scripts by Sam Shen (who was at: slshen@lbl.gov)