Rev 2531 | Rev 2615 | Go to most recent revision | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed
Rev 2531 | Rev 2568 | ||
---|---|---|---|
Line 217... | Line 217... | ||
217 | futex_down(&async_futex); |
217 | futex_down(&async_futex); |
218 | list_append(&call->list, &queued_calls); |
218 | list_append(&call->list, &queued_calls); |
219 | 219 | ||
220 | if (can_preempt) { |
220 | if (can_preempt) { |
221 | call->fid = fibril_get_id(); |
221 | call->fid = fibril_get_id(); |
222 | fibril_schedule_next_adv(FIBRIL_TO_MANAGER); |
222 | fibril_switch(FIBRIL_TO_MANAGER); |
223 | /* Async futex unlocked by previous call */ |
223 | /* Async futex unlocked by previous call */ |
224 | } else { |
224 | } else { |
225 | call->fid = 0; |
225 | call->fid = 0; |
226 | futex_up(&async_futex); |
226 | futex_up(&async_futex); |
227 | } |
227 | } |