aboutsummaryrefslogtreecommitdiffstats
path: root/fs/udf
diff options
context:
space:
mode:
authorJan Kara <jack@suse.cz>2017-06-13 10:08:52 -0400
committerJan Kara <jack@suse.cz>2017-06-14 05:21:01 -0400
commit146c4ad6ec034a1fbfbf90ba76cb69b6504c374a (patch)
tree8de22d1bbc50561db8994465ca48b1610c1eee3c /fs/udf
parent9795e0e8ac0d6a3ee092f1b555b284b57feef99e (diff)
udf: Use i_size_read() in udf_adinicb_writepage()
We don't hold inode_lock in udf_adinicb_writepage() so use i_size_read() to get i_size. This cannot cause real problems is i_size is guaranteed to be small but let's be careful. Signed-off-by: Jan Kara <jack@suse.cz>
Diffstat (limited to 'fs/udf')
-rw-r--r--fs/udf/file.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/fs/udf/file.c b/fs/udf/file.c
index e06d2c15749a..356c2bf148a5 100644
--- a/fs/udf/file.c
+++ b/fs/udf/file.c
@@ -76,7 +76,8 @@ static int udf_adinicb_writepage(struct page *page,
76 BUG_ON(!PageLocked(page)); 76 BUG_ON(!PageLocked(page));
77 77
78 kaddr = kmap_atomic(page); 78 kaddr = kmap_atomic(page);
79 memcpy(iinfo->i_ext.i_data + iinfo->i_lenEAttr, kaddr, inode->i_size); 79 memcpy(iinfo->i_ext.i_data + iinfo->i_lenEAttr, kaddr,
80 i_size_read(inode));
80 SetPageUptodate(page); 81 SetPageUptodate(page);
81 kunmap_atomic(kaddr); 82 kunmap_atomic(kaddr);
82 mark_inode_dirty(inode); 83 mark_inode_dirty(inode);