| 1492 | } |
| 1493 | |
| 1494 | static void |
| 1495 | ztest_rll_lock(rll_t *rll, rl_type_t type) |
| 1496 | { |
| 1497 | mutex_enter(&rll->rll_lock); |
| 1498 | |
| 1499 | if (type == RL_READER) { |
| 1500 | while (rll->rll_writer != NULL) |
| 1501 | (void) cv_wait(&rll->rll_cv, &rll->rll_lock); |
| 1502 | rll->rll_readers++; |
| 1503 | } else { |
| 1504 | while (rll->rll_writer != NULL || rll->rll_readers) |
| 1505 | (void) cv_wait(&rll->rll_cv, &rll->rll_lock); |
| 1506 | rll->rll_writer = curthread; |
| 1507 | } |
| 1508 | |
| 1509 | mutex_exit(&rll->rll_lock); |
| 1510 | } |
| 1511 | |
| 1512 | static void |
| 1513 | ztest_rll_unlock(rll_t *rll) |
no test coverage detected