From ec8501ee1274205f277a7287c3de8119d361afaf Mon Sep 17 00:00:00 2001 From: "Justin T. Gibbs" Date: Sat, 11 Apr 2015 14:51:06 -0400 Subject: 5313 Allow I/Os to be aggregated across ZIO priority classes Reviewed by: Andriy Gapon Reviewed by: Will Andrews Reviewed by: Matt Ahrens Reviewed by: George Wilson Approved by: Robert Mustacchi References: https://www.illumos.org/issues/5313 https://github.com/illumos/illumos-gate/commit/fe319232 Ported-by: DHE Signed-off-by: Brian Behlendorf Closes #3280 --- include/sys/vdev_impl.h | 2 ++ include/sys/zio.h | 1 + 2 files changed, 3 insertions(+) (limited to 'include') diff --git a/include/sys/vdev_impl.h b/include/sys/vdev_impl.h index a8dc9510e..1048dec5e 100644 --- a/include/sys/vdev_impl.h +++ b/include/sys/vdev_impl.h @@ -113,6 +113,8 @@ struct vdev_queue { vdev_t *vq_vdev; vdev_queue_class_t vq_class[ZIO_PRIORITY_NUM_QUEUEABLE]; avl_tree_t vq_active_tree; + avl_tree_t vq_read_offset_tree; + avl_tree_t vq_write_offset_tree; uint64_t vq_last_offset; hrtime_t vq_io_complete_ts; /* time last i/o completed */ hrtime_t vq_io_delta_ts; diff --git a/include/sys/zio.h b/include/sys/zio.h index 18e7a40a3..0368d9c59 100644 --- a/include/sys/zio.h +++ b/include/sys/zio.h @@ -427,6 +427,7 @@ struct zio { hrtime_t io_delta; /* vdev queue service delta */ uint64_t io_delay; /* vdev disk service delta (ticks) */ avl_node_t io_queue_node; + avl_node_t io_offset_node; /* Internal pipeline state */ enum zio_flag io_flags; -- cgit v1.2.3