diff options
author | Linus Torvalds <torvalds@linux-foundation.org> | 2014-06-11 12:03:47 -0400 |
---|---|---|
committer | Linus Torvalds <torvalds@linux-foundation.org> | 2014-06-11 12:03:47 -0400 |
commit | 412dd3a6daf0cadce1b2d6a34fa3713f40255579 (patch) | |
tree | bb2518c00c9d56acc8d36f87ed9c3144d8cf8201 /fs/xfs/xfs_ioctl.c | |
parent | 23d4ed53b7342bf5999b3ea227d9f69e75e5a625 (diff) | |
parent | 7691283d0561a350b7517be94818669fb5e3d910 (diff) |
Merge tag 'xfs-for-linus-3.16-rc1' of git://oss.sgi.com/xfs/xfs
Pull xfs updates from Dave Chinner:
"This update contains:
- cleanup removing unused function args
- rework of the filestreams allocator to use dentry cache parent
lookups
- new on-disk free inode btree and optimised inode allocator
- various bug fixes
- rework of internal attribute API
- cleanup of superblock feature bit support to remove historic cruft
- more fixes and minor cleanups
- added a new directory/attribute geometry abstraction
- yet more fixes and minor cleanups"
* tag 'xfs-for-linus-3.16-rc1' of git://oss.sgi.com/xfs/xfs: (86 commits)
xfs: fix xfs_da_args sparse warning in xfs_readdir
xfs: Fix rounding in xfs_alloc_fix_len()
xfs: tone down writepage/releasepage WARN_ONs
xfs: small cleanup in xfs_lowbit64()
xfs: kill xfs_buf_geterror()
xfs: xfs_readsb needs to check for magic numbers
xfs: block allocation work needs to be kswapd aware
xfs: remove redundant geometry information from xfs_da_state
xfs: replace attr LBSIZE with xfs_da_geometry
xfs: pass xfs_da_args to xfs_attr_leaf_newentsize
xfs: use xfs_da_geometry for block size in attr code
xfs: remove mp->m_dir_geo from directory logging
xfs: reduce direct usage of mp->m_dir_geo
xfs: move node entry counts to xfs_da_geometry
xfs: convert dir/attr btree threshold to xfs_da_geometry
xfs: convert m_dirblksize to xfs_da_geometry
xfs: convert m_dirblkfsbs to xfs_da_geometry
xfs: convert directory segment limits to xfs_da_geometry
xfs: convert directory db conversion to xfs_da_geometry
xfs: convert directory dablk conversion to xfs_da_geometry
...
Diffstat (limited to 'fs/xfs/xfs_ioctl.c')
-rw-r--r-- | fs/xfs/xfs_ioctl.c | 14 |
1 files changed, 4 insertions, 10 deletions
diff --git a/fs/xfs/xfs_ioctl.c b/fs/xfs/xfs_ioctl.c index 6152cbe353e8..8bc1bbce7451 100644 --- a/fs/xfs/xfs_ioctl.c +++ b/fs/xfs/xfs_ioctl.c | |||
@@ -543,10 +543,11 @@ xfs_attrmulti_by_handle( | |||
543 | 543 | ||
544 | ops = memdup_user(am_hreq.ops, size); | 544 | ops = memdup_user(am_hreq.ops, size); |
545 | if (IS_ERR(ops)) { | 545 | if (IS_ERR(ops)) { |
546 | error = PTR_ERR(ops); | 546 | error = -PTR_ERR(ops); |
547 | goto out_dput; | 547 | goto out_dput; |
548 | } | 548 | } |
549 | 549 | ||
550 | error = ENOMEM; | ||
550 | attr_name = kmalloc(MAXNAMELEN, GFP_KERNEL); | 551 | attr_name = kmalloc(MAXNAMELEN, GFP_KERNEL); |
551 | if (!attr_name) | 552 | if (!attr_name) |
552 | goto out_kfree_ops; | 553 | goto out_kfree_ops; |
@@ -556,7 +557,7 @@ xfs_attrmulti_by_handle( | |||
556 | ops[i].am_error = strncpy_from_user((char *)attr_name, | 557 | ops[i].am_error = strncpy_from_user((char *)attr_name, |
557 | ops[i].am_attrname, MAXNAMELEN); | 558 | ops[i].am_attrname, MAXNAMELEN); |
558 | if (ops[i].am_error == 0 || ops[i].am_error == MAXNAMELEN) | 559 | if (ops[i].am_error == 0 || ops[i].am_error == MAXNAMELEN) |
559 | error = -ERANGE; | 560 | error = ERANGE; |
560 | if (ops[i].am_error < 0) | 561 | if (ops[i].am_error < 0) |
561 | break; | 562 | break; |
562 | 563 | ||
@@ -1227,15 +1228,8 @@ xfs_ioctl_setattr( | |||
1227 | olddquot = xfs_qm_vop_chown(tp, ip, | 1228 | olddquot = xfs_qm_vop_chown(tp, ip, |
1228 | &ip->i_pdquot, pdqp); | 1229 | &ip->i_pdquot, pdqp); |
1229 | } | 1230 | } |
1231 | ASSERT(ip->i_d.di_version > 1); | ||
1230 | xfs_set_projid(ip, fa->fsx_projid); | 1232 | xfs_set_projid(ip, fa->fsx_projid); |
1231 | |||
1232 | /* | ||
1233 | * We may have to rev the inode as well as | ||
1234 | * the superblock version number since projids didn't | ||
1235 | * exist before DINODE_VERSION_2 and SB_VERSION_NLINK. | ||
1236 | */ | ||
1237 | if (ip->i_d.di_version == 1) | ||
1238 | xfs_bump_ino_vers2(tp, ip); | ||
1239 | } | 1233 | } |
1240 | 1234 | ||
1241 | } | 1235 | } |