Changeset 5da7199 in mainline for uspace/lib/c/generic


Ignore:
Timestamp:
2011-09-09T17:18:06Z (14 years ago)
Author:
Martin Decky <martin@…>
Branches:
lfn, master, serial, ticket/834-toolchain-update, topic/msim-upgrade, topic/simplify-dev-export
Children:
3781092, b7c33b0
Parents:
c69646f8
Message:

remove the obsolete async API

Location:
uspace/lib/c/generic
Files:
2 deleted
2 edited

Legend:

Unmodified
Added
Removed
  • uspace/lib/c/generic/async.c

    rc69646f8 r5da7199  
    118118#define CONN_HASH_TABLE_BUCKETS    32
    119119
     120/** Session data */
     121struct async_sess {
     122        /** List of inactive exchanges */
     123        list_t exch_list;
     124       
     125        /** Exchange management style */
     126        exch_mgmt_t mgmt;
     127       
     128        /** Session identification */
     129        int phone;
     130       
     131        /** First clone connection argument */
     132        sysarg_t arg1;
     133       
     134        /** Second clone connection argument */
     135        sysarg_t arg2;
     136       
     137        /** Third clone connection argument */
     138        sysarg_t arg3;
     139       
     140        /** Exchange mutex */
     141        fibril_mutex_t mutex;
     142       
     143        /** Number of opened exchanges */
     144        atomic_t refcnt;
     145       
     146        /** Mutex for stateful connections */
     147        fibril_mutex_t remote_state_mtx;
     148       
     149        /** Data for stateful connections */
     150        void *remote_state_data;
     151};
     152
     153/** Exchange data */
     154struct async_exch {
     155        /** Link into list of inactive exchanges */
     156        link_t sess_link;
     157       
     158        /** Link into global list of inactive exchanges */
     159        link_t global_link;
     160       
     161        /** Session pointer */
     162        async_sess_t *sess;
     163       
     164        /** Exchange identification */
     165        int phone;
     166};
     167
    120168/** Async framework global futex */
    121169atomic_t async_futex = FUTEX_INITIALIZER;
     
    134182        ipc_call_t call;
    135183} msg_t;
     184
     185/** Message data */
     186typedef struct {
     187        awaiter_t wdata;
     188       
     189        /** If reply was received. */
     190        bool done;
     191       
     192        /** Pointer to where the answer data is stored. */
     193        ipc_call_t *dataptr;
     194       
     195        sysarg_t retval;
     196} amsg_t;
    136197
    137198/* Client connection data */
  • uspace/lib/c/generic/private/async.h

    rc69646f8 r5da7199  
    4343#include <bool.h>
    4444
    45 /** Session data */
    46 struct _async_sess {
    47         /** List of inactive exchanges */
    48         list_t exch_list;
    49        
    50         /** Exchange management style */
    51         exch_mgmt_t mgmt;
    52        
    53         /** Session identification */
    54         int phone;
    55        
    56         /** First clone connection argument */
    57         sysarg_t arg1;
    58        
    59         /** Second clone connection argument */
    60         sysarg_t arg2;
    61        
    62         /** Third clone connection argument */
    63         sysarg_t arg3;
    64        
    65         /** Exchange mutex */
    66         fibril_mutex_t mutex;
    67        
    68         /** Number of opened exchanges */
    69         atomic_t refcnt;
    70        
    71         /** Mutex for stateful connections */
    72         fibril_mutex_t remote_state_mtx;
    73        
    74         /** Data for stateful connections */
    75         void *remote_state_data;
    76 };
    77 
    78 /** Exchange data */
    79 struct _async_exch {
    80         /** Link into list of inactive exchanges */
    81         link_t sess_link;
    82        
    83         /** Link into global list of inactive exchanges */
    84         link_t global_link;
    85        
    86         /** Session pointer */
    87         async_sess_t *sess;
    88        
    89         /** Exchange identification */
    90         int phone;
    91 };
    92 
    9345/** Structures of this type are used to track the timeout events. */
    9446typedef struct {
     
    12981} awaiter_t;
    13082
    131 /** Message data */
    132 typedef struct {
    133         awaiter_t wdata;
    134        
    135         /** If reply was received. */
    136         bool done;
    137        
    138         /** Pointer to where the answer data is stored. */
    139         ipc_call_t *dataptr;
    140        
    141         sysarg_t retval;
    142 } amsg_t;
    143 
    14483extern void __async_init(void);
    14584extern void async_insert_timeout(awaiter_t *);
Note: See TracChangeset for help on using the changeset viewer.