| 977 | } |
| 978 | |
| 979 | void |
| 980 | thread_lock_block_wait(struct thread *td) |
| 981 | { |
| 982 | |
| 983 | while (td->td_lock == &blocked_lock) |
| 984 | cpu_spinwait(); |
| 985 | |
| 986 | /* Acquire fence to be certain that all thread state is visible. */ |
| 987 | atomic_thread_fence_acq(); |
| 988 | } |
| 989 | |
| 990 | void |
| 991 | thread_lock_set(struct thread *td, struct mtx *new) |
no test coverage detected