| 531 | } |
| 532 | |
| 533 | static void |
| 534 | vdev_queue_io_remove(vdev_queue_t *vq, zio_t *zio) |
| 535 | { |
| 536 | spa_t *spa = zio->io_spa; |
| 537 | spa_history_kstat_t *shk = &spa->spa_stats.io_history; |
| 538 | |
| 539 | ASSERT3U(zio->io_priority, <, ZIO_PRIORITY_NUM_QUEUEABLE); |
| 540 | avl_remove(vdev_queue_class_tree(vq, zio->io_priority), zio); |
| 541 | avl_remove(vdev_queue_type_tree(vq, zio->io_type), zio); |
| 542 | |
| 543 | if (shk->kstat != NULL) { |
| 544 | mutex_enter(&shk->lock); |
| 545 | kstat_waitq_exit(shk->kstat->ks_data); |
| 546 | mutex_exit(&shk->lock); |
| 547 | } |
| 548 | } |
| 549 | |
| 550 | static boolean_t |
| 551 | vdev_queue_is_interactive(zio_priority_t p) |
no test coverage detected