Commit 54c4164c authored by Stephen Lord's avatar Stephen Lord

[XFS] validate_fields is called on a vnode to update directory related

fields after a create/remove etc. Make sure we pass in all the
flags for the status fields we want. NBLOCKS was missing and
working by accident.

SGI Modid: 2.5.x-xfs:slinx:134817a
parent ba662e50
...@@ -45,7 +45,7 @@ validate_fields( ...@@ -45,7 +45,7 @@ validate_fields(
vattr_t va; vattr_t va;
int error; int error;
va.va_mask = XFS_AT_NLINK|XFS_AT_SIZE; va.va_mask = XFS_AT_NLINK|XFS_AT_SIZE|XFS_AT_NBLOCKS;
VOP_GETATTR(vp, &va, ATTR_LAZY, NULL, error); VOP_GETATTR(vp, &va, ATTR_LAZY, NULL, error);
ip->i_nlink = va.va_nlink; ip->i_nlink = va.va_nlink;
ip->i_size = va.va_size; ip->i_size = va.va_size;
......
...@@ -125,7 +125,8 @@ xfs_getattr( ...@@ -125,7 +125,8 @@ xfs_getattr(
* Quick exit for non-stat callers * Quick exit for non-stat callers
*/ */
if ((vap->va_mask & if ((vap->va_mask &
~(XFS_AT_SIZE|XFS_AT_FSID|XFS_AT_NODEID|XFS_AT_NLINK)) == 0) { ~(XFS_AT_SIZE|XFS_AT_FSID|XFS_AT_NODEID|
XFS_AT_NLINK|XFS_AT_BLKSIZE)) == 0) {
if (!(flags & ATTR_LAZY)) if (!(flags & ATTR_LAZY))
xfs_iunlock(ip, XFS_ILOCK_SHARED); xfs_iunlock(ip, XFS_ILOCK_SHARED);
return 0; return 0;
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment