aboutsummaryrefslogtreecommitdiffstats
path: root/fs/udf/file.c
diff options
context:
space:
mode:
Diffstat (limited to 'fs/udf/file.c')
-rw-r--r--fs/udf/file.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/fs/udf/file.c b/fs/udf/file.c
index 66b9e7e7e4c5..df0c5561cc7e 100644
--- a/fs/udf/file.c
+++ b/fs/udf/file.c
@@ -204,10 +204,10 @@ static int udf_release_file(struct inode *inode, struct file *filp)
204{ 204{
205 if (filp->f_mode & FMODE_WRITE) { 205 if (filp->f_mode & FMODE_WRITE) {
206 mutex_lock(&inode->i_mutex); 206 mutex_lock(&inode->i_mutex);
207 lock_kernel(); 207 down_write(&UDF_I(inode)->i_data_sem);
208 udf_discard_prealloc(inode); 208 udf_discard_prealloc(inode);
209 udf_truncate_tail_extent(inode); 209 udf_truncate_tail_extent(inode);
210 unlock_kernel(); 210 up_write(&UDF_I(inode)->i_data_sem);
211 mutex_unlock(&inode->i_mutex); 211 mutex_unlock(&inode->i_mutex);
212 } 212 }
213 return 0; 213 return 0;