Lines Matching refs:server

508 	door_server_t	*st;		/* server thread door_data */
512 /* destructor for data returned by a kernel server */
593 * Check for in-kernel door server.
610 * Call kernel door server. Arguments are passed and
614 * structure pointers. It's the server function's
619 * files. When a reference is passed to a kernel server,
620 * it is the server's responsibility to release the reference
621 * (by calling closef). When the server includes a
623 * the call (the server must duplicate the reference if
664 * Get a server thread from the target domain
679 * Move data from client to server
723 * If the server has finished processing our call,
725 * will have changed. If the server hasn't finished
752 * Return from stop(), server exit...
754 * Note that the server could have done a
757 * is updated by the server.
775 * Can't exit if the server is currently copying
782 * If the server has not processed our message, free the
816 * If server returned results successfully, then we've
829 * returning data from a kernel server.
1117 * server thread.
1433 /* Put ourselves on the available server thread list */
1482 * encountered while trying to pass args to the server
1711 * Bind the current lwp to the server thread pool associated with 'did'
1746 * Unbind the current lwp from it's server thread pool
1801 * Return an available thread for this server. A NULL return value indicates
1828 * We search the thread pool, looking for a server thread
1869 * shuttle. Take it off the list of available server threads
1896 * Put a server thread back in the pool.
1919 /* If someone is waiting for a server thread, wake him up */
1924 * Remove a server thread from the pool if present.
1994 * If we are an active door server, notify our
2126 * Deliver queued unrefs to appropriate door server.
2184 * Deliver queued unrefs to kernel door server.
2238 struct proc *server = d->door_target;
2243 if (server == NULL)
2272 for (dp = server->p_unref_list; dp != NULL;
2284 d->door_ulist = server->p_unref_list;
2285 server->p_unref_list = d;
2286 cv_broadcast(&server->p_unref_cv);
2294 * For EOVERFLOW, we must clean up the server's door descriptors.
2424 * Transfer arguments from the client to the server.
2427 door_args(kthread_t *server, int is_private)
2429 door_server_t *st = DOOR_SERVER(server->t_door);
2445 error = door_layout(server, ct->d_args.data_size, ndid, is_private);
2480 as = ttoproc(server)->p_as;
2487 * Copy data directly into server. We proceed
2580 * Transfer arguments from a user client to a kernel server. This copies in
2582 * other data, letting the kernel server deal with that (to avoid needing
2654 * and for data returned by a door_call to a kernel server.
2723 * Move the results from the server to the client
3079 * if they are returned by the server. The caller is responsible
3093 door_server_t *st; /* server thread door_data */
3131 /* Can't do an upcall to a kernel server */
3148 * Get a server thread from the target domain
3168 * Move data from client to server
3218 * If the server has finished processing our call,
3220 * will have changed. If the server hasn't finished
3246 * Return from stop(), server exit...
3248 * Note that the server could have done a
3251 * is updated by the server.
3270 * Can't exit if the server is currently copying
3299 * If server returned results successfully, then we've
3355 * process is a server.
3397 * door_ki_upcall invokes a user-level door server from the kernel, with
3407 * door_ki_upcall_limited invokes a user-level door server from the
3428 * Function call to create a "kernel" door server. A kernel door
3429 * server provides a way for a user-level process to invoke a function
3431 * view, a kernel door server looks the same as a user-level one
3432 * (except the server pid is 0). Unlike normal door calls, the