Changes in kernel/generic/src/ipc/ipcrsc.c [48bcf49:82d515e9] in mainline
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
kernel/generic/src/ipc/ipcrsc.c
r48bcf49 r82d515e9 137 137 #include <mm/slab.h> 138 138 139 /** Find call_t * in call table according to callid.140 *141 * @todo Some speedup (hash table?)142 *143 * @param callid Userspace hash of the call. Currently it is the call structure144 * kernel address.145 *146 * @return NULL on not found, otherwise pointer to the call structure.147 *148 */149 call_t *get_call(sysarg_t callid)150 {151 call_t *result = NULL;152 153 irq_spinlock_lock(&TASK->answerbox.lock, true);154 155 list_foreach(TASK->answerbox.dispatched_calls, ab_link, call_t, call) {156 if ((sysarg_t) call == callid) {157 result = call;158 break;159 }160 }161 162 irq_spinlock_unlock(&TASK->answerbox.lock, true);163 return result;164 }165 166 139 static bool phone_reclaim(kobject_t *kobj) 167 140 { … … 180 153 { 181 154 phone_t *phone = (phone_t *) arg; 182 slab_free(phone_ slab, phone);155 slab_free(phone_cache, phone); 183 156 } 184 157 … … 200 173 cap_handle_t handle = cap_alloc(task); 201 174 if (handle >= 0) { 202 phone_t *phone = slab_alloc(phone_ slab, FRAME_ATOMIC);175 phone_t *phone = slab_alloc(phone_cache, FRAME_ATOMIC); 203 176 if (!phone) { 204 177 cap_free(TASK, handle); … … 208 181 if (!kobject) { 209 182 cap_free(TASK, handle); 210 slab_free(phone_ slab, phone);183 slab_free(phone_cache, phone); 211 184 return ENOMEM; 212 185 }
Note:
See TracChangeset
for help on using the changeset viewer.