Commit e1d0a3b5 authored by Dean Roehrich's avatar Dean Roehrich Committed by Stephen Lord

[XFS] Change dm_send_namesp_event to take vnode ptrs rather than bhv ptrs.

SGI Modid: 2.5.x-xfs:slinx:157475a
parent 4a93d6e8
...@@ -693,8 +693,8 @@ xfs_write( ...@@ -693,8 +693,8 @@ xfs_write(
DM_EVENT_ENABLED(vp->v_vfsp, xip, DM_EVENT_NOSPACE) && !invisible) { DM_EVENT_ENABLED(vp->v_vfsp, xip, DM_EVENT_NOSPACE) && !invisible) {
xfs_rwunlock(bdp, locktype); xfs_rwunlock(bdp, locktype);
error = XFS_SEND_NAMESP(xip->i_mount, DM_EVENT_NOSPACE, bdp, error = XFS_SEND_NAMESP(xip->i_mount, DM_EVENT_NOSPACE, vp,
DM_RIGHT_NULL, bdp, DM_RIGHT_NULL, NULL, NULL, DM_RIGHT_NULL, vp, DM_RIGHT_NULL, NULL, NULL,
0, 0, 0); /* Delay flag intentionally unused */ 0, 0, 0); /* Delay flag intentionally unused */
if (error) if (error)
return -error; return -error;
......
...@@ -95,8 +95,8 @@ typedef int (*xfs_send_data_t)(int, struct bhv_desc *, ...@@ -95,8 +95,8 @@ typedef int (*xfs_send_data_t)(int, struct bhv_desc *,
xfs_off_t, size_t, int, vrwlock_t *); xfs_off_t, size_t, int, vrwlock_t *);
typedef int (*xfs_send_mmap_t)(struct vm_area_struct *, uint); 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_destroy_t)(struct bhv_desc *, dm_right_t);
typedef int (*xfs_send_namesp_t)(dm_eventtype_t, struct bhv_desc *, typedef int (*xfs_send_namesp_t)(dm_eventtype_t, struct vnode *,
dm_right_t, struct bhv_desc *, dm_right_t, dm_right_t, struct vnode *, dm_right_t,
char *, char *, mode_t, int, int); char *, char *, mode_t, int, int);
typedef void (*xfs_send_unmount_t)(struct vfs *, struct vnode *, typedef void (*xfs_send_unmount_t)(struct vfs *, struct vnode *,
dm_right_t, mode_t, int, int); dm_right_t, mode_t, int, int);
......
...@@ -292,8 +292,8 @@ xfs_rename( ...@@ -292,8 +292,8 @@ xfs_rename(
DM_EVENT_ENABLED(target_dir_vp->v_vfsp, DM_EVENT_ENABLED(target_dir_vp->v_vfsp,
target_dp, DM_EVENT_RENAME)) { target_dp, DM_EVENT_RENAME)) {
error = XFS_SEND_NAMESP(mp, DM_EVENT_RENAME, error = XFS_SEND_NAMESP(mp, DM_EVENT_RENAME,
src_dir_bdp, DM_RIGHT_NULL, src_dir_vp, DM_RIGHT_NULL,
target_dir_bdp, DM_RIGHT_NULL, target_dir_vp, DM_RIGHT_NULL,
src_name, target_name, src_name, target_name,
0, 0, 0); 0, 0, 0);
if (error) { if (error) {
...@@ -649,8 +649,8 @@ xfs_rename( ...@@ -649,8 +649,8 @@ xfs_rename(
DM_EVENT_ENABLED(target_dir_vp->v_vfsp, DM_EVENT_ENABLED(target_dir_vp->v_vfsp,
target_dp, DM_EVENT_POSTRENAME)) { target_dp, DM_EVENT_POSTRENAME)) {
(void) XFS_SEND_NAMESP (mp, DM_EVENT_POSTRENAME, (void) XFS_SEND_NAMESP (mp, DM_EVENT_POSTRENAME,
src_dir_bdp, DM_RIGHT_NULL, src_dir_vp, DM_RIGHT_NULL,
target_dir_bdp, DM_RIGHT_NULL, target_dir_vp, DM_RIGHT_NULL,
src_name, target_name, src_name, target_name,
0, error, 0); 0, error, 0);
} }
......
...@@ -532,11 +532,8 @@ xfs_unmount( ...@@ -532,11 +532,8 @@ xfs_unmount(
rvp = XFS_ITOV(rip); rvp = XFS_ITOV(rip);
if (vfsp->vfs_flag & VFS_DMI) { 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, 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, NULL, NULL, 0, 0,
(mp->m_dmevmask & (1<<DM_EVENT_PREUNMOUNT))? (mp->m_dmevmask & (1<<DM_EVENT_PREUNMOUNT))?
0:DM_FLAGS_UNWANTED); 0:DM_FLAGS_UNWANTED);
......
...@@ -937,7 +937,7 @@ xfs_setattr( ...@@ -937,7 +937,7 @@ xfs_setattr(
if (DM_EVENT_ENABLED(vp->v_vfsp, ip, DM_EVENT_ATTRIBUTE) && if (DM_EVENT_ENABLED(vp->v_vfsp, ip, DM_EVENT_ATTRIBUTE) &&
!(flags & ATTR_DMI)) { !(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, NULL, DM_RIGHT_NULL, NULL, NULL,
0, 0, AT_DELAY_FLAG(flags)); 0, 0, AT_DELAY_FLAG(flags));
} }
...@@ -1980,7 +1980,7 @@ xfs_create( ...@@ -1980,7 +1980,7 @@ xfs_create(
if (DM_EVENT_ENABLED(dir_vp->v_vfsp, dp, DM_EVENT_CREATE)) { if (DM_EVENT_ENABLED(dir_vp->v_vfsp, dp, DM_EVENT_CREATE)) {
error = XFS_SEND_NAMESP(mp, 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_RIGHT_NULL, name, NULL,
dm_di_mode, 0, 0); dm_di_mode, 0, 0);
...@@ -2146,8 +2146,8 @@ xfs_create( ...@@ -2146,8 +2146,8 @@ xfs_create(
DM_EVENT_ENABLED(dir_vp->v_vfsp, XFS_BHVTOI(dir_bdp), DM_EVENT_ENABLED(dir_vp->v_vfsp, XFS_BHVTOI(dir_bdp),
DM_EVENT_POSTCREATE)) { DM_EVENT_POSTCREATE)) {
(void) XFS_SEND_NAMESP(mp, DM_EVENT_POSTCREATE, (void) XFS_SEND_NAMESP(mp, DM_EVENT_POSTCREATE,
dir_bdp, DM_RIGHT_NULL, dir_vp, DM_RIGHT_NULL,
*vpp ? vn_bhv_lookup_unlocked(VN_BHV_HEAD(vp), &xfs_vnodeops):NULL, *vpp ? vp:NULL,
DM_RIGHT_NULL, name, NULL, DM_RIGHT_NULL, name, NULL,
dm_di_mode, error, 0); dm_di_mode, error, 0);
} }
...@@ -2460,7 +2460,7 @@ xfs_remove( ...@@ -2460,7 +2460,7 @@ xfs_remove(
namelen = VNAMELEN(dentry); namelen = VNAMELEN(dentry);
if (DM_EVENT_ENABLED(dir_vp->v_vfsp, dp, DM_EVENT_REMOVE)) { 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, DM_RIGHT_NULL, NULL, DM_RIGHT_NULL,
name, NULL, 0, 0, 0); name, NULL, 0, 0, 0);
if (error) if (error)
...@@ -2626,7 +2626,7 @@ xfs_remove( ...@@ -2626,7 +2626,7 @@ xfs_remove(
if (DM_EVENT_ENABLED(dir_vp->v_vfsp, dp, if (DM_EVENT_ENABLED(dir_vp->v_vfsp, dp,
DM_EVENT_POSTREMOVE)) { DM_EVENT_POSTREMOVE)) {
(void) XFS_SEND_NAMESP(mp, 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, NULL, DM_RIGHT_NULL,
name, NULL, dm_di_mode, error, 0); name, NULL, dm_di_mode, error, 0);
} }
...@@ -2710,8 +2710,8 @@ xfs_link( ...@@ -2710,8 +2710,8 @@ xfs_link(
if (DM_EVENT_ENABLED(src_vp->v_vfsp, tdp, DM_EVENT_LINK)) { if (DM_EVENT_ENABLED(src_vp->v_vfsp, tdp, DM_EVENT_LINK)) {
error = XFS_SEND_NAMESP(mp, DM_EVENT_LINK, error = XFS_SEND_NAMESP(mp, DM_EVENT_LINK,
target_dir_bdp, DM_RIGHT_NULL, target_dir_vp, DM_RIGHT_NULL,
src_bdp, DM_RIGHT_NULL, src_vp, DM_RIGHT_NULL,
target_name, NULL, 0, 0, 0); target_name, NULL, 0, 0, 0);
if (error) if (error)
return error; return error;
...@@ -2814,8 +2814,8 @@ xfs_link( ...@@ -2814,8 +2814,8 @@ xfs_link(
if (DM_EVENT_ENABLED(src_vp->v_vfsp, sip, if (DM_EVENT_ENABLED(src_vp->v_vfsp, sip,
DM_EVENT_POSTLINK)) { DM_EVENT_POSTLINK)) {
(void) XFS_SEND_NAMESP(mp, DM_EVENT_POSTLINK, (void) XFS_SEND_NAMESP(mp, DM_EVENT_POSTLINK,
target_dir_bdp, DM_RIGHT_NULL, target_dir_vp, DM_RIGHT_NULL,
src_bdp, DM_RIGHT_NULL, src_vp, DM_RIGHT_NULL,
target_name, NULL, 0, error, 0); target_name, NULL, 0, error, 0);
} }
return error; return error;
...@@ -2876,7 +2876,7 @@ xfs_mkdir( ...@@ -2876,7 +2876,7 @@ xfs_mkdir(
if (DM_EVENT_ENABLED(dir_vp->v_vfsp, dp, DM_EVENT_CREATE)) { if (DM_EVENT_ENABLED(dir_vp->v_vfsp, dp, DM_EVENT_CREATE)) {
error = XFS_SEND_NAMESP(mp, 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_RIGHT_NULL, dir_name, NULL,
dm_di_mode, 0, 0); dm_di_mode, 0, 0);
if (error) if (error)
...@@ -3035,8 +3035,8 @@ xfs_mkdir( ...@@ -3035,8 +3035,8 @@ xfs_mkdir(
DM_EVENT_ENABLED(dir_vp->v_vfsp, XFS_BHVTOI(dir_bdp), DM_EVENT_ENABLED(dir_vp->v_vfsp, XFS_BHVTOI(dir_bdp),
DM_EVENT_POSTCREATE)) { DM_EVENT_POSTCREATE)) {
(void) XFS_SEND_NAMESP(mp, DM_EVENT_POSTCREATE, (void) XFS_SEND_NAMESP(mp, DM_EVENT_POSTCREATE,
dir_bdp, DM_RIGHT_NULL, dir_vp, DM_RIGHT_NULL,
created ? XFS_ITOBHV(cdp):NULL, created ? XFS_ITOV(cdp):NULL,
DM_RIGHT_NULL, DM_RIGHT_NULL,
dir_name, NULL, dir_name, NULL,
dm_di_mode, error, 0); dm_di_mode, error, 0);
...@@ -3099,7 +3099,7 @@ xfs_rmdir( ...@@ -3099,7 +3099,7 @@ xfs_rmdir(
if (DM_EVENT_ENABLED(dir_vp->v_vfsp, dp, DM_EVENT_REMOVE)) { if (DM_EVENT_ENABLED(dir_vp->v_vfsp, dp, DM_EVENT_REMOVE)) {
error = XFS_SEND_NAMESP(mp, 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, NULL, DM_RIGHT_NULL,
name, NULL, 0, 0, 0); name, NULL, 0, 0, 0);
if (error) if (error)
...@@ -3293,7 +3293,7 @@ xfs_rmdir( ...@@ -3293,7 +3293,7 @@ xfs_rmdir(
std_return: std_return:
if (DM_EVENT_ENABLED(dir_vp->v_vfsp, dp, DM_EVENT_POSTREMOVE)) { if (DM_EVENT_ENABLED(dir_vp->v_vfsp, dp, DM_EVENT_POSTREMOVE)) {
(void) XFS_SEND_NAMESP(mp, 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, NULL, DM_RIGHT_NULL,
name, NULL, dm_di_mode, name, NULL, dm_di_mode,
error, 0); error, 0);
...@@ -3437,7 +3437,7 @@ xfs_symlink( ...@@ -3437,7 +3437,7 @@ xfs_symlink(
} }
if (DM_EVENT_ENABLED(dir_vp->v_vfsp, dp, DM_EVENT_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, DM_RIGHT_NULL, NULL, DM_RIGHT_NULL,
link_name, target_path, 0, 0, 0); link_name, target_path, 0, 0, 0);
if (error) if (error)
...@@ -3629,8 +3629,8 @@ xfs_symlink( ...@@ -3629,8 +3629,8 @@ xfs_symlink(
if (DM_EVENT_ENABLED(dir_vp->v_vfsp, XFS_BHVTOI(dir_bdp), if (DM_EVENT_ENABLED(dir_vp->v_vfsp, XFS_BHVTOI(dir_bdp),
DM_EVENT_POSTSYMLINK)) { DM_EVENT_POSTSYMLINK)) {
(void) XFS_SEND_NAMESP(mp, DM_EVENT_POSTSYMLINK, (void) XFS_SEND_NAMESP(mp, DM_EVENT_POSTSYMLINK,
dir_bdp, DM_RIGHT_NULL, dir_vp, DM_RIGHT_NULL,
error ? NULL : XFS_ITOBHV(ip), error ? NULL : XFS_ITOV(ip),
DM_RIGHT_NULL, link_name, target_path, DM_RIGHT_NULL, link_name, target_path,
0, error, 0); 0, error, 0);
} }
...@@ -4268,8 +4268,8 @@ xfs_alloc_file_space( ...@@ -4268,8 +4268,8 @@ xfs_alloc_file_space(
DM_EVENT_ENABLED(XFS_MTOVFS(mp), ip, DM_EVENT_NOSPACE)) { DM_EVENT_ENABLED(XFS_MTOVFS(mp), ip, DM_EVENT_NOSPACE)) {
error = XFS_SEND_NAMESP(mp, DM_EVENT_NOSPACE, error = XFS_SEND_NAMESP(mp, DM_EVENT_NOSPACE,
XFS_ITOBHV(ip), DM_RIGHT_NULL, XFS_ITOV(ip), DM_RIGHT_NULL,
XFS_ITOBHV(ip), DM_RIGHT_NULL, XFS_ITOV(ip), DM_RIGHT_NULL,
NULL, NULL, 0, 0, 0); /* Delay flag intentionally unused */ NULL, NULL, 0, 0, 0); /* Delay flag intentionally unused */
if (error == 0) if (error == 0)
goto retry; /* Maybe DMAPI app. has made space */ goto retry; /* Maybe DMAPI app. has made space */
......
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