aboutsummaryrefslogtreecommitdiffstats
path: root/fs/xfs/xfs_bmap.c
diff options
context:
space:
mode:
authorChristoph Hellwig <hch@infradead.org>2007-08-28 02:12:30 -0400
committerTim Shimmin <tes@chook.melbourne.sgi.com>2007-10-15 02:54:29 -0400
commit993386c19afa53fa54d00c7721e56ba820b3400d (patch)
tree1715fdeb9cc5ea99466e179b54e84b168fd5e127 /fs/xfs/xfs_bmap.c
parentb93bd20cd59eb7ec172f95d08b100fea688d8bcf (diff)
[XFS] decontaminate vnode operations from behavior details
All vnode ops now take struct xfs_inode pointers and the behaviour related glue is split out into methods of it's own. This required fixing xfs_create/mkdir/symlink to not mess with the inode pointer but rather use a separate boolean for error handling. Thanks to Dave Chinner for that fix. SGI-PV: 969608 SGI-Modid: xfs-linux-melb:xfs-kern:29492a Signed-off-by: Christoph Hellwig <hch@infradead.org> Signed-off-by: David Chinner <dgc@sgi.com> Signed-off-by: Tim Shimmin <tes@sgi.com>
Diffstat (limited to 'fs/xfs/xfs_bmap.c')
-rw-r--r--fs/xfs/xfs_bmap.c6
1 files changed, 2 insertions, 4 deletions
diff --git a/fs/xfs/xfs_bmap.c b/fs/xfs/xfs_bmap.c
index ea4eab14a603..16b97db4f8aa 100644
--- a/fs/xfs/xfs_bmap.c
+++ b/fs/xfs/xfs_bmap.c
@@ -5764,7 +5764,7 @@ xfs_getbmapx_fix_eof_hole(
5764 */ 5764 */
5765int /* error code */ 5765int /* error code */
5766xfs_getbmap( 5766xfs_getbmap(
5767 bhv_desc_t *bdp, /* XFS behavior descriptor*/ 5767 xfs_inode_t *ip,
5768 struct getbmap *bmv, /* user bmap structure */ 5768 struct getbmap *bmv, /* user bmap structure */
5769 void __user *ap, /* pointer to user's array */ 5769 void __user *ap, /* pointer to user's array */
5770 int interface) /* interface flags */ 5770 int interface) /* interface flags */
@@ -5773,7 +5773,6 @@ xfs_getbmap(
5773 int error; /* return value */ 5773 int error; /* return value */
5774 __int64_t fixlen; /* length for -1 case */ 5774 __int64_t fixlen; /* length for -1 case */
5775 int i; /* extent number */ 5775 int i; /* extent number */
5776 xfs_inode_t *ip; /* xfs incore inode pointer */
5777 bhv_vnode_t *vp; /* corresponding vnode */ 5776 bhv_vnode_t *vp; /* corresponding vnode */
5778 int lock; /* lock state */ 5777 int lock; /* lock state */
5779 xfs_bmbt_irec_t *map; /* buffer for user's data */ 5778 xfs_bmbt_irec_t *map; /* buffer for user's data */
@@ -5791,8 +5790,7 @@ xfs_getbmap(
5791 int bmapi_flags; /* flags for xfs_bmapi */ 5790 int bmapi_flags; /* flags for xfs_bmapi */
5792 __int32_t oflags; /* getbmapx bmv_oflags field */ 5791 __int32_t oflags; /* getbmapx bmv_oflags field */
5793 5792
5794 vp = BHV_TO_VNODE(bdp); 5793 vp = XFS_ITOV(ip);
5795 ip = XFS_BHVTOI(bdp);
5796 mp = ip->i_mount; 5794 mp = ip->i_mount;
5797 5795
5798 whichfork = interface & BMV_IF_ATTRFORK ? XFS_ATTR_FORK : XFS_DATA_FORK; 5796 whichfork = interface & BMV_IF_ATTRFORK ? XFS_ATTR_FORK : XFS_DATA_FORK;