Lines Matching refs:rctx
591 mcp_rcontext_t *rctx = p->rctx; in proxy_return_rctx_cb() local
592 lua_rotate(rctx->Lc, 1, 1); in proxy_return_rctx_cb()
593 lua_settop(rctx->Lc, 1); in proxy_return_rctx_cb()
595 mc_resp *resp = rctx->resp; in proxy_return_rctx_cb()
597 proxy_run_rcontext(rctx); in proxy_return_rctx_cb()
598 mcp_funcgen_return_rctx(rctx); in proxy_return_rctx_cb()
694 mcp_rcontext_t *rctx = c->proxy_rctx; in proxy_cleanup_conn() local
695 assert(rctx->pending_reqs == 1); in proxy_cleanup_conn()
696 rctx->pending_reqs = 0; in proxy_cleanup_conn()
698 mcp_funcgen_return_rctx(rctx); in proxy_cleanup_conn()
717 mcp_rcontext_t *rctx = c->proxy_rctx; in complete_nread_proxy() local
718 mcp_request_t *rq = rctx->request; in complete_nread_proxy()
725 rctx->pending_reqs--; in complete_nread_proxy()
726 mcp_funcgen_return_rctx(rctx); in complete_nread_proxy()
741 proxy_run_rcontext(rctx); in complete_nread_proxy()
742 mcp_funcgen_return_rctx(rctx); in complete_nread_proxy()
817 static void _proxy_run_rcontext_queues(mcp_rcontext_t *rctx) { in _proxy_run_rcontext_queues() argument
818 for (int x = 0; x < rctx->fgen->max_queues; x++) { in _proxy_run_rcontext_queues()
819 mcp_run_rcontext_handle(rctx, x); in _proxy_run_rcontext_queues()
893 int proxy_run_rcontext(mcp_rcontext_t *rctx) { in proxy_run_rcontext() argument
895 lua_State *Lc = rctx->Lc; in proxy_run_rcontext()
896 assert(rctx->lua_narg != 0); in proxy_run_rcontext()
897 int cores = lua_resume(Lc, NULL, rctx->lua_narg, &nresults); in proxy_run_rcontext()
898 rctx->lua_narg = 1; // reset to default since not-default is uncommon. in proxy_run_rcontext()
900 mc_resp *resp = rctx->resp; in proxy_run_rcontext()
904 if (!rctx->parent) { in proxy_run_rcontext()
942 rctx->pending_reqs--; in proxy_run_rcontext()
953 if (rctx->parent) { in proxy_run_rcontext()
955 rctx->pending_reqs--; in proxy_run_rcontext()
958 res = mcplib_internal_run(rctx); in proxy_run_rcontext()
964 proxy_run_rcontext(rctx); in proxy_run_rcontext()
977 _proxy_run_rcontext_queues(rctx); in proxy_run_rcontext()
991 if (!rctx->parent) { in proxy_run_rcontext()
994 rctx->pending_reqs--; in proxy_run_rcontext()
1170 mcp_rcontext_t *rctx = mcp_funcgen_start(L, hook_ref.ctx, &pr); in proxy_process_command() local
1171 if (rctx == NULL) { in proxy_process_command()
1180 mcp_set_request(&pr, rctx->request, command, cmdlen); in proxy_process_command()
1181 rctx->request->ascii_multiget = multiget; in proxy_process_command()
1182 rctx->c = c; in proxy_process_command()
1183 rctx->conn_fd = c->sfd; in proxy_process_command()
1184 rctx->pending_reqs++; // seed counter with the "main" request in proxy_process_command()
1187 rctx->resp = c->resp; in proxy_process_command()
1192 lua_rawgeti(rctx->Lc, LUA_REGISTRYINDEX, rctx->function_ref); in proxy_process_command()
1193 lua_rawgeti(rctx->Lc, LUA_REGISTRYINDEX, rctx->request_ref); in proxy_process_command()
1207 rctx->pending_reqs--; in proxy_process_command()
1208 mcp_funcgen_return_rctx(rctx); in proxy_process_command()
1221 c->proxy_rctx = rctx; in proxy_process_command()
1227 proxy_run_rcontext(rctx); in proxy_process_command()
1228 mcp_funcgen_return_rctx(rctx); in proxy_process_command()
1306 io_pending_proxy_t *mcp_queue_rctx_io(mcp_rcontext_t *rctx, mcp_request_t *rq, mcp_backend_t *be, m… in mcp_queue_rctx_io() argument
1307 conn *c = rctx->c; in mcp_queue_rctx_io()
1312 proxy_lua_error(rctx->Lc, "out of memory allocating from IO cache"); in mcp_queue_rctx_io()
1331 p->rctx = rctx; in mcp_queue_rctx_io()
1343 while (rctx->parent) { in mcp_queue_rctx_io()
1344 rctx = rctx->parent; in mcp_queue_rctx_io()
1347 if (!rctx->first_queue) { in mcp_queue_rctx_io()
1348 rctx->first_queue = true; in mcp_queue_rctx_io()
1614 mcp_rcontext_t *rctx = lua_touserdata(L, -1); in dump_funcgen() local
1615 if (rctx != NULL) { in dump_funcgen()
1616 fprintf(stderr, "-- slot: [%p]\n", (void *)rctx); in dump_funcgen()