projects
/
GitHub
/
mt8127
/
android_kernel_alcatel_ttab.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
remove inode_setattr
[GitHub/mt8127/android_kernel_alcatel_ttab.git]
/
fs
/
exofs
/
inode.c
diff --git
a/fs/exofs/inode.c
b/fs/exofs/inode.c
index 4bb6ef822e46d8daba3b312afbb4258aab7ea1ee..4bfc1f4fd013aac24683bad410de98ef8c1d26f4 100644
(file)
--- a/
fs/exofs/inode.c
+++ b/
fs/exofs/inode.c
@@
-887,8
+887,18
@@
int exofs_setattr(struct dentry *dentry, struct iattr *iattr)
if (error)
return error;
if (error)
return error;
- error = inode_setattr(inode, iattr);
- return error;
+ if ((iattr->ia_valid & ATTR_SIZE) &&
+ iattr->ia_size != i_size_read(inode)) {
+ int error;
+
+ error = vmtruncate(inode, iattr->ia_size);
+ if (error)
+ return error;
+ }
+
+ setattr_copy(inode, iattr);
+ mark_inode_dirty(inode);
+ return 0;
}
static const struct osd_attr g_attr_inode_file_layout = ATTR_DEF(
}
static const struct osd_attr g_attr_inode_file_layout = ATTR_DEF(