Changeset 0a8f070 in mainline for uspace/lib/c/generic/async/server.c


Ignore:
Timestamp:
2019-08-07T02:33:03Z (6 years ago)
Author:
Matthieu Riolo <matthieu.riolo@…>
Children:
fe86d9d
Parents:
103939e
git-author:
Michal Koutný <xm.koutny+hos@…> (2015-08-16 16:04:14)
git-committer:
Matthieu Riolo <matthieu.riolo@…> (2019-08-07 02:33:03)
Message:

Create taskman server (extracts task-related operations from naming service)

  • Exploits initial phones connected to spawn parent instead of NS.
  • session_ns changed to session_primary (setup during taskman-loader handshake).
  • Task creation moved from NS to taskman (no clonable services anymore).
  • Other task-related operations implementation is to come (task_retval is temporarily dummy).
  • Async framework: implicit connections — create fibrils for calls that arrived through initial phone.

Conflicts:

abi/include/abi/ipc/methods.h
boot/Makefile.common
uspace/Makefile
uspace/app/trace/ipcp.c
uspace/lib/c/generic/async.c
uspace/lib/c/generic/libc.c
uspace/lib/c/generic/loader.c
uspace/lib/c/generic/ns.c
uspace/lib/c/generic/private/async.h
uspace/lib/c/generic/private/ns.h
uspace/lib/c/generic/task.c
uspace/lib/c/include/async.h
uspace/lib/c/include/ipc/services.h
uspace/lib/c/include/ipc/taskman.h
uspace/lib/c/include/loader/pcb.h
uspace/lib/c/include/ns.h
uspace/srv/loader/main.c
uspace/srv/ns/clonable.c
uspace/srv/ns/ns.c

File:
1 edited

Legend:

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

    r103939e r0a8f070  
    216216}
    217217
     218static async_client_conn_t implicit_connection = NULL;
    218219static fibril_rmutex_t client_mutex;
    219220static hash_table_t client_hash_table;
     
    964965        /* Route the call according to its request label */
    965966        errno_t rc = route_call(call);
    966         if (rc == EOK)
     967        if (rc == EOK) {
    967968                return;
     969        } else if (implicit_connection != NULL) {
     970                async_new_connection(call->in_task_id, call->in_phone_hash,
     971                    callid, call, implicit_connection, NULL);
     972                return;
     973        }
    968974
    969975        // TODO: Log the error.
Note: See TracChangeset for help on using the changeset viewer.