Skip to content

Commit

Permalink
[XFS] Update XFS for i_blksize removal from generic inode structure
Browse files Browse the repository at this point in the history
SGI-PV: 954366
SGI-Modid: xfs-linux-melb:xfs-kern:26565a

Signed-off-by: Nathan Scott <nathans@sgi.com>
Signed-off-by: Tim Shimmin <tes@sgi.com>
  • Loading branch information
Nathan Scott authored and Tim Shimmin committed Sep 28, 2006
1 parent 29b6d22 commit 69e23b9
Showing 1 changed file with 20 additions and 5 deletions.
25 changes: 20 additions & 5 deletions fs/xfs/linux-2.6/xfs_iops.c
Original file line number Diff line number Diff line change
Expand Up @@ -623,12 +623,27 @@ xfs_vn_getattr(
{
struct inode *inode = dentry->d_inode;
bhv_vnode_t *vp = vn_from_inode(inode);
int error = 0;
bhv_vattr_t vattr = { .va_mask = XFS_AT_STAT };
int error;

if (unlikely(vp->v_flag & VMODIFIED))
error = vn_revalidate(vp);
if (!error)
generic_fillattr(inode, stat);
error = bhv_vop_getattr(vp, &vattr, ATTR_LAZY, NULL);
if (likely(!error)) {
stat->size = i_size_read(inode);
stat->dev = inode->i_sb->s_dev;
stat->rdev = (vattr.va_rdev == 0) ? 0 :
MKDEV(sysv_major(vattr.va_rdev) & 0x1ff,
sysv_minor(vattr.va_rdev));
stat->mode = vattr.va_mode;
stat->nlink = vattr.va_nlink;
stat->uid = vattr.va_uid;
stat->gid = vattr.va_gid;
stat->ino = vattr.va_nodeid;
stat->atime = vattr.va_atime;
stat->mtime = vattr.va_mtime;
stat->ctime = vattr.va_ctime;
stat->blocks = vattr.va_nblocks;
stat->blksize = vattr.va_blocksize;
}
return -error;
}

Expand Down

0 comments on commit 69e23b9

Please sign in to comment.