From e1d0a3b53f9187116e92213e71f3b144283fbcf0 Mon Sep 17 00:00:00 2001 From: Dean Roehrich Date: Mon, 15 Sep 2003 03:18:00 -0500 Subject: [PATCH] [XFS] Change dm_send_namesp_event to take vnode ptrs rather than bhv ptrs. SGI Modid: 2.5.x-xfs:slinx:157475a --- fs/xfs/linux/xfs_lrw.c | 4 ++-- fs/xfs/xfs_mount.h | 4 ++-- fs/xfs/xfs_rename.c | 8 ++++---- fs/xfs/xfs_vfsops.c | 5 +---- fs/xfs/xfs_vnodeops.c | 40 ++++++++++++++++++++-------------------- 5 files changed, 29 insertions(+), 32 deletions(-) diff --git a/fs/xfs/linux/xfs_lrw.c b/fs/xfs/linux/xfs_lrw.c index 5cca7a209ea91..7f4718f0256f4 100644 --- a/fs/xfs/linux/xfs_lrw.c +++ b/fs/xfs/linux/xfs_lrw.c @@ -693,8 +693,8 @@ retry: DM_EVENT_ENABLED(vp->v_vfsp, xip, DM_EVENT_NOSPACE) && !invisible) { xfs_rwunlock(bdp, locktype); - error = XFS_SEND_NAMESP(xip->i_mount, DM_EVENT_NOSPACE, bdp, - DM_RIGHT_NULL, bdp, DM_RIGHT_NULL, NULL, NULL, + error = XFS_SEND_NAMESP(xip->i_mount, DM_EVENT_NOSPACE, vp, + DM_RIGHT_NULL, vp, DM_RIGHT_NULL, NULL, NULL, 0, 0, 0); /* Delay flag intentionally unused */ if (error) return -error; diff --git a/fs/xfs/xfs_mount.h b/fs/xfs/xfs_mount.h index a7c5179bbd4df..efe1fa311bd98 100644 --- a/fs/xfs/xfs_mount.h +++ b/fs/xfs/xfs_mount.h @@ -95,8 +95,8 @@ typedef int (*xfs_send_data_t)(int, struct bhv_desc *, xfs_off_t, size_t, int, vrwlock_t *); typedef int (*xfs_send_mmap_t)(struct vm_area_struct *, uint); typedef int (*xfs_send_destroy_t)(struct bhv_desc *, dm_right_t); -typedef int (*xfs_send_namesp_t)(dm_eventtype_t, struct bhv_desc *, - dm_right_t, struct bhv_desc *, dm_right_t, +typedef int (*xfs_send_namesp_t)(dm_eventtype_t, struct vnode *, + dm_right_t, struct vnode *, dm_right_t, char *, char *, mode_t, int, int); typedef void (*xfs_send_unmount_t)(struct vfs *, struct vnode *, dm_right_t, mode_t, int, int); diff --git a/fs/xfs/xfs_rename.c b/fs/xfs/xfs_rename.c index e99c728457c7a..b7845aa06b2da 100644 --- a/fs/xfs/xfs_rename.c +++ b/fs/xfs/xfs_rename.c @@ -292,8 +292,8 @@ xfs_rename( DM_EVENT_ENABLED(target_dir_vp->v_vfsp, target_dp, DM_EVENT_RENAME)) { error = XFS_SEND_NAMESP(mp, DM_EVENT_RENAME, - src_dir_bdp, DM_RIGHT_NULL, - target_dir_bdp, DM_RIGHT_NULL, + src_dir_vp, DM_RIGHT_NULL, + target_dir_vp, DM_RIGHT_NULL, src_name, target_name, 0, 0, 0); if (error) { @@ -649,8 +649,8 @@ std_return: DM_EVENT_ENABLED(target_dir_vp->v_vfsp, target_dp, DM_EVENT_POSTRENAME)) { (void) XFS_SEND_NAMESP (mp, DM_EVENT_POSTRENAME, - src_dir_bdp, DM_RIGHT_NULL, - target_dir_bdp, DM_RIGHT_NULL, + src_dir_vp, DM_RIGHT_NULL, + target_dir_vp, DM_RIGHT_NULL, src_name, target_name, 0, error, 0); } diff --git a/fs/xfs/xfs_vfsops.c b/fs/xfs/xfs_vfsops.c index 60c08799dcd40..5eb568b7c4757 100644 --- a/fs/xfs/xfs_vfsops.c +++ b/fs/xfs/xfs_vfsops.c @@ -532,11 +532,8 @@ xfs_unmount( rvp = XFS_ITOV(rip); if (vfsp->vfs_flag & VFS_DMI) { - bhv_desc_t *rbdp; - - rbdp = vn_bhv_lookup_unlocked(VN_BHV_HEAD(rvp), &xfs_vnodeops); error = XFS_SEND_NAMESP(mp, DM_EVENT_PREUNMOUNT, - rbdp, DM_RIGHT_NULL, rbdp, DM_RIGHT_NULL, + rvp, DM_RIGHT_NULL, rvp, DM_RIGHT_NULL, NULL, NULL, 0, 0, (mp->m_dmevmask & (1<v_vfsp, ip, DM_EVENT_ATTRIBUTE) && !(flags & ATTR_DMI)) { - (void) XFS_SEND_NAMESP(mp, DM_EVENT_ATTRIBUTE, bdp, DM_RIGHT_NULL, + (void) XFS_SEND_NAMESP(mp, DM_EVENT_ATTRIBUTE, vp, DM_RIGHT_NULL, NULL, DM_RIGHT_NULL, NULL, NULL, 0, 0, AT_DELAY_FLAG(flags)); } @@ -1980,7 +1980,7 @@ xfs_create( if (DM_EVENT_ENABLED(dir_vp->v_vfsp, dp, DM_EVENT_CREATE)) { error = XFS_SEND_NAMESP(mp, DM_EVENT_CREATE, - dir_bdp, DM_RIGHT_NULL, NULL, + dir_vp, DM_RIGHT_NULL, NULL, DM_RIGHT_NULL, name, NULL, dm_di_mode, 0, 0); @@ -2146,8 +2146,8 @@ std_return: DM_EVENT_ENABLED(dir_vp->v_vfsp, XFS_BHVTOI(dir_bdp), DM_EVENT_POSTCREATE)) { (void) XFS_SEND_NAMESP(mp, DM_EVENT_POSTCREATE, - dir_bdp, DM_RIGHT_NULL, - *vpp ? vn_bhv_lookup_unlocked(VN_BHV_HEAD(vp), &xfs_vnodeops):NULL, + dir_vp, DM_RIGHT_NULL, + *vpp ? vp:NULL, DM_RIGHT_NULL, name, NULL, dm_di_mode, error, 0); } @@ -2460,7 +2460,7 @@ xfs_remove( namelen = VNAMELEN(dentry); if (DM_EVENT_ENABLED(dir_vp->v_vfsp, dp, DM_EVENT_REMOVE)) { - error = XFS_SEND_NAMESP(mp, DM_EVENT_REMOVE, dir_bdp, + error = XFS_SEND_NAMESP(mp, DM_EVENT_REMOVE, dir_vp, DM_RIGHT_NULL, NULL, DM_RIGHT_NULL, name, NULL, 0, 0, 0); if (error) @@ -2626,7 +2626,7 @@ xfs_remove( if (DM_EVENT_ENABLED(dir_vp->v_vfsp, dp, DM_EVENT_POSTREMOVE)) { (void) XFS_SEND_NAMESP(mp, DM_EVENT_POSTREMOVE, - dir_bdp, DM_RIGHT_NULL, + dir_vp, DM_RIGHT_NULL, NULL, DM_RIGHT_NULL, name, NULL, dm_di_mode, error, 0); } @@ -2710,8 +2710,8 @@ xfs_link( if (DM_EVENT_ENABLED(src_vp->v_vfsp, tdp, DM_EVENT_LINK)) { error = XFS_SEND_NAMESP(mp, DM_EVENT_LINK, - target_dir_bdp, DM_RIGHT_NULL, - src_bdp, DM_RIGHT_NULL, + target_dir_vp, DM_RIGHT_NULL, + src_vp, DM_RIGHT_NULL, target_name, NULL, 0, 0, 0); if (error) return error; @@ -2814,8 +2814,8 @@ std_return: if (DM_EVENT_ENABLED(src_vp->v_vfsp, sip, DM_EVENT_POSTLINK)) { (void) XFS_SEND_NAMESP(mp, DM_EVENT_POSTLINK, - target_dir_bdp, DM_RIGHT_NULL, - src_bdp, DM_RIGHT_NULL, + target_dir_vp, DM_RIGHT_NULL, + src_vp, DM_RIGHT_NULL, target_name, NULL, 0, error, 0); } return error; @@ -2876,7 +2876,7 @@ xfs_mkdir( if (DM_EVENT_ENABLED(dir_vp->v_vfsp, dp, DM_EVENT_CREATE)) { error = XFS_SEND_NAMESP(mp, DM_EVENT_CREATE, - dir_bdp, DM_RIGHT_NULL, NULL, + dir_vp, DM_RIGHT_NULL, NULL, DM_RIGHT_NULL, dir_name, NULL, dm_di_mode, 0, 0); if (error) @@ -3035,8 +3035,8 @@ std_return: DM_EVENT_ENABLED(dir_vp->v_vfsp, XFS_BHVTOI(dir_bdp), DM_EVENT_POSTCREATE)) { (void) XFS_SEND_NAMESP(mp, DM_EVENT_POSTCREATE, - dir_bdp, DM_RIGHT_NULL, - created ? XFS_ITOBHV(cdp):NULL, + dir_vp, DM_RIGHT_NULL, + created ? XFS_ITOV(cdp):NULL, DM_RIGHT_NULL, dir_name, NULL, dm_di_mode, error, 0); @@ -3099,7 +3099,7 @@ xfs_rmdir( if (DM_EVENT_ENABLED(dir_vp->v_vfsp, dp, DM_EVENT_REMOVE)) { error = XFS_SEND_NAMESP(mp, DM_EVENT_REMOVE, - dir_bdp, DM_RIGHT_NULL, + dir_vp, DM_RIGHT_NULL, NULL, DM_RIGHT_NULL, name, NULL, 0, 0, 0); if (error) @@ -3293,7 +3293,7 @@ xfs_rmdir( std_return: if (DM_EVENT_ENABLED(dir_vp->v_vfsp, dp, DM_EVENT_POSTREMOVE)) { (void) XFS_SEND_NAMESP(mp, DM_EVENT_POSTREMOVE, - dir_bdp, DM_RIGHT_NULL, + dir_vp, DM_RIGHT_NULL, NULL, DM_RIGHT_NULL, name, NULL, dm_di_mode, error, 0); @@ -3437,7 +3437,7 @@ xfs_symlink( } if (DM_EVENT_ENABLED(dir_vp->v_vfsp, dp, DM_EVENT_SYMLINK)) { - error = XFS_SEND_NAMESP(mp, DM_EVENT_SYMLINK, dir_bdp, + error = XFS_SEND_NAMESP(mp, DM_EVENT_SYMLINK, dir_vp, DM_RIGHT_NULL, NULL, DM_RIGHT_NULL, link_name, target_path, 0, 0, 0); if (error) @@ -3629,8 +3629,8 @@ std_return: if (DM_EVENT_ENABLED(dir_vp->v_vfsp, XFS_BHVTOI(dir_bdp), DM_EVENT_POSTSYMLINK)) { (void) XFS_SEND_NAMESP(mp, DM_EVENT_POSTSYMLINK, - dir_bdp, DM_RIGHT_NULL, - error ? NULL : XFS_ITOBHV(ip), + dir_vp, DM_RIGHT_NULL, + error ? NULL : XFS_ITOV(ip), DM_RIGHT_NULL, link_name, target_path, 0, error, 0); } @@ -4268,8 +4268,8 @@ dmapi_enospc_check: DM_EVENT_ENABLED(XFS_MTOVFS(mp), ip, DM_EVENT_NOSPACE)) { error = XFS_SEND_NAMESP(mp, DM_EVENT_NOSPACE, - XFS_ITOBHV(ip), DM_RIGHT_NULL, - XFS_ITOBHV(ip), DM_RIGHT_NULL, + XFS_ITOV(ip), DM_RIGHT_NULL, + XFS_ITOV(ip), DM_RIGHT_NULL, NULL, NULL, 0, 0, 0); /* Delay flag intentionally unused */ if (error == 0) goto retry; /* Maybe DMAPI app. has made space */ -- 2.53.0