Changeset 0a8f070 in mainline for uspace/srv/ns/ns.c


Ignore:
Timestamp:
2019-08-07T02:33:03Z (5 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/srv/ns/ns.c

    r103939e r0a8f070  
    4646#include "ns.h"
    4747#include "service.h"
    48 #include "clonable.h"
    4948#include "task.h"
    5049
     
    6160                 * Client requests to be connected to a service.
    6261                 */
    63                 if (ns_service_is_clonable(service, iface)) {
    64                         ns_clonable_forward(service, iface, icall);
    65                 } else {
    66                         ns_service_forward(service, iface, icall);
    67                 }
    68 
     62                ns_service_forward(service, iface, icall);
    6963                return;
    7064        }
     
    9286                         * Server requests service registration.
    9387                         */
    94                         if (ns_service_is_clonable(service, iface)) {
    95                                 ns_clonable_register(&call);
    96                                 continue;
    97                         } else {
    98                                 retval = ns_service_register(service, iface);
    99                         }
     88                        retval = ns_service_register(service, iface);
    10089
    10190                        break;
     
    116105                        break;
    117106                case NS_RETVAL:
    118                         retval = ns_task_retval(&call);
     107                        // TODO move to taskman
     108                        retval = EOK;
     109                        //retval = ns_task_retval(&call);
    119110                        break;
    120111                default:
     
    140131                return rc;
    141132
    142         rc = ns_clonable_init();
    143         if (rc != EOK)
    144                 return rc;
    145 
    146133        rc = task_init();
    147134        if (rc != EOK)
Note: See TracChangeset for help on using the changeset viewer.