Merge branch 'akpm' (patches from Andrew)
[firefly-linux-kernel-4.4.55.git] / fs / hfsplus / inode.c
index a43811f909353354ca9bebd3e5d13212d30ae505..b0afedbef12b6a2d39bd6db290375e089af51ed4 100644 (file)
@@ -253,6 +253,12 @@ static int hfsplus_setattr(struct dentry *dentry, struct iattr *attr)
        if ((attr->ia_valid & ATTR_SIZE) &&
            attr->ia_size != i_size_read(inode)) {
                inode_dio_wait(inode);
+               if (attr->ia_size > inode->i_size) {
+                       error = generic_cont_expand_simple(inode,
+                                                          attr->ia_size);
+                       if (error)
+                               return error;
+               }
                truncate_setsize(inode, attr->ia_size);
                hfsplus_file_truncate(inode);
        }