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); |