Commit 5b5578c3 authored by Chao Yu's avatar Chao Yu Committed by Jaegeuk Kim
Browse files

f2fs: fix to access i_size w/ i_size_read()



It recommends to use i_size_{read,write}() to access and update i_size,
otherwise, we may get wrong tearing value due to high 32-bits value
and low 32-bits value of i_size field are not updated atomically in
32-bits archicture machine.

Signed-off-by: default avatarChao Yu <chao@kernel.org>
Signed-off-by: default avatarJaegeuk Kim <jaegeuk@kernel.org>
parent 297baa4a
Loading
Loading
Loading
Loading
+4 −4
Original line number Diff line number Diff line
@@ -204,7 +204,7 @@ DECLARE_EVENT_CLASS(f2fs__inode,
		__entry->pino	= F2FS_I(inode)->i_pino;
		__entry->mode	= inode->i_mode;
		__entry->nlink	= inode->i_nlink;
		__entry->size	= inode->i_size;
		__entry->size	= i_size_read(inode);
		__entry->blocks	= inode->i_blocks;
		__entry->advise	= F2FS_I(inode)->i_advise;
	),
@@ -353,7 +353,7 @@ TRACE_EVENT(f2fs_unlink_enter,
	TP_fast_assign(
		__entry->dev	= dir->i_sb->s_dev;
		__entry->ino	= dir->i_ino;
		__entry->size	= dir->i_size;
		__entry->size	= i_size_read(dir);
		__entry->blocks	= dir->i_blocks;
		__assign_str(name);
	),
@@ -433,7 +433,7 @@ DECLARE_EVENT_CLASS(f2fs__truncate_op,
	TP_fast_assign(
		__entry->dev	= inode->i_sb->s_dev;
		__entry->ino	= inode->i_ino;
		__entry->size	= inode->i_size;
		__entry->size	= i_size_read(inode);
		__entry->blocks	= inode->i_blocks;
		__entry->from	= from;
	),
@@ -1006,7 +1006,7 @@ TRACE_EVENT(f2fs_fallocate,
		__entry->mode	= mode;
		__entry->offset	= offset;
		__entry->len	= len;
		__entry->size	= inode->i_size;
		__entry->size	= i_size_read(inode);
		__entry->blocks = inode->i_blocks;
		__entry->ret	= ret;
	),