async_sess.c File Reference

#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.


Detailed Description

Definition in file async_sess.c.


Generated on Thu Jun 2 07:45:52 2011 for HelenOS/USB by  doxygen 1.4.7