rename generic_setattr
Despite its name it's now a generic implementation of ->setattr, but rather a helper to copy attributes from a struct iattr to the inode. Rename it to setattr_copy to reflect this fact. Signed-off-by: Christoph Hellwig <hch@lst.de> Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
This commit is contained in:
parent
d39aae9ec4
commit
6a1a90ad1b
8 changed files with 14 additions and 15 deletions
14
fs/attr.c
14
fs/attr.c
|
@ -105,13 +105,13 @@ int inode_newsize_ok(const struct inode *inode, loff_t offset)
|
||||||
EXPORT_SYMBOL(inode_newsize_ok);
|
EXPORT_SYMBOL(inode_newsize_ok);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* generic_setattr - copy simple metadata updates into the generic inode
|
* setattr_copy - copy simple metadata updates into the generic inode
|
||||||
* @inode: the inode to be updated
|
* @inode: the inode to be updated
|
||||||
* @attr: the new attributes
|
* @attr: the new attributes
|
||||||
*
|
*
|
||||||
* generic_setattr must be called with i_mutex held.
|
* setattr_copy must be called with i_mutex held.
|
||||||
*
|
*
|
||||||
* generic_setattr updates the inode's metadata with that specified
|
* setattr_copy updates the inode's metadata with that specified
|
||||||
* in attr. Noticably missing is inode size update, which is more complex
|
* in attr. Noticably missing is inode size update, which is more complex
|
||||||
* as it requires pagecache updates. See simple_setsize.
|
* as it requires pagecache updates. See simple_setsize.
|
||||||
*
|
*
|
||||||
|
@ -119,7 +119,7 @@ EXPORT_SYMBOL(inode_newsize_ok);
|
||||||
* that for "simple" filesystems, the struct inode is the inode storage.
|
* that for "simple" filesystems, the struct inode is the inode storage.
|
||||||
* The caller is free to mark the inode dirty afterwards if needed.
|
* The caller is free to mark the inode dirty afterwards if needed.
|
||||||
*/
|
*/
|
||||||
void generic_setattr(struct inode *inode, const struct iattr *attr)
|
void setattr_copy(struct inode *inode, const struct iattr *attr)
|
||||||
{
|
{
|
||||||
unsigned int ia_valid = attr->ia_valid;
|
unsigned int ia_valid = attr->ia_valid;
|
||||||
|
|
||||||
|
@ -144,11 +144,11 @@ void generic_setattr(struct inode *inode, const struct iattr *attr)
|
||||||
inode->i_mode = mode;
|
inode->i_mode = mode;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
EXPORT_SYMBOL(generic_setattr);
|
EXPORT_SYMBOL(setattr_copy);
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* note this function is deprecated, the new truncate sequence should be
|
* note this function is deprecated, the new truncate sequence should be
|
||||||
* used instead -- see eg. simple_setsize, generic_setattr.
|
* used instead -- see eg. simple_setsize, setattr_copy.
|
||||||
*/
|
*/
|
||||||
int inode_setattr(struct inode *inode, const struct iattr *attr)
|
int inode_setattr(struct inode *inode, const struct iattr *attr)
|
||||||
{
|
{
|
||||||
|
@ -163,7 +163,7 @@ int inode_setattr(struct inode *inode, const struct iattr *attr)
|
||||||
return error;
|
return error;
|
||||||
}
|
}
|
||||||
|
|
||||||
generic_setattr(inode, attr);
|
setattr_copy(inode, attr);
|
||||||
|
|
||||||
mark_inode_dirty(inode);
|
mark_inode_dirty(inode);
|
||||||
|
|
||||||
|
|
|
@ -1544,7 +1544,7 @@ int ext2_setattr(struct dentry *dentry, struct iattr *iattr)
|
||||||
if (error)
|
if (error)
|
||||||
return error;
|
return error;
|
||||||
}
|
}
|
||||||
generic_setattr(inode, iattr);
|
setattr_copy(inode, iattr);
|
||||||
if (iattr->ia_valid & ATTR_MODE)
|
if (iattr->ia_valid & ATTR_MODE)
|
||||||
error = ext2_acl_chmod(inode);
|
error = ext2_acl_chmod(inode);
|
||||||
mark_inode_dirty(inode);
|
mark_inode_dirty(inode);
|
||||||
|
|
|
@ -446,7 +446,7 @@ int fat_setattr(struct dentry *dentry, struct iattr *attr)
|
||||||
goto out;
|
goto out;
|
||||||
}
|
}
|
||||||
|
|
||||||
generic_setattr(inode, attr);
|
setattr_copy(inode, attr);
|
||||||
mark_inode_dirty(inode);
|
mark_inode_dirty(inode);
|
||||||
out:
|
out:
|
||||||
return error;
|
return error;
|
||||||
|
|
|
@ -395,8 +395,7 @@ int simple_setattr(struct dentry *dentry, struct iattr *iattr)
|
||||||
return error;
|
return error;
|
||||||
}
|
}
|
||||||
|
|
||||||
generic_setattr(inode, iattr);
|
setattr_copy(inode, iattr);
|
||||||
|
|
||||||
return error;
|
return error;
|
||||||
}
|
}
|
||||||
EXPORT_SYMBOL(simple_setattr);
|
EXPORT_SYMBOL(simple_setattr);
|
||||||
|
|
|
@ -183,7 +183,7 @@ static int ramfs_nommu_setattr(struct dentry *dentry, struct iattr *ia)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
generic_setattr(inode, ia);
|
setattr_copy(inode, ia);
|
||||||
out:
|
out:
|
||||||
ia->ia_valid = old_ia_valid;
|
ia->ia_valid = old_ia_valid;
|
||||||
return ret;
|
return ret;
|
||||||
|
|
|
@ -122,7 +122,7 @@ int sysfs_setattr(struct dentry *dentry, struct iattr *iattr)
|
||||||
goto out;
|
goto out;
|
||||||
|
|
||||||
/* this ignores size changes */
|
/* this ignores size changes */
|
||||||
generic_setattr(inode, iattr);
|
setattr_copy(inode, iattr);
|
||||||
|
|
||||||
out:
|
out:
|
||||||
mutex_unlock(&sysfs_mutex);
|
mutex_unlock(&sysfs_mutex);
|
||||||
|
|
|
@ -2393,7 +2393,7 @@ extern int buffer_migrate_page(struct address_space *,
|
||||||
extern int inode_change_ok(const struct inode *, struct iattr *);
|
extern int inode_change_ok(const struct inode *, struct iattr *);
|
||||||
extern int inode_newsize_ok(const struct inode *, loff_t offset);
|
extern int inode_newsize_ok(const struct inode *, loff_t offset);
|
||||||
extern int __must_check inode_setattr(struct inode *, const struct iattr *);
|
extern int __must_check inode_setattr(struct inode *, const struct iattr *);
|
||||||
extern void generic_setattr(struct inode *inode, const struct iattr *attr);
|
extern void setattr_copy(struct inode *inode, const struct iattr *attr);
|
||||||
|
|
||||||
extern void file_update_time(struct file *file);
|
extern void file_update_time(struct file *file);
|
||||||
|
|
||||||
|
|
|
@ -811,7 +811,7 @@ static int shmem_notify_change(struct dentry *dentry, struct iattr *attr)
|
||||||
|
|
||||||
error = inode_change_ok(inode, attr);
|
error = inode_change_ok(inode, attr);
|
||||||
if (!error)
|
if (!error)
|
||||||
generic_setattr(inode, attr);
|
setattr_copy(inode, attr);
|
||||||
#ifdef CONFIG_TMPFS_POSIX_ACL
|
#ifdef CONFIG_TMPFS_POSIX_ACL
|
||||||
if (!error && (attr->ia_valid & ATTR_MODE))
|
if (!error && (attr->ia_valid & ATTR_MODE))
|
||||||
error = generic_acl_chmod(inode);
|
error = generic_acl_chmod(inode);
|
||||||
|
|
Loading…
Reference in a new issue