diff --git a/sys/kern/vfs_subr.c b/sys/kern/vfs_subr.c --- a/sys/kern/vfs_subr.c +++ b/sys/kern/vfs_subr.c @@ -6224,6 +6224,7 @@ a = ap; dvp = a->a_dvp; vp = a->a_vp; + vfs_notify_upper(vp, VFS_NOTIFY_UPPER_UNLINK); vn_seqc_write_begin(dvp); vn_seqc_write_begin(vp); } @@ -6292,6 +6293,7 @@ a = ap; dvp = a->a_dvp; vp = a->a_vp; + vfs_notify_upper(vp, VFS_NOTIFY_UPPER_UNLINK); vn_seqc_write_begin(dvp); vn_seqc_write_begin(vp); } diff --git a/sys/kern/vfs_syscalls.c b/sys/kern/vfs_syscalls.c --- a/sys/kern/vfs_syscalls.c +++ b/sys/kern/vfs_syscalls.c @@ -2034,7 +2034,6 @@ if (error != 0) goto out; #endif - vfs_notify_upper(vp, VFS_NOTIFY_UPPER_UNLINK); error = VOP_REMOVE(nd.ni_dvp, vp, &nd.ni_cnd); #ifdef MAC out: @@ -4002,7 +4001,6 @@ goto fdout; goto restart; } - vfs_notify_upper(vp, VFS_NOTIFY_UPPER_UNLINK); error = VOP_RMDIR(nd.ni_dvp, nd.ni_vp, &nd.ni_cnd); vn_finished_write(mp); out: