xref: /illumos-gate/usr/src/uts/common/fs/zfs/sys/zio_priority.h (revision 5cabbc6b49070407fb9610cfe73d4c0e0dea3e77)
1 /*
2  * CDDL HEADER START
3  *
4  * This file and its contents are supplied under the terms of the
5  * Common Development and Distribution License ("CDDL"), version 1.0.
6  * You may only use this file in accordance with the terms of version
7  * 1.0 of the CDDL.
8  *
9  * A full copy of the text of the CDDL should have accompanied this
10  * source.  A copy of the CDDL is also available via the Internet at
11  * http://www.illumos.org/license/CDDL.
12  *
13  * CDDL HEADER END
14  */
15 /*
16  * Copyright (c) 2014 by Delphix. All rights reserved.
17  */
18 #ifndef	_ZIO_PRIORITY_H
19 #define	_ZIO_PRIORITY_H
20 
21 #ifdef	__cplusplus
22 extern "C" {
23 #endif
24 
25 typedef enum zio_priority {
26 	ZIO_PRIORITY_SYNC_READ,
27 	ZIO_PRIORITY_SYNC_WRITE,	/* ZIL */
28 	ZIO_PRIORITY_ASYNC_READ,	/* prefetch */
29 	ZIO_PRIORITY_ASYNC_WRITE,	/* spa_sync() */
30 	ZIO_PRIORITY_SCRUB,		/* asynchronous scrub/resilver reads */
31 	ZIO_PRIORITY_REMOVAL,		/* reads/writes for vdev removal */
32 	ZIO_PRIORITY_NUM_QUEUEABLE,
33 
34 	ZIO_PRIORITY_NOW		/* non-queued i/os (e.g. free) */
35 } zio_priority_t;
36 
37 #ifdef	__cplusplus
38 }
39 #endif
40 
41 #endif	/* _ZIO_PRIORITY_H */
42