Changeset 8565a42 in mainline for uspace/srv/ns/clonable.c
- Timestamp:
- 2018-03-02T20:34:50Z (7 years ago)
- Branches:
- lfn, master, serial, ticket/834-toolchain-update, topic/msim-upgrade, topic/simplify-dev-export
- Children:
- a1a81f69, d5e5fd1
- Parents:
- 3061bc1 (diff), 34e1206 (diff)
Note: this is a merge changeset, the changes displayed below correspond to the merge itself.
Use the(diff)
links above to see all the changes relative to each parent. - git-author:
- Jiří Zárevúcky <zarevucky.jiri@…> (2018-03-02 20:34:50)
- git-committer:
- GitHub <noreply@…> (2018-03-02 20:34:50)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
uspace/srv/ns/clonable.c
r3061bc1 r8565a42 84 84 return; 85 85 } 86 86 87 87 cs_req_t *csr = list_get_instance(req_link, cs_req_t, link); 88 88 list_remove(req_link); 89 89 90 90 /* Currently we can only handle a single type of clonable service. */ 91 91 assert(csr->service == SERVICE_LOADER); 92 92 93 93 async_answer_0(callid, EOK); 94 94 95 95 async_sess_t *sess = async_callback_receive(EXCHANGE_SERIALIZE); 96 96 if (sess == NULL) 97 97 async_answer_0(callid, EIO); 98 98 99 99 async_exch_t *exch = async_exchange_begin(sess); 100 100 async_forward_fast(csr->callid, exch, csr->iface, csr->arg3, 0, 101 101 IPC_FF_NONE); 102 102 async_exchange_end(exch); 103 103 104 104 free(csr); 105 105 async_hangup(sess); … … 120 120 { 121 121 assert(service == SERVICE_LOADER); 122 122 123 123 cs_req_t *csr = malloc(sizeof(cs_req_t)); 124 124 if (csr == NULL) { … … 126 126 return; 127 127 } 128 128 129 129 /* Spawn a loader. */ 130 130 errno_t rc = loader_spawn("loader"); 131 131 132 132 if (rc != EOK) { 133 133 free(csr); … … 135 135 return; 136 136 } 137 137 138 138 link_initialize(&csr->link); 139 139 csr->service = service; … … 141 141 csr->callid = callid; 142 142 csr->arg3 = IPC_GET_ARG3(*call); 143 143 144 144 /* 145 145 * We can forward the call only after the server we spawned connects
Note:
See TracChangeset
for help on using the changeset viewer.