aboutsummaryrefslogtreecommitdiff
path: root/sys/cam/cam.h
diff options
context:
space:
mode:
authorSteven Hartland <smh@FreeBSD.org>2013-03-29 22:58:15 +0000
committerSteven Hartland <smh@FreeBSD.org>2013-03-29 22:58:15 +0000
commit5f83aee5e585e899ce347b0eff42e64628f81df7 (patch)
treebb7d2f8108f86f3417b00d4bf9c025cf6f66ae71 /sys/cam/cam.h
parentce7ad6640ca40126ffeba22f254f55afc50623e9 (diff)
downloadsrc-5f83aee5e585e899ce347b0eff42e64628f81df7.tar.gz
src-5f83aee5e585e899ce347b0eff42e64628f81df7.zip
Adds the ability to enable / disable sorting of BIO requests queued within
CAM. This can significantly improve performance particularly for SSDs which don't suffer from seek latencies. The sysctl / tunable kern.cam.sort_io_queues provides the systems default setting where:- 0 = queued BIOs are NOT sorted 1 = queued BIOs are sorted (default) Each device gets its own sysctl kern.cam.<type>.<id>.sort_io_queue Valid values are:- -1 = use system default (default) 0 = queued BIOs are NOT sorted 1 = queued BIOs are sorted Note: Additional patch will look to add automatic use of none sorted queues for none rotating media e.g. SSD's Reviewed by: scottl Approved by: pjd (mentor) MFC after: 2 weeks
Notes
Notes: svn path=/head/; revision=248922
Diffstat (limited to 'sys/cam/cam.h')
-rw-r--r--sys/cam/cam.h3
1 files changed, 3 insertions, 0 deletions
diff --git a/sys/cam/cam.h b/sys/cam/cam.h
index a3e191f0fce3..20fc7a37dea6 100644
--- a/sys/cam/cam.h
+++ b/sys/cam/cam.h
@@ -228,6 +228,9 @@ struct cam_status_entry
extern const struct cam_status_entry cam_status_table[];
extern const int num_cam_status_entries;
+#ifdef _KERNEL
+extern int cam_sort_io_queues;
+#endif
union ccb;
#ifdef SYSCTL_DECL /* from sysctl.h */