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, 2016 by Delphix. All rights reserved. 17 * Copyright 2020 Joyent, Inc. 18 */ 19 #ifndef _ZIO_PRIORITY_H 20 #define _ZIO_PRIORITY_H 21 22 #ifdef __cplusplus 23 extern "C" { 24 #endif 25 26 /* 27 * NOTE: If ZIO_PRIORITY_NUM_QUEUEABLE changes, update ZIO_PRIORITY_N_QUEUEABLE 28 * in uts/common/sys/fs/zfs.h to match. 29 */ 30 typedef enum zio_priority { 31 ZIO_PRIORITY_SYNC_READ, 32 ZIO_PRIORITY_SYNC_WRITE, /* ZIL */ 33 ZIO_PRIORITY_ASYNC_READ, /* prefetch */ 34 ZIO_PRIORITY_ASYNC_WRITE, /* spa_sync() */ 35 ZIO_PRIORITY_SCRUB, /* asynchronous scrub/resilver reads */ 36 ZIO_PRIORITY_REMOVAL, /* reads/writes for vdev removal */ 37 ZIO_PRIORITY_INITIALIZING, /* initializing I/O */ 38 ZIO_PRIORITY_TRIM, /* trim I/O (discard) */ 39 ZIO_PRIORITY_NUM_QUEUEABLE, 40 ZIO_PRIORITY_NOW /* non-queued i/os (e.g. free) */ 41 } zio_priority_t; 42 43 #ifdef __cplusplus 44 } 45 #endif 46 47 #endif /* _ZIO_PRIORITY_H */ 48