|
@@ -41,6 +41,11 @@ static int f2fs_vm_page_mkwrite(struct vm_area_struct *vma,
|
|
|
|
|
|
sb_start_pagefault(inode->i_sb);
|
|
|
|
|
|
+ /* force to convert with normal data indices */
|
|
|
+ err = f2fs_convert_inline_data(inode, MAX_INLINE_DATA + 1, page);
|
|
|
+ if (err)
|
|
|
+ goto out;
|
|
|
+
|
|
|
/* block allocation */
|
|
|
f2fs_lock_op(sbi);
|
|
|
set_new_dnode(&dn, inode, NULL, NULL, 0);
|
|
@@ -533,7 +538,7 @@ int f2fs_setattr(struct dentry *dentry, struct iattr *attr)
|
|
|
|
|
|
if ((attr->ia_valid & ATTR_SIZE) &&
|
|
|
attr->ia_size != i_size_read(inode)) {
|
|
|
- err = f2fs_convert_inline_data(inode, attr->ia_size);
|
|
|
+ err = f2fs_convert_inline_data(inode, attr->ia_size, NULL);
|
|
|
if (err)
|
|
|
return err;
|
|
|
|
|
@@ -622,7 +627,7 @@ static int punch_hole(struct inode *inode, loff_t offset, loff_t len)
|
|
|
loff_t off_start, off_end;
|
|
|
int ret = 0;
|
|
|
|
|
|
- ret = f2fs_convert_inline_data(inode, MAX_INLINE_DATA + 1);
|
|
|
+ ret = f2fs_convert_inline_data(inode, MAX_INLINE_DATA + 1, NULL);
|
|
|
if (ret)
|
|
|
return ret;
|
|
|
|
|
@@ -678,7 +683,7 @@ static int expand_inode_data(struct inode *inode, loff_t offset,
|
|
|
if (ret)
|
|
|
return ret;
|
|
|
|
|
|
- ret = f2fs_convert_inline_data(inode, offset + len);
|
|
|
+ ret = f2fs_convert_inline_data(inode, offset + len, NULL);
|
|
|
if (ret)
|
|
|
return ret;
|
|
|
|