Rev 965 | Rev 1005 | Go to most recent revision | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed
Rev 965 | Rev 980 | ||
---|---|---|---|
Line 188... | Line 188... | ||
188 | list_remove(&request->list); |
188 | list_remove(&request->list); |
189 | /* Append request to dispatch queue */ |
189 | /* Append request to dispatch queue */ |
190 | list_append(&request->list, &box->dispatched_calls); |
190 | list_append(&request->list, &box->dispatched_calls); |
191 | } else { |
191 | } else { |
192 | if (!(flags & IPC_WAIT_NONBLOCKING)) { |
192 | if (!(flags & IPC_WAIT_NONBLOCKING)) { |
- | 193 | /* Wait for event to appear */ |
|
193 | condvar_wait(&box->cv, &box->mutex); |
194 | condvar_wait(&box->cv, &box->mutex); |
194 | continue; |
195 | continue; |
195 | } |
196 | } |
196 | if (condvar_trywait(&box->cv, &box->mutex) != ESYNCH_WOULD_BLOCK) |
- | |
197 | continue; |
- | |
198 | request = NULL; |
197 | request = NULL; |
199 | } |
198 | } |
200 | break; |
199 | break; |
201 | } |
200 | } |
202 | mutex_unlock(&box->mutex); |
201 | mutex_unlock(&box->mutex); |