|
@@ -1187,7 +1187,7 @@ static int f2fs_collapse_range(struct inode *inode, loff_t offset, loff_t len)
|
|
|
pg_end = (offset + len) >> PAGE_SHIFT;
|
|
|
|
|
|
/* avoid gc operation during block exchange */
|
|
|
- down_write(&F2FS_I(inode)->dio_rwsem[WRITE]);
|
|
|
+ down_write(&F2FS_I(inode)->i_gc_rwsem[WRITE]);
|
|
|
|
|
|
down_write(&F2FS_I(inode)->i_mmap_sem);
|
|
|
/* write out all dirty pages from offset */
|
|
@@ -1213,7 +1213,7 @@ static int f2fs_collapse_range(struct inode *inode, loff_t offset, loff_t len)
|
|
|
f2fs_i_size_write(inode, new_size);
|
|
|
out_unlock:
|
|
|
up_write(&F2FS_I(inode)->i_mmap_sem);
|
|
|
- up_write(&F2FS_I(inode)->dio_rwsem[WRITE]);
|
|
|
+ up_write(&F2FS_I(inode)->i_gc_rwsem[WRITE]);
|
|
|
return ret;
|
|
|
}
|
|
|
|
|
@@ -1389,7 +1389,7 @@ static int f2fs_insert_range(struct inode *inode, loff_t offset, loff_t len)
|
|
|
f2fs_balance_fs(sbi, true);
|
|
|
|
|
|
/* avoid gc operation during block exchange */
|
|
|
- down_write(&F2FS_I(inode)->dio_rwsem[WRITE]);
|
|
|
+ down_write(&F2FS_I(inode)->i_gc_rwsem[WRITE]);
|
|
|
|
|
|
down_write(&F2FS_I(inode)->i_mmap_sem);
|
|
|
ret = truncate_blocks(inode, i_size_read(inode), true);
|
|
@@ -1430,7 +1430,7 @@ static int f2fs_insert_range(struct inode *inode, loff_t offset, loff_t len)
|
|
|
f2fs_i_size_write(inode, new_size);
|
|
|
out:
|
|
|
up_write(&F2FS_I(inode)->i_mmap_sem);
|
|
|
- up_write(&F2FS_I(inode)->dio_rwsem[WRITE]);
|
|
|
+ up_write(&F2FS_I(inode)->i_gc_rwsem[WRITE]);
|
|
|
return ret;
|
|
|
}
|
|
|
|
|
@@ -1677,7 +1677,7 @@ static int f2fs_ioc_start_atomic_write(struct file *filp)
|
|
|
|
|
|
inode_lock(inode);
|
|
|
|
|
|
- down_write(&F2FS_I(inode)->dio_rwsem[WRITE]);
|
|
|
+ down_write(&F2FS_I(inode)->i_gc_rwsem[WRITE]);
|
|
|
|
|
|
if (f2fs_is_atomic_file(inode))
|
|
|
goto out;
|
|
@@ -1704,7 +1704,7 @@ skip_flush:
|
|
|
stat_inc_atomic_write(inode);
|
|
|
stat_update_max_atomic_write(inode);
|
|
|
out:
|
|
|
- up_write(&F2FS_I(inode)->dio_rwsem[WRITE]);
|
|
|
+ up_write(&F2FS_I(inode)->i_gc_rwsem[WRITE]);
|
|
|
inode_unlock(inode);
|
|
|
mnt_drop_write_file(filp);
|
|
|
return ret;
|
|
@@ -1724,7 +1724,7 @@ static int f2fs_ioc_commit_atomic_write(struct file *filp)
|
|
|
|
|
|
inode_lock(inode);
|
|
|
|
|
|
- down_write(&F2FS_I(inode)->dio_rwsem[WRITE]);
|
|
|
+ down_write(&F2FS_I(inode)->i_gc_rwsem[WRITE]);
|
|
|
|
|
|
if (f2fs_is_volatile_file(inode)) {
|
|
|
ret = -EINVAL;
|
|
@@ -1746,7 +1746,7 @@ static int f2fs_ioc_commit_atomic_write(struct file *filp)
|
|
|
ret = f2fs_do_sync_file(filp, 0, LLONG_MAX, 1, false);
|
|
|
}
|
|
|
err_out:
|
|
|
- up_write(&F2FS_I(inode)->dio_rwsem[WRITE]);
|
|
|
+ up_write(&F2FS_I(inode)->i_gc_rwsem[WRITE]);
|
|
|
inode_unlock(inode);
|
|
|
mnt_drop_write_file(filp);
|
|
|
return ret;
|
|
@@ -2333,12 +2333,12 @@ static int f2fs_move_file_range(struct file *file_in, loff_t pos_in,
|
|
|
}
|
|
|
|
|
|
inode_lock(src);
|
|
|
- down_write(&F2FS_I(src)->dio_rwsem[WRITE]);
|
|
|
+ down_write(&F2FS_I(src)->i_gc_rwsem[WRITE]);
|
|
|
if (src != dst) {
|
|
|
ret = -EBUSY;
|
|
|
if (!inode_trylock(dst))
|
|
|
goto out;
|
|
|
- if (!down_write_trylock(&F2FS_I(dst)->dio_rwsem[WRITE])) {
|
|
|
+ if (!down_write_trylock(&F2FS_I(dst)->i_gc_rwsem[WRITE])) {
|
|
|
inode_unlock(dst);
|
|
|
goto out;
|
|
|
}
|
|
@@ -2400,11 +2400,11 @@ static int f2fs_move_file_range(struct file *file_in, loff_t pos_in,
|
|
|
f2fs_unlock_op(sbi);
|
|
|
out_unlock:
|
|
|
if (src != dst) {
|
|
|
- up_write(&F2FS_I(dst)->dio_rwsem[WRITE]);
|
|
|
+ up_write(&F2FS_I(dst)->i_gc_rwsem[WRITE]);
|
|
|
inode_unlock(dst);
|
|
|
}
|
|
|
out:
|
|
|
- up_write(&F2FS_I(src)->dio_rwsem[WRITE]);
|
|
|
+ up_write(&F2FS_I(src)->i_gc_rwsem[WRITE]);
|
|
|
inode_unlock(src);
|
|
|
return ret;
|
|
|
}
|
|
@@ -2814,9 +2814,9 @@ int f2fs_precache_extents(struct inode *inode)
|
|
|
while (map.m_lblk < end) {
|
|
|
map.m_len = end - map.m_lblk;
|
|
|
|
|
|
- down_write(&fi->dio_rwsem[WRITE]);
|
|
|
+ down_write(&fi->i_gc_rwsem[WRITE]);
|
|
|
err = f2fs_map_blocks(inode, &map, 0, F2FS_GET_BLOCK_PRECACHE);
|
|
|
- up_write(&fi->dio_rwsem[WRITE]);
|
|
|
+ up_write(&fi->i_gc_rwsem[WRITE]);
|
|
|
if (err)
|
|
|
return err;
|
|
|
|