Ignore:
Timestamp:
2011-06-08T19:01:55Z (13 years ago)
Author:
Martin Decky <martin@…>
Branches:
lfn, master, serial, ticket/834-toolchain-update, topic/msim-upgrade, topic/simplify-dev-export
Children:
0eff68e
Parents:
764d71e
Message:

new async framework with integrated exchange tracking

  • strict isolation between low-level IPC and high-level async framework with integrated exchange tracking
    • each IPC connection is represented by an async_sess_t structure
    • each IPC exchange is represented by an async_exch_t structure
    • exchange management is either based on atomic messages (EXCHANGE_ATOMIC), locking (EXCHANGE_SERIALIZE) or connection cloning (EXCHANGE_CLONE)
  • async_obsolete: temporary compatibility layer to keep old async clients working (several pieces of code are currently broken, but only non-essential functionality)
  • IPC_M_PHONE_HANGUP is now method no. 0 (for elegant boolean evaluation)
  • IPC_M_DEBUG_ALL has been renamed to IPC_M_DEBUG
  • IPC_M_PING has been removed (VFS protocol now has VFS_IN_PING)
  • console routines in libc have been rewritten for better abstraction
  • additional use for libc-private header files (FILE structure opaque to the client)
  • various cstyle changes (typos, indentation, missing externs in header files, improved comments, etc.)
File:
1 edited

Legend:

Unmodified
Added
Removed
  • uspace/lib/net/generic/packet_remote.c

    r764d71e r79ae36dd  
    3737
    3838#include <async.h>
     39#include <async_obsolete.h>
    3940#include <errno.h>
    4041#include <ipc/packet.h>
     
    5960 * @return EOK on success.
    6061 * @return Other error codes as defined for the pm_add() function.
    61  * @return Other error codes as defined for the async_share_in_start() function.
     62 * @return Other error codes as defined for the async_obsolete_share_in_start() function.
    6263 *
    6364 */
     
    6970        int rc;
    7071       
    71         message = async_send_1(phone, NET_PACKET_GET, packet_id, &answer);
     72        message = async_obsolete_send_1(phone, NET_PACKET_GET, packet_id, &answer);
    7273
    7374        *packet = (packet_t *) as_get_mappable_page(size);
    74         rc = async_share_in_start_0_0(phone, *packet, size);
     75        rc = async_obsolete_share_in_start_0_0(phone, *packet, size);
    7576        if (rc != EOK) {
    7677                munmap(*packet, size);
     
    117118                sysarg_t size;
    118119               
    119                 rc = async_req_1_1(phone, NET_PACKET_GET_SIZE, packet_id,
     120                rc = async_obsolete_req_1_1(phone, NET_PACKET_GET_SIZE, packet_id,
    120121                    &size);
    121122                if (rc != EOK)
     
    154155        int rc;
    155156       
    156         rc = async_req_4_2(phone, NET_PACKET_CREATE_4, max_content, addr_len,
     157        rc = async_obsolete_req_4_2(phone, NET_PACKET_CREATE_4, max_content, addr_len,
    157158            max_prefix, max_suffix, &packet_id, &size);
    158159        if (rc != EOK)
     
    185186        int rc;
    186187       
    187         rc = async_req_1_2(phone, NET_PACKET_CREATE_1, content, &packet_id,
     188        rc = async_obsolete_req_1_2(phone, NET_PACKET_CREATE_1, content, &packet_id,
    188189            &size);
    189190        if (rc != EOK)
     
    212213void pq_release_remote(int phone, packet_id_t packet_id)
    213214{
    214         async_msg_1(phone, NET_PACKET_RELEASE, packet_id);
     215        async_obsolete_msg_1(phone, NET_PACKET_RELEASE, packet_id);
    215216}
    216217
Note: See TracChangeset for help on using the changeset viewer.