int RUMP_VOP_DELETEEXTATTR(struct vnode *vp, int attrnamespace, const char *name, struct kauth_cred *cred) { int error; rump_schedule(); error = VOP_DELETEEXTATTR(vp, attrnamespace, name, cred); rump_unschedule(); return error; }
int vn_extattr_rm(struct vnode *vp, int ioflg, int attrnamespace, const char *attrname, struct lwp *l) { int error; if ((ioflg & IO_NODELOCKED) == 0) { vn_lock(vp, LK_EXCLUSIVE | LK_RETRY); } error = VOP_DELETEEXTATTR(vp, attrnamespace, attrname, NULL); if (error == EOPNOTSUPP) error = VOP_SETEXTATTR(vp, attrnamespace, attrname, NULL, NULL); if ((ioflg & IO_NODELOCKED) == 0) { VOP_UNLOCK(vp); } return (error); }