Lines Matching refs:func
83 void init_mondo(xcfunc_t *func, uint64_t arg1, uint64_t arg2);
239 xt_one(int cix, xcfunc_t *func, uint64_t arg1, uint64_t arg2) in xt_one() argument
244 xt_one_unchecked(cix, func, arg1, arg2); in xt_one()
252 xt_one_unchecked(int cix, xcfunc_t *func, uint64_t arg1, uint64_t arg2) in xt_one_unchecked() argument
262 ASSERT(!DMV_IS_DMV(func)); in xt_one_unchecked()
268 ASSERT((uintptr_t)func >= KERNELBASE); in xt_one_unchecked()
280 send_self_xcall(CPU, arg1, arg2, func); in xt_one_unchecked()
282 XC_TRACE(XT_ONE_SELF, &tset, func, arg1, arg2); in xt_one_unchecked()
287 XC_TRACE(XT_ONE_OTHER, &tset, func, arg1, arg2); in xt_one_unchecked()
288 init_mondo(func, arg1, arg2); in xt_one_unchecked()
299 xt_some(cpuset_t cpuset, xcfunc_t *func, uint64_t arg1, uint64_t arg2) in xt_some() argument
309 ASSERT(!DMV_IS_DMV(func)); in xt_some()
315 ASSERT((uintptr_t)func >= KERNELBASE); in xt_some()
344 send_self_xcall(CPU, arg1, arg2, func); in xt_some()
346 XC_TRACE(XT_SOME_SELF, &tset, func, arg1, arg2); in xt_some()
353 XC_TRACE(XT_SOME_OTHER, &xc_cpuset, func, arg1, arg2); in xt_some()
354 init_mondo(func, arg1, arg2); in xt_some()
365 xt_all(xcfunc_t *func, uint64_t arg1, uint64_t arg2) in xt_all() argument
375 ASSERT(!DMV_IS_DMV(func)); in xt_all()
381 ASSERT((uintptr_t)func >= KERNELBASE); in xt_all()
393 send_self_xcall(CPU, arg1, arg2, func); in xt_all()
395 XC_TRACE(XT_ALL_OTHER, &cpu_ready_set, func, arg1, arg2); in xt_all()
405 XC_TRACE(XT_ALL_SELF, &tset, func, arg1, arg2); in xt_all()
410 init_mondo(func, arg1, arg2); in xt_all()
421 xc_one(int cix, xcfunc_t *func, uint64_t arg1, uint64_t arg2) in xc_one() argument
435 ASSERT((uintptr_t)func > KERNELBASE); in xc_one()
436 ASSERT(((uintptr_t)func % PC_ALIGN) == 0); in xc_one()
447 XC_TRACE(XC_ONE_SELF, &tset, func, arg1, arg2); in xc_one()
448 (*func)(arg1, arg2); in xc_one()
460 XC_TRACE(XC_ONE_OTHER_H, &tset, func, arg1, arg2); in xc_one()
466 XC_SETUP(cix, func, arg1, arg2); in xc_one()
514 XC_TRACE(XC_ONE_OTHER, &tset, func, arg1, arg2); in xc_one()
515 XC_SETUP(cix, func, arg1, arg2); in xc_one()
548 xc_some(cpuset_t cpuset, xcfunc_t *func, uint64_t arg1, uint64_t arg2) in xc_some() argument
554 ASSERT((uintptr_t)func > KERNELBASE); in xc_some()
555 ASSERT(((uintptr_t)func % PC_ALIGN) == 0); in xc_some()
583 (*func)(arg1, arg2); in xc_some()
587 XC_TRACE(XC_SOME_SELF, &tset, func, arg1, arg2); in xc_some()
600 SEND_MBOX_ONLY(xc_cpuset, func, arg1, arg2, lcx, XC_WAIT); in xc_some()
603 XC_TRACE(XC_SOME_OTHER_H, &xc_cpuset, func, arg1, arg2); in xc_some()
627 XC_TRACE(XC_SOME_OTHER, &xc_cpuset, func, arg1, arg2); in xc_some()
629 SEND_MBOX_MONDO(xc_cpuset, func, arg1, arg2, XC_IDLE); in xc_some()
642 xc_all(xcfunc_t *func, uint64_t arg1, uint64_t arg2) in xc_all() argument
648 ASSERT((uintptr_t)func > KERNELBASE); in xc_all()
649 ASSERT(((uintptr_t)func % PC_ALIGN) == 0); in xc_all()
661 (*func)(arg1, arg2); in xc_all()
667 XC_TRACE(XC_ALL_SELF, &tset, func, arg1, arg2); in xc_all()
679 XC_TRACE(XC_ALL_OTHER_H, &xc_cpuset, func, arg1, arg2); in xc_all()
680 SEND_MBOX_ONLY(xc_cpuset, func, arg1, arg2, lcx, XC_WAIT); in xc_all()
706 XC_TRACE(XC_ALL_OTHER, &xc_cpuset, func, arg1, arg2); in xc_all()
708 SEND_MBOX_MONDO(xc_cpuset, func, arg1, arg2, XC_IDLE); in xc_all()
909 xcfunc_t *func; in xc_serv() local
920 func = xmp->xc_func; in xc_serv()
921 XC_TRACE(XC_SERV, &tset, func, xmp->xc_arg1, xmp->xc_arg2); in xc_serv()
922 if (func != NULL) { in xc_serv()
925 (*func)(arg1, arg2); in xc_serv()
928 XC_TRACE(XC_SERV, &tset, func, arg1, arg2); in xc_serv()
949 xcfunc_t *func; in xc_loop() local
994 func = xmp->xc_func; in xc_loop()
997 XC_TRACE(XC_LOOP_DOIT, &tset, func, arg1, arg2); in xc_loop()
998 if (func != NULL) in xc_loop()
999 (*func)(arg1, arg2); in xc_loop()