Module Name: src Committed By: pooka Date: Thu Oct 15 00:32:11 UTC 2009
Modified Files: src/sys/rump/include/rump: rumpvnode_if.h src/sys/rump/librump/rumpvfs: rumpvnode_if.c Log Message: regen: scheduling points To generate a diff of this commit: cvs rdiff -u -r1.3 -r1.4 src/sys/rump/include/rump/rumpvnode_if.h cvs rdiff -u -r1.2 -r1.3 src/sys/rump/librump/rumpvfs/rumpvnode_if.c Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.
Modified files: Index: src/sys/rump/include/rump/rumpvnode_if.h diff -u src/sys/rump/include/rump/rumpvnode_if.h:1.3 src/sys/rump/include/rump/rumpvnode_if.h:1.4 --- src/sys/rump/include/rump/rumpvnode_if.h:1.3 Tue Sep 29 11:54:52 2009 +++ src/sys/rump/include/rump/rumpvnode_if.h Thu Oct 15 00:32:11 2009 @@ -1,4 +1,4 @@ -/* $NetBSD: rumpvnode_if.h,v 1.3 2009/09/29 11:54:52 pooka Exp $ */ +/* $NetBSD: rumpvnode_if.h,v 1.4 2009/10/15 00:32:11 pooka Exp $ */ /* * Warning: DO NOT EDIT! This file is automatically generated! @@ -7,7 +7,7 @@ * Created from the file: * NetBSD: vnode_if.src,v 1.58 2008/11/15 19:08:12 pooka Exp * by the script: - * NetBSD: vnode_if.sh,v 1.52 2009/09/29 11:51:02 pooka Exp + * NetBSD: vnode_if.sh,v 1.53 2009/10/15 00:29:40 pooka Exp */ /* Index: src/sys/rump/librump/rumpvfs/rumpvnode_if.c diff -u src/sys/rump/librump/rumpvfs/rumpvnode_if.c:1.2 src/sys/rump/librump/rumpvfs/rumpvnode_if.c:1.3 --- src/sys/rump/librump/rumpvfs/rumpvnode_if.c:1.2 Tue Sep 29 11:54:52 2009 +++ src/sys/rump/librump/rumpvfs/rumpvnode_if.c Thu Oct 15 00:32:11 2009 @@ -1,4 +1,4 @@ -/* $NetBSD: rumpvnode_if.c,v 1.2 2009/09/29 11:54:52 pooka Exp $ */ +/* $NetBSD: rumpvnode_if.c,v 1.3 2009/10/15 00:32:11 pooka Exp $ */ /* * Warning: DO NOT EDIT! This file is automatically generated! @@ -7,7 +7,7 @@ * Created from the file: * NetBSD: vnode_if.src,v 1.58 2008/11/15 19:08:12 pooka Exp * by the script: - * NetBSD: vnode_if.sh,v 1.52 2009/09/29 11:51:02 pooka Exp + * NetBSD: vnode_if.sh,v 1.53 2009/10/15 00:29:40 pooka Exp */ /* @@ -40,7 +40,7 @@ */ #include <sys/cdefs.h> -__KERNEL_RCSID(0, "$NetBSD: rumpvnode_if.c,v 1.2 2009/09/29 11:54:52 pooka Exp $"); +__KERNEL_RCSID(0, "$NetBSD: rumpvnode_if.c,v 1.3 2009/10/15 00:32:11 pooka Exp $"); #include <sys/param.h> #include <sys/mount.h> @@ -48,6 +48,7 @@ #include <sys/vnode.h> #include <sys/lock.h> #include <rump/rumpvnode_if.h> +#include "rump_private.h" const struct vnodeop_desc rump_vop_default_desc = { 0, @@ -85,9 +86,11 @@ a.a_desc = VDESC(rump_vop_bwrite); a.a_bp = bp; mpsafe = (bp->b_vp->v_vflag & VV_MPSAFE); + rump_schedule(); if (!mpsafe) { KERNEL_LOCK(1, curlwp); } error = (VCALL(bp->b_vp, VOFFSET(rump_vop_bwrite), &a)); if (!mpsafe) { KERNEL_UNLOCK_ONE(curlwp); } + rump_unschedule(); return error; } @@ -120,9 +123,11 @@ a.a_vpp = vpp; a.a_cnp = cnp; mpsafe = (dvp->v_vflag & VV_MPSAFE); + rump_schedule(); if (!mpsafe) { KERNEL_LOCK(1, curlwp); } error = (VCALL(dvp, VOFFSET(rump_vop_lookup), &a)); if (!mpsafe) { KERNEL_UNLOCK_ONE(curlwp); } + rump_unschedule(); #ifdef DIAGNOSTIC if (error == 0) KASSERT((*vpp)->v_size != VSIZENOTSET @@ -160,9 +165,11 @@ a.a_cnp = cnp; a.a_vap = vap; mpsafe = (dvp->v_vflag & VV_MPSAFE); + rump_schedule(); if (!mpsafe) { KERNEL_LOCK(1, curlwp); } error = (VCALL(dvp, VOFFSET(rump_vop_create), &a)); if (!mpsafe) { KERNEL_UNLOCK_ONE(curlwp); } + rump_unschedule(); #ifdef DIAGNOSTIC if (error == 0) KASSERT((*vpp)->v_size != VSIZENOTSET @@ -200,9 +207,11 @@ a.a_cnp = cnp; a.a_vap = vap; mpsafe = (dvp->v_vflag & VV_MPSAFE); + rump_schedule(); if (!mpsafe) { KERNEL_LOCK(1, curlwp); } error = (VCALL(dvp, VOFFSET(rump_vop_mknod), &a)); if (!mpsafe) { KERNEL_UNLOCK_ONE(curlwp); } + rump_unschedule(); #ifdef DIAGNOSTIC if (error == 0) KASSERT((*vpp)->v_size != VSIZENOTSET @@ -238,9 +247,11 @@ a.a_mode = mode; a.a_cred = cred; mpsafe = (vp->v_vflag & VV_MPSAFE); + rump_schedule(); if (!mpsafe) { KERNEL_LOCK(1, curlwp); } error = (VCALL(vp, VOFFSET(rump_vop_open), &a)); if (!mpsafe) { KERNEL_UNLOCK_ONE(curlwp); } + rump_unschedule(); return error; } @@ -271,9 +282,11 @@ a.a_fflag = fflag; a.a_cred = cred; mpsafe = (vp->v_vflag & VV_MPSAFE); + rump_schedule(); if (!mpsafe) { KERNEL_LOCK(1, curlwp); } error = (VCALL(vp, VOFFSET(rump_vop_close), &a)); if (!mpsafe) { KERNEL_UNLOCK_ONE(curlwp); } + rump_unschedule(); return error; } @@ -304,9 +317,11 @@ a.a_mode = mode; a.a_cred = cred; mpsafe = (vp->v_vflag & VV_MPSAFE); + rump_schedule(); if (!mpsafe) { KERNEL_LOCK(1, curlwp); } error = (VCALL(vp, VOFFSET(rump_vop_access), &a)); if (!mpsafe) { KERNEL_UNLOCK_ONE(curlwp); } + rump_unschedule(); return error; } @@ -337,9 +352,11 @@ a.a_vap = vap; a.a_cred = cred; mpsafe = (vp->v_vflag & VV_MPSAFE); + rump_schedule(); if (!mpsafe) { KERNEL_LOCK(1, curlwp); } error = (VCALL(vp, VOFFSET(rump_vop_getattr), &a)); if (!mpsafe) { KERNEL_UNLOCK_ONE(curlwp); } + rump_unschedule(); return error; } @@ -370,9 +387,11 @@ a.a_vap = vap; a.a_cred = cred; mpsafe = (vp->v_vflag & VV_MPSAFE); + rump_schedule(); if (!mpsafe) { KERNEL_LOCK(1, curlwp); } error = (VCALL(vp, VOFFSET(rump_vop_setattr), &a)); if (!mpsafe) { KERNEL_UNLOCK_ONE(curlwp); } + rump_unschedule(); return error; } @@ -405,9 +424,11 @@ a.a_ioflag = ioflag; a.a_cred = cred; mpsafe = (vp->v_vflag & VV_MPSAFE); + rump_schedule(); if (!mpsafe) { KERNEL_LOCK(1, curlwp); } error = (VCALL(vp, VOFFSET(rump_vop_read), &a)); if (!mpsafe) { KERNEL_UNLOCK_ONE(curlwp); } + rump_unschedule(); return error; } @@ -440,9 +461,11 @@ a.a_ioflag = ioflag; a.a_cred = cred; mpsafe = (vp->v_vflag & VV_MPSAFE); + rump_schedule(); if (!mpsafe) { KERNEL_LOCK(1, curlwp); } error = (VCALL(vp, VOFFSET(rump_vop_write), &a)); if (!mpsafe) { KERNEL_UNLOCK_ONE(curlwp); } + rump_unschedule(); return error; } @@ -477,9 +500,11 @@ a.a_fflag = fflag; a.a_cred = cred; mpsafe = (vp->v_vflag & VV_MPSAFE); + rump_schedule(); if (!mpsafe) { KERNEL_LOCK(1, curlwp); } error = (VCALL(vp, VOFFSET(rump_vop_ioctl), &a)); if (!mpsafe) { KERNEL_UNLOCK_ONE(curlwp); } + rump_unschedule(); return error; } @@ -514,9 +539,11 @@ a.a_fflag = fflag; a.a_cred = cred; mpsafe = (vp->v_vflag & VV_MPSAFE); + rump_schedule(); if (!mpsafe) { KERNEL_LOCK(1, curlwp); } error = (VCALL(vp, VOFFSET(rump_vop_fcntl), &a)); if (!mpsafe) { KERNEL_UNLOCK_ONE(curlwp); } + rump_unschedule(); return error; } @@ -545,9 +572,11 @@ a.a_vp = vp; a.a_events = events; mpsafe = (vp->v_vflag & VV_MPSAFE); + rump_schedule(); if (!mpsafe) { KERNEL_LOCK(1, curlwp); } error = (VCALL(vp, VOFFSET(rump_vop_poll), &a)); if (!mpsafe) { KERNEL_UNLOCK_ONE(curlwp); } + rump_unschedule(); return error; } @@ -576,9 +605,11 @@ a.a_vp = vp; a.a_kn = kn; mpsafe = (vp->v_vflag & VV_MPSAFE); + rump_schedule(); if (!mpsafe) { KERNEL_LOCK(1, curlwp); } error = (VCALL(vp, VOFFSET(rump_vop_kqfilter), &a)); if (!mpsafe) { KERNEL_UNLOCK_ONE(curlwp); } + rump_unschedule(); return error; } @@ -607,9 +638,11 @@ a.a_vp = vp; a.a_flags = flags; mpsafe = (vp->v_vflag & VV_MPSAFE); + rump_schedule(); if (!mpsafe) { KERNEL_LOCK(1, curlwp); } error = (VCALL(vp, VOFFSET(rump_vop_revoke), &a)); if (!mpsafe) { KERNEL_UNLOCK_ONE(curlwp); } + rump_unschedule(); return error; } @@ -640,9 +673,11 @@ a.a_prot = prot; a.a_cred = cred; mpsafe = (vp->v_vflag & VV_MPSAFE); + rump_schedule(); if (!mpsafe) { KERNEL_LOCK(1, curlwp); } error = (VCALL(vp, VOFFSET(rump_vop_mmap), &a)); if (!mpsafe) { KERNEL_UNLOCK_ONE(curlwp); } + rump_unschedule(); return error; } @@ -677,9 +712,11 @@ a.a_offlo = offlo; a.a_offhi = offhi; mpsafe = (vp->v_vflag & VV_MPSAFE); + rump_schedule(); if (!mpsafe) { KERNEL_LOCK(1, curlwp); } error = (VCALL(vp, VOFFSET(rump_vop_fsync), &a)); if (!mpsafe) { KERNEL_UNLOCK_ONE(curlwp); } + rump_unschedule(); return error; } @@ -712,9 +749,11 @@ a.a_newoff = newoff; a.a_cred = cred; mpsafe = (vp->v_vflag & VV_MPSAFE); + rump_schedule(); if (!mpsafe) { KERNEL_LOCK(1, curlwp); } error = (VCALL(vp, VOFFSET(rump_vop_seek), &a)); if (!mpsafe) { KERNEL_UNLOCK_ONE(curlwp); } + rump_unschedule(); return error; } @@ -746,9 +785,11 @@ a.a_vp = vp; a.a_cnp = cnp; mpsafe = (dvp->v_vflag & VV_MPSAFE); + rump_schedule(); if (!mpsafe) { KERNEL_LOCK(1, curlwp); } error = (VCALL(dvp, VOFFSET(rump_vop_remove), &a)); if (!mpsafe) { KERNEL_UNLOCK_ONE(curlwp); } + rump_unschedule(); return error; } @@ -780,9 +821,11 @@ a.a_vp = vp; a.a_cnp = cnp; mpsafe = (dvp->v_vflag & VV_MPSAFE); + rump_schedule(); if (!mpsafe) { KERNEL_LOCK(1, curlwp); } error = (VCALL(dvp, VOFFSET(rump_vop_link), &a)); if (!mpsafe) { KERNEL_UNLOCK_ONE(curlwp); } + rump_unschedule(); return error; } @@ -822,9 +865,11 @@ a.a_tvp = tvp; a.a_tcnp = tcnp; mpsafe = (fdvp->v_vflag & VV_MPSAFE); + rump_schedule(); if (!mpsafe) { KERNEL_LOCK(1, curlwp); } error = (VCALL(fdvp, VOFFSET(rump_vop_rename), &a)); if (!mpsafe) { KERNEL_UNLOCK_ONE(curlwp); } + rump_unschedule(); return error; } @@ -857,9 +902,11 @@ a.a_cnp = cnp; a.a_vap = vap; mpsafe = (dvp->v_vflag & VV_MPSAFE); + rump_schedule(); if (!mpsafe) { KERNEL_LOCK(1, curlwp); } error = (VCALL(dvp, VOFFSET(rump_vop_mkdir), &a)); if (!mpsafe) { KERNEL_UNLOCK_ONE(curlwp); } + rump_unschedule(); #ifdef DIAGNOSTIC if (error == 0) KASSERT((*vpp)->v_size != VSIZENOTSET @@ -896,9 +943,11 @@ a.a_vp = vp; a.a_cnp = cnp; mpsafe = (dvp->v_vflag & VV_MPSAFE); + rump_schedule(); if (!mpsafe) { KERNEL_LOCK(1, curlwp); } error = (VCALL(dvp, VOFFSET(rump_vop_rmdir), &a)); if (!mpsafe) { KERNEL_UNLOCK_ONE(curlwp); } + rump_unschedule(); return error; } @@ -933,9 +982,11 @@ a.a_vap = vap; a.a_target = target; mpsafe = (dvp->v_vflag & VV_MPSAFE); + rump_schedule(); if (!mpsafe) { KERNEL_LOCK(1, curlwp); } error = (VCALL(dvp, VOFFSET(rump_vop_symlink), &a)); if (!mpsafe) { KERNEL_UNLOCK_ONE(curlwp); } + rump_unschedule(); #ifdef DIAGNOSTIC if (error == 0) KASSERT((*vpp)->v_size != VSIZENOTSET @@ -977,9 +1028,11 @@ a.a_cookies = cookies; a.a_ncookies = ncookies; mpsafe = (vp->v_vflag & VV_MPSAFE); + rump_schedule(); if (!mpsafe) { KERNEL_LOCK(1, curlwp); } error = (VCALL(vp, VOFFSET(rump_vop_readdir), &a)); if (!mpsafe) { KERNEL_UNLOCK_ONE(curlwp); } + rump_unschedule(); return error; } @@ -1010,9 +1063,11 @@ a.a_uio = uio; a.a_cred = cred; mpsafe = (vp->v_vflag & VV_MPSAFE); + rump_schedule(); if (!mpsafe) { KERNEL_LOCK(1, curlwp); } error = (VCALL(vp, VOFFSET(rump_vop_readlink), &a)); if (!mpsafe) { KERNEL_UNLOCK_ONE(curlwp); } + rump_unschedule(); return error; } @@ -1041,9 +1096,11 @@ a.a_dvp = dvp; a.a_cnp = cnp; mpsafe = (dvp->v_vflag & VV_MPSAFE); + rump_schedule(); if (!mpsafe) { KERNEL_LOCK(1, curlwp); } error = (VCALL(dvp, VOFFSET(rump_vop_abortop), &a)); if (!mpsafe) { KERNEL_UNLOCK_ONE(curlwp); } + rump_unschedule(); return error; } @@ -1072,9 +1129,11 @@ a.a_vp = vp; a.a_recycle = recycle; mpsafe = (vp->v_vflag & VV_MPSAFE); + rump_schedule(); if (!mpsafe) { KERNEL_LOCK(1, curlwp); } error = (VCALL(vp, VOFFSET(rump_vop_inactive), &a)); if (!mpsafe) { KERNEL_UNLOCK_ONE(curlwp); } + rump_unschedule(); return error; } @@ -1101,9 +1160,11 @@ a.a_desc = VDESC(rump_vop_reclaim); a.a_vp = vp; mpsafe = (vp->v_vflag & VV_MPSAFE); + rump_schedule(); if (!mpsafe) { KERNEL_LOCK(1, curlwp); } error = (VCALL(vp, VOFFSET(rump_vop_reclaim), &a)); if (!mpsafe) { KERNEL_UNLOCK_ONE(curlwp); } + rump_unschedule(); return error; } @@ -1132,9 +1193,11 @@ a.a_vp = vp; a.a_flags = flags; mpsafe = (vp->v_vflag & VV_MPSAFE); + rump_schedule(); if (!mpsafe) { KERNEL_LOCK(1, curlwp); } error = (VCALL(vp, VOFFSET(rump_vop_lock), &a)); if (!mpsafe) { KERNEL_UNLOCK_ONE(curlwp); } + rump_unschedule(); return error; } @@ -1163,9 +1226,11 @@ a.a_vp = vp; a.a_flags = flags; mpsafe = (vp->v_vflag & VV_MPSAFE); + rump_schedule(); if (!mpsafe) { KERNEL_LOCK(1, curlwp); } error = (VCALL(vp, VOFFSET(rump_vop_unlock), &a)); if (!mpsafe) { KERNEL_UNLOCK_ONE(curlwp); } + rump_unschedule(); return error; } @@ -1200,9 +1265,11 @@ a.a_bnp = bnp; a.a_runp = runp; mpsafe = (vp->v_vflag & VV_MPSAFE); + rump_schedule(); if (!mpsafe) { KERNEL_LOCK(1, curlwp); } error = (VCALL(vp, VOFFSET(rump_vop_bmap), &a)); if (!mpsafe) { KERNEL_UNLOCK_ONE(curlwp); } + rump_unschedule(); return error; } @@ -1231,9 +1298,11 @@ a.a_vp = vp; a.a_bp = bp; mpsafe = (vp->v_vflag & VV_MPSAFE); + rump_schedule(); if (!mpsafe) { KERNEL_LOCK(1, curlwp); } error = (VCALL(vp, VOFFSET(rump_vop_strategy), &a)); if (!mpsafe) { KERNEL_UNLOCK_ONE(curlwp); } + rump_unschedule(); return error; } @@ -1260,9 +1329,11 @@ a.a_desc = VDESC(rump_vop_print); a.a_vp = vp; mpsafe = (vp->v_vflag & VV_MPSAFE); + rump_schedule(); if (!mpsafe) { KERNEL_LOCK(1, curlwp); } error = (VCALL(vp, VOFFSET(rump_vop_print), &a)); if (!mpsafe) { KERNEL_UNLOCK_ONE(curlwp); } + rump_unschedule(); return error; } @@ -1289,9 +1360,11 @@ a.a_desc = VDESC(rump_vop_islocked); a.a_vp = vp; mpsafe = (vp->v_vflag & VV_MPSAFE); + rump_schedule(); if (!mpsafe) { KERNEL_LOCK(1, curlwp); } error = (VCALL(vp, VOFFSET(rump_vop_islocked), &a)); if (!mpsafe) { KERNEL_UNLOCK_ONE(curlwp); } + rump_unschedule(); return error; } @@ -1322,9 +1395,11 @@ a.a_name = name; a.a_retval = retval; mpsafe = (vp->v_vflag & VV_MPSAFE); + rump_schedule(); if (!mpsafe) { KERNEL_LOCK(1, curlwp); } error = (VCALL(vp, VOFFSET(rump_vop_pathconf), &a)); if (!mpsafe) { KERNEL_UNLOCK_ONE(curlwp); } + rump_unschedule(); return error; } @@ -1359,9 +1434,11 @@ a.a_fl = fl; a.a_flags = flags; mpsafe = (vp->v_vflag & VV_MPSAFE); + rump_schedule(); if (!mpsafe) { KERNEL_LOCK(1, curlwp); } error = (VCALL(vp, VOFFSET(rump_vop_advlock), &a)); if (!mpsafe) { KERNEL_UNLOCK_ONE(curlwp); } + rump_unschedule(); return error; } @@ -1392,9 +1469,11 @@ a.a_cnp = cnp; a.a_flags = flags; mpsafe = (dvp->v_vflag & VV_MPSAFE); + rump_schedule(); if (!mpsafe) { KERNEL_LOCK(1, curlwp); } error = (VCALL(dvp, VOFFSET(rump_vop_whiteout), &a)); if (!mpsafe) { KERNEL_UNLOCK_ONE(curlwp); } + rump_unschedule(); return error; } @@ -1435,9 +1514,11 @@ a.a_advice = advice; a.a_flags = flags; mpsafe = (vp->v_vflag & VV_MPSAFE); + rump_schedule(); if (!mpsafe) { KERNEL_LOCK(1, curlwp); } error = (VCALL(vp, VOFFSET(rump_vop_getpages), &a)); if (!mpsafe) { KERNEL_UNLOCK_ONE(curlwp); } + rump_unschedule(); return error; } @@ -1470,9 +1551,11 @@ a.a_offhi = offhi; a.a_flags = flags; mpsafe = (vp->v_vflag & VV_MPSAFE); + rump_schedule(); if (!mpsafe) { KERNEL_LOCK(1, curlwp); } error = (VCALL(vp, VOFFSET(rump_vop_putpages), &a)); if (!mpsafe) { KERNEL_UNLOCK_ONE(curlwp); } + rump_unschedule(); return error; } @@ -1503,9 +1586,11 @@ a.a_commit = commit; a.a_cred = cred; mpsafe = (vp->v_vflag & VV_MPSAFE); + rump_schedule(); if (!mpsafe) { KERNEL_LOCK(1, curlwp); } error = (VCALL(vp, VOFFSET(rump_vop_closeextattr), &a)); if (!mpsafe) { KERNEL_UNLOCK_ONE(curlwp); } + rump_unschedule(); return error; } @@ -1542,9 +1627,11 @@ a.a_size = size; a.a_cred = cred; mpsafe = (vp->v_vflag & VV_MPSAFE); + rump_schedule(); if (!mpsafe) { KERNEL_LOCK(1, curlwp); } error = (VCALL(vp, VOFFSET(rump_vop_getextattr), &a)); if (!mpsafe) { KERNEL_UNLOCK_ONE(curlwp); } + rump_unschedule(); return error; } @@ -1579,9 +1666,11 @@ a.a_size = size; a.a_cred = cred; mpsafe = (vp->v_vflag & VV_MPSAFE); + rump_schedule(); if (!mpsafe) { KERNEL_LOCK(1, curlwp); } error = (VCALL(vp, VOFFSET(rump_vop_listextattr), &a)); if (!mpsafe) { KERNEL_UNLOCK_ONE(curlwp); } + rump_unschedule(); return error; } @@ -1610,9 +1699,11 @@ a.a_vp = vp; a.a_cred = cred; mpsafe = (vp->v_vflag & VV_MPSAFE); + rump_schedule(); if (!mpsafe) { KERNEL_LOCK(1, curlwp); } error = (VCALL(vp, VOFFSET(rump_vop_openextattr), &a)); if (!mpsafe) { KERNEL_UNLOCK_ONE(curlwp); } + rump_unschedule(); return error; } @@ -1645,9 +1736,11 @@ a.a_name = name; a.a_cred = cred; mpsafe = (vp->v_vflag & VV_MPSAFE); + rump_schedule(); if (!mpsafe) { KERNEL_LOCK(1, curlwp); } error = (VCALL(vp, VOFFSET(rump_vop_deleteextattr), &a)); if (!mpsafe) { KERNEL_UNLOCK_ONE(curlwp); } + rump_unschedule(); return error; } @@ -1682,9 +1775,11 @@ a.a_uio = uio; a.a_cred = cred; mpsafe = (vp->v_vflag & VV_MPSAFE); + rump_schedule(); if (!mpsafe) { KERNEL_LOCK(1, curlwp); } error = (VCALL(vp, VOFFSET(rump_vop_setextattr), &a)); if (!mpsafe) { KERNEL_UNLOCK_ONE(curlwp); } + rump_unschedule(); return error; }