#include <async_sess.h>
#include <fibril_synch.h>
#include <adt/list.h>
#include <adt/hash_table.h>
#include <malloc.h>
#include <errno.h>
#include <assert.h>
#include <async.h>
#include "private/async_sess.h"
Go to the source code of this file.
Data Structures | |
struct | conn_node_t |
An inactive open connection. More... | |
Functions | |
void | __async_sess_init (void) |
Initialize the async_sess subsystem. | |
int | async_exchange_begin (async_sess_t *sess) |
Start new exchange in a session. | |
void | async_exchange_end (async_sess_t *sess, int data_phone) |
Finish an exchange. | |
void | async_session_create (async_sess_t *sess, int phone, sysarg_t arg1) |
Create a session. | |
void | async_session_destroy (async_sess_t *sess) |
Destroy a session. | |
static void | conn_node_initialize (conn_node_t *conn) |
static | FIBRIL_CONDVAR_INITIALIZE (avail_phone_cv) |
Condition variable used to wait for a phone to become available. | |
static | LIST_INITIALIZE (session_list_head) |
List of all open sessions. | |
static | LIST_INITIALIZE (inactive_conn_head) |
List of all currently inactive connections. | |
Variables | |
static fibril_mutex_t | async_sess_mutex |
Mutex protecting the inactive_conn_head list, the session list and the avail_phone condition variable. |
Definition in file async_sess.c.