Skip to content

Commit 4fd6c08

Browse files
fs/ntfs3: Use i_size_read and i_size_write
Signed-off-by: Konstantin Komarov <almaz.alexandrovich@paragon-software.com>
1 parent 5ca87d0 commit 4fd6c08

File tree

6 files changed

+19
-18
lines changed

6 files changed

+19
-18
lines changed

fs/ntfs3/attrib.c

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2084,7 +2084,7 @@ int attr_collapse_range(struct ntfs_inode *ni, u64 vbo, u64 bytes)
20842084

20852085
/* Update inode size. */
20862086
ni->i_valid = valid_size;
2087-
ni->vfs_inode.i_size = data_size;
2087+
i_size_write(&ni->vfs_inode, data_size);
20882088
inode_set_bytes(&ni->vfs_inode, total_size);
20892089
ni->ni_flags |= NI_FLAG_UPDATE_PARENT;
20902090
mark_inode_dirty(&ni->vfs_inode);
@@ -2499,7 +2499,7 @@ int attr_insert_range(struct ntfs_inode *ni, u64 vbo, u64 bytes)
24992499
mi_b->dirty = true;
25002500

25012501
done:
2502-
ni->vfs_inode.i_size += bytes;
2502+
i_size_write(&ni->vfs_inode, ni->vfs_inode.i_size + bytes);
25032503
ni->ni_flags |= NI_FLAG_UPDATE_PARENT;
25042504
mark_inode_dirty(&ni->vfs_inode);
25052505

fs/ntfs3/dir.c

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -517,7 +517,7 @@ static int ntfs_dir_count(struct inode *dir, bool *is_empty, size_t *dirs,
517517
u32 e_size, off, end;
518518
size_t drs = 0, fles = 0, bit = 0;
519519
struct indx_node *node = NULL;
520-
size_t max_indx = ni->vfs_inode.i_size >> ni->dir.index_bits;
520+
size_t max_indx = i_size_read(&ni->vfs_inode) >> ni->dir.index_bits;
521521

522522
if (is_empty)
523523
*is_empty = true;

fs/ntfs3/file.c

Lines changed: 6 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -646,7 +646,7 @@ static long ntfs_fallocate(struct file *file, int mode, loff_t vbo, loff_t len)
646646
if (err)
647647
goto out;
648648
} else if (new_size > i_size) {
649-
inode->i_size = new_size;
649+
i_size_write(inode, new_size);
650650
}
651651
}
652652

@@ -696,7 +696,7 @@ int ntfs3_setattr(struct mnt_idmap *idmap, struct dentry *dentry,
696696
goto out;
697697
}
698698
inode_dio_wait(inode);
699-
oldsize = inode->i_size;
699+
oldsize = i_size_read(inode);
700700
newsize = attr->ia_size;
701701

702702
if (newsize <= oldsize)
@@ -708,7 +708,7 @@ int ntfs3_setattr(struct mnt_idmap *idmap, struct dentry *dentry,
708708
goto out;
709709

710710
ni->ni_flags |= NI_FLAG_UPDATE_PARENT;
711-
inode->i_size = newsize;
711+
i_size_write(inode, newsize);
712712
}
713713

714714
setattr_copy(idmap, inode, attr);
@@ -847,7 +847,7 @@ static ssize_t ntfs_compress_write(struct kiocb *iocb, struct iov_iter *from)
847847
size_t count = iov_iter_count(from);
848848
loff_t pos = iocb->ki_pos;
849849
struct inode *inode = file_inode(file);
850-
loff_t i_size = inode->i_size;
850+
loff_t i_size = i_size_read(inode);
851851
struct address_space *mapping = inode->i_mapping;
852852
struct ntfs_inode *ni = ntfs_i(inode);
853853
u64 valid = ni->i_valid;
@@ -1177,7 +1177,8 @@ static int ntfs_file_release(struct inode *inode, struct file *file)
11771177
down_write(&ni->file.run_lock);
11781178

11791179
err = attr_set_size(ni, ATTR_DATA, NULL, 0, &ni->file.run,
1180-
inode->i_size, &ni->i_valid, false, NULL);
1180+
i_size_read(inode), &ni->i_valid, false,
1181+
NULL);
11811182

11821183
up_write(&ni->file.run_lock);
11831184
ni_unlock(ni);

fs/ntfs3/frecord.c

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -2099,7 +2099,7 @@ int ni_readpage_cmpr(struct ntfs_inode *ni, struct page *page)
20992099
gfp_t gfp_mask;
21002100
struct page *pg;
21012101

2102-
if (vbo >= ni->vfs_inode.i_size) {
2102+
if (vbo >= i_size_read(&ni->vfs_inode)) {
21032103
SetPageUptodate(page);
21042104
err = 0;
21052105
goto out;
@@ -2173,7 +2173,7 @@ int ni_decompress_file(struct ntfs_inode *ni)
21732173
{
21742174
struct ntfs_sb_info *sbi = ni->mi.sbi;
21752175
struct inode *inode = &ni->vfs_inode;
2176-
loff_t i_size = inode->i_size;
2176+
loff_t i_size = i_size_read(inode);
21772177
struct address_space *mapping = inode->i_mapping;
21782178
gfp_t gfp_mask = mapping_gfp_mask(mapping);
21792179
struct page **pages = NULL;
@@ -2457,6 +2457,7 @@ int ni_read_frame(struct ntfs_inode *ni, u64 frame_vbo, struct page **pages,
24572457
struct ATTR_LIST_ENTRY *le = NULL;
24582458
struct runs_tree *run = &ni->file.run;
24592459
u64 valid_size = ni->i_valid;
2460+
loff_t i_size = i_size_read(&ni->vfs_inode);
24602461
u64 vbo_disk;
24612462
size_t unc_size;
24622463
u32 frame_size, i, npages_disk, ondisk_size;
@@ -2548,16 +2549,15 @@ int ni_read_frame(struct ntfs_inode *ni, u64 frame_vbo, struct page **pages,
25482549
}
25492550
}
25502551

2551-
frames = (ni->vfs_inode.i_size - 1) >> frame_bits;
2552+
frames = (i_size - 1) >> frame_bits;
25522553

25532554
err = attr_wof_frame_info(ni, attr, run, frame64, frames,
25542555
frame_bits, &ondisk_size, &vbo_data);
25552556
if (err)
25562557
goto out2;
25572558

25582559
if (frame64 == frames) {
2559-
unc_size = 1 + ((ni->vfs_inode.i_size - 1) &
2560-
(frame_size - 1));
2560+
unc_size = 1 + ((i_size - 1) & (frame_size - 1));
25612561
ondisk_size = attr_size(attr) - vbo_data;
25622562
} else {
25632563
unc_size = frame_size;

fs/ntfs3/index.c

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1462,7 +1462,7 @@ static int indx_create_allocate(struct ntfs_index *indx, struct ntfs_inode *ni,
14621462
goto out2;
14631463

14641464
if (in->name == I30_NAME) {
1465-
ni->vfs_inode.i_size = data_size;
1465+
i_size_write(&ni->vfs_inode, data_size);
14661466
inode_set_bytes(&ni->vfs_inode, alloc_size);
14671467
}
14681468

@@ -1544,7 +1544,7 @@ static int indx_add_allocate(struct ntfs_index *indx, struct ntfs_inode *ni,
15441544
}
15451545

15461546
if (in->name == I30_NAME)
1547-
ni->vfs_inode.i_size = data_size;
1547+
i_size_write(&ni->vfs_inode, data_size);
15481548

15491549
*vbn = bit << indx->idx2vbn_bits;
15501550

@@ -2090,7 +2090,7 @@ static int indx_shrink(struct ntfs_index *indx, struct ntfs_inode *ni,
20902090
return err;
20912091

20922092
if (in->name == I30_NAME)
2093-
ni->vfs_inode.i_size = new_data;
2093+
i_size_write(&ni->vfs_inode, new_data);
20942094

20952095
bpb = bitmap_size(bit);
20962096
if (bpb * 8 == nbits)
@@ -2576,7 +2576,7 @@ int indx_delete_entry(struct ntfs_index *indx, struct ntfs_inode *ni,
25762576
err = attr_set_size(ni, ATTR_ALLOC, in->name, in->name_len,
25772577
&indx->alloc_run, 0, NULL, false, NULL);
25782578
if (in->name == I30_NAME)
2579-
ni->vfs_inode.i_size = 0;
2579+
i_size_write(&ni->vfs_inode, 0);
25802580

25812581
err = ni_remove_attr(ni, ATTR_ALLOC, in->name, in->name_len,
25822582
false, NULL);

fs/ntfs3/inode.c

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -985,7 +985,7 @@ int ntfs_write_end(struct file *file, struct address_space *mapping, loff_t pos,
985985
}
986986

987987
if (pos + err > inode->i_size) {
988-
inode->i_size = pos + err;
988+
i_size_write(inode, pos + err);
989989
dirty = true;
990990
}
991991

0 commit comments

Comments
 (0)