diff options
| author | Dmitry Torokhov <dmitry.torokhov@gmail.com> | 2010-06-30 15:07:09 -0700 |
|---|---|---|
| committer | Dmitry Torokhov <dmitry.torokhov@gmail.com> | 2010-06-30 15:07:09 -0700 |
| commit | 08fa16b6b75005c120b59d00ae42a0b7cc68db45 (patch) | |
| tree | c5f22412467f72dd0c7291bbb958a9485e894f02 /fs/configfs | |
| parent | 1796b983cc4cbbed5e9e478b03591609a2c21987 (diff) | |
| parent | 7e27d6e778cd87b6f2415515d7127eba53fe5d02 (diff) | |
Merge commit 'v2.6.35-rc3' into next
Diffstat (limited to 'fs/configfs')
| -rw-r--r-- | fs/configfs/inode.c | 9 |
1 files changed, 4 insertions, 5 deletions
diff --git a/fs/configfs/inode.c b/fs/configfs/inode.c index 41645142b88..cf78d44a8d6 100644 --- a/fs/configfs/inode.c +++ b/fs/configfs/inode.c @@ -72,10 +72,6 @@ int configfs_setattr(struct dentry * dentry, struct iattr * iattr) if (!sd) return -EINVAL; - error = simple_setattr(dentry, iattr); - if (error) - return error; - sd_iattr = sd->s_iattr; if (!sd_iattr) { /* setting attributes for the first time, allocate now */ @@ -89,9 +85,12 @@ int configfs_setattr(struct dentry * dentry, struct iattr * iattr) sd_iattr->ia_atime = sd_iattr->ia_mtime = sd_iattr->ia_ctime = CURRENT_TIME; sd->s_iattr = sd_iattr; } - /* attributes were changed atleast once in past */ + error = simple_setattr(dentry, iattr); + if (error) + return error; + if (ia_valid & ATTR_UID) sd_iattr->ia_uid = iattr->ia_uid; if (ia_valid & ATTR_GID) |
