/* zfs_config.h.in. Generated from configure.ac by autoheader. */
+/* bio_end_io_t wants 1 arg */
+#undef HAVE_1ARG_BIO_END_IO_T
+
/* invalidate_bdev() wants 1 arg */
#undef HAVE_1ARG_INVALIDATE_BDEV
-/* bio_end_io_t wants 2 args */
-#undef HAVE_2ARGS_BIO_END_IO_T
+/* kmap_atomic wants 1 args */
+#undef HAVE_1ARG_KMAP_ATOMIC
+
+/* lookup_bdev() wants 1 arg */
+#undef HAVE_1ARG_LOOKUP_BDEV
+
+/* submit_bio() wants 1 arg */
+#undef HAVE_1ARG_SUBMIT_BIO
+
+/* bdi_setup_and_register() wants 2 args */
+#undef HAVE_2ARGS_BDI_SETUP_AND_REGISTER
+
+/* lookup_bdev() wants 2 args */
+#undef HAVE_2ARGS_LOOKUP_BDEV
-/* fops->fsync() want 2 args */
-#undef HAVE_2ARGS_FSYNC
+/* bdi_setup_and_register() wants 3 args */
+#undef HAVE_3ARGS_BDI_SETUP_AND_REGISTER
+
+/* blkdev_get() wants 3 args */
+#undef HAVE_3ARG_BLKDEV_GET
+
+/* sget() wants 5 args */
+#undef HAVE_5ARG_SGET
/* security_inode_init_security wants 6 args */
#undef HAVE_6ARGS_SECURITY_INODE_INIT_SECURITY
+/* dops->automount() exists */
+#undef HAVE_AUTOMOUNT
+
+/* Define if host toolchain supports AVX */
+#undef HAVE_AVX
+
+/* Define if host toolchain supports AVX2 */
+#undef HAVE_AVX2
+
+/* Define if host toolchain supports AVX512BW */
+#undef HAVE_AVX512BW
+
+/* Define if host toolchain supports AVX512CD */
+#undef HAVE_AVX512CD
+
+/* Define if host toolchain supports AVX512DQ */
+#undef HAVE_AVX512DQ
+
+/* Define if host toolchain supports AVX512ER */
+#undef HAVE_AVX512ER
+
+/* Define if host toolchain supports AVX512F */
+#undef HAVE_AVX512F
+
+/* Define if host toolchain supports AVX512IFMA */
+#undef HAVE_AVX512IFMA
+
+/* Define if host toolchain supports AVX512PF */
+#undef HAVE_AVX512PF
+
+/* Define if host toolchain supports AVX512VBMI */
+#undef HAVE_AVX512VBMI
+
+/* Define if host toolchain supports AVX512VL */
+#undef HAVE_AVX512VL
+
/* struct block_device_operations use bdevs */
#undef HAVE_BDEV_BLOCK_DEVICE_OPERATIONS
/* bdev_logical_block_size() is available */
#undef HAVE_BDEV_LOGICAL_BLOCK_SIZE
-/* bio_empy_barrier() is defined */
-#undef HAVE_BIO_EMPTY_BARRIER
+/* bdev_physical_block_size() is available */
+#undef HAVE_BDEV_PHYSICAL_BLOCK_SIZE
-/* REQ_FAILFAST_MASK is defined */
-#undef HAVE_BIO_REQ_FAILFAST_MASK
+/* bio->bi_opf is defined */
+#undef HAVE_BIO_BI_OPF
+
+/* bio->bi_status exists */
+#undef HAVE_BIO_BI_STATUS
+
+/* bio has bi_iter */
+#undef HAVE_BIO_BVEC_ITER
+
+/* BIO_RW_BARRIER is defined */
+#undef HAVE_BIO_RW_BARRIER
-/* BIO_RW_FAILFAST is defined */
-#undef HAVE_BIO_RW_FAILFAST
+/* BIO_RW_DISCARD is defined */
+#undef HAVE_BIO_RW_DISCARD
/* BIO_RW_FAILFAST_* are defined */
#undef HAVE_BIO_RW_FAILFAST_DTD
-/* BIO_RW_SYNC is defined */
-#undef HAVE_BIO_RW_SYNC
+/* bio_set_dev() exists */
+#undef HAVE_BIO_SET_DEV
-/* BIO_RW_SYNCIO is defined */
-#undef HAVE_BIO_RW_SYNCIO
+/* bio_set_op_attrs is available */
+#undef HAVE_BIO_SET_OP_ATTRS
/* blkdev_get_by_path() is available */
#undef HAVE_BLKDEV_GET_BY_PATH
-/* blk_end_request() is available */
-#undef HAVE_BLK_END_REQUEST
+/* blk queue backing_dev_info is dynamic */
+#undef HAVE_BLK_QUEUE_BDI_DYNAMIC
+
+/* blk_queue_flush() is available */
+#undef HAVE_BLK_QUEUE_FLUSH
+
+/* blk_queue_flush() is GPL-only */
+#undef HAVE_BLK_QUEUE_FLUSH_GPL_ONLY
+
+/* BIO_RW_UNPLUG is available */
+#undef HAVE_BLK_QUEUE_HAVE_BIO_RW_UNPLUG
+
+/* struct blk_plug is available */
+#undef HAVE_BLK_QUEUE_HAVE_BLK_PLUG
-/* blk_end_request() is GPL-only */
-#undef HAVE_BLK_END_REQUEST_GPL_ONLY
+/* blk_queue_max_hw_sectors() is available */
+#undef HAVE_BLK_QUEUE_MAX_HW_SECTORS
-/* blk_fetch_request() is available */
-#undef HAVE_BLK_FETCH_REQUEST
+/* blk_queue_max_segments() is available */
+#undef HAVE_BLK_QUEUE_MAX_SEGMENTS
-/* blk_requeue_request() is available */
-#undef HAVE_BLK_REQUEUE_REQUEST
+/* blk_queue_write_cache() exists */
+#undef HAVE_BLK_QUEUE_WRITE_CACHE
-/* blk_rq_bytes() is available */
-#undef HAVE_BLK_RQ_BYTES
+/* blk_queue_write_cache() is GPL-only */
+#undef HAVE_BLK_QUEUE_WRITE_CACHE_GPL_ONLY
-/* blk_rq_bytes() is GPL-only */
-#undef HAVE_BLK_RQ_BYTES_GPL_ONLY
+/* struct block_device_operations.release returns void */
+#undef HAVE_BLOCK_DEVICE_OPERATIONS_RELEASE_VOID
-/* blk_rq_pos() is available */
-#undef HAVE_BLK_RQ_POS
+/* security_inode_init_security wants callback */
+#undef HAVE_CALLBACK_SECURITY_INODE_INIT_SECURITY
-/* blk_rq_sectors() is available */
-#undef HAVE_BLK_RQ_SECTORS
+/* iops->check_acl() exists */
+#undef HAVE_CHECK_ACL
-/* check_disk_size_change() is available */
-#undef HAVE_CHECK_DISK_SIZE_CHANGE
+/* iops->check_acl() wants flags */
+#undef HAVE_CHECK_ACL_WITH_FLAGS
-/* super_block uses const struct xattr_hander */
+/* clear_inode() is available */
+#undef HAVE_CLEAR_INODE
+
+/* eops->commit_metadata() exists */
+#undef HAVE_COMMIT_METADATA
+
+/* dentry uses const struct dentry_operations */
+#undef HAVE_CONST_DENTRY_OPERATIONS
+
+/* super_block uses const struct xattr_handler */
#undef HAVE_CONST_XATTR_HANDLER
-/* xattr_handler->get() wants dentry */
-#undef HAVE_DENTRY_XATTR_GET
+/* iops->create() passes nameidata */
+#undef HAVE_CREATE_NAMEIDATA
-/* xattr_handler->set() wants dentry */
-#undef HAVE_DENTRY_XATTR_SET
+/* current->bio_list exists */
+#undef HAVE_CURRENT_BIO_LIST
+
+/* current->bio_tail exists */
+#undef HAVE_CURRENT_BIO_TAIL
+
+/* current_time() exists */
+#undef HAVE_CURRENT_TIME
+
+/* DECLARE_EVENT_CLASS() is available */
+#undef HAVE_DECLARE_EVENT_CLASS
+
+/* sops->dirty_inode() wants flags */
+#undef HAVE_DIRTY_INODE_WITH_FLAGS
+
+/* ql->discard_granularity is available */
+#undef HAVE_DISCARD_GRANULARITY
/* Define to 1 if you have the <dlfcn.h> header file. */
#undef HAVE_DLFCN_H
+/* d_make_root() is available */
+#undef HAVE_D_MAKE_ROOT
+
/* d_obtain_alias() is available */
#undef HAVE_D_OBTAIN_ALIAS
+/* d_prune_aliases() is available */
+#undef HAVE_D_PRUNE_ALIASES
+
+/* dops->d_revalidate() operation takes nameidata */
+#undef HAVE_D_REVALIDATE_NAMEIDATA
+
+/* d_set_d_op() is available */
+#undef HAVE_D_SET_D_OP
+
+/* elevator_change() is available */
+#undef HAVE_ELEVATOR_CHANGE
+
+/* eops->encode_fh() wants child and parent inodes */
+#undef HAVE_ENCODE_FH_WITH_INODE
+
/* sops->evict_inode() exists */
#undef HAVE_EVICT_INODE
+/* fops->aio_fsync() exists */
+#undef HAVE_FILE_AIO_FSYNC
+
+/* file_dentry() is available */
+#undef HAVE_FILE_DENTRY
+
+/* fops->fallocate() exists */
+#undef HAVE_FILE_FALLOCATE
+
+/* file_inode() is available */
+#undef HAVE_FILE_INODE
+
/* kernel defines fmode_t */
#undef HAVE_FMODE_T
+/* follow_down_one() is available */
+#undef HAVE_FOLLOW_DOWN_ONE
+
+/* iops->follow_link() cookie */
+#undef HAVE_FOLLOW_LINK_COOKIE
+
+/* iops->follow_link() nameidata */
+#undef HAVE_FOLLOW_LINK_NAMEIDATA
+
+/* kernel has <asm/fpu/api.h> interface */
+#undef HAVE_FPU_API_H
+
+/* sops->free_cached_objects() exists */
+#undef HAVE_FREE_CACHED_OBJECTS
+
+/* fops->fsync() with range */
+#undef HAVE_FSYNC_RANGE
+
+/* fops->fsync() without dentry */
+#undef HAVE_FSYNC_WITHOUT_DENTRY
+
+/* fops->fsync() with dentry */
+#undef HAVE_FSYNC_WITH_DENTRY
+
+/* generic_start_io_acct()/generic_end_io_acct() available */
+#undef HAVE_GENERIC_IO_ACCT_3ARG
+
+/* generic_start_io_acct()/generic_end_io_acct() 4 arg available */
+#undef HAVE_GENERIC_IO_ACCT_4ARG
+
+/* generic_readlink is global */
+#undef HAVE_GENERIC_READLINK
+
+/* generic_setxattr() exists */
+#undef HAVE_GENERIC_SETXATTR
+
+/* generic_write_checks() takes kiocb */
+#undef HAVE_GENERIC_WRITE_CHECKS_KIOCB
+
+/* iops->get_acl() exists */
+#undef HAVE_GET_ACL
+
/* blk_disk_ro() is available */
#undef HAVE_GET_DISK_RO
-/* Define to 1 if licensed under the GPL */
-#undef HAVE_GPL_ONLY_SYMBOLS
+/* get_gendisk() is available */
+#undef HAVE_GET_GENDISK
+
+/* iops->get_link() cookie */
+#undef HAVE_GET_LINK_COOKIE
+
+/* iops->get_link() delayed */
+#undef HAVE_GET_LINK_DELAYED
+
+/* fops->fallocate() exists */
+#undef HAVE_INODE_FALLOCATE
+
+/* inode_owner_or_capable() exists */
+#undef HAVE_INODE_OWNER_OR_CAPABLE
+
+/* inode_set_flags() exists */
+#undef HAVE_INODE_SET_FLAGS
+
+/* iops->truncate_range() exists */
+#undef HAVE_INODE_TRUNCATE_RANGE
/* insert_inode_locked() is available */
#undef HAVE_INSERT_INODE_LOCKED
/* Define to 1 if you have the <inttypes.h> header file. */
#undef HAVE_INTTYPES_H
-/* result=stropts.h Define to 1 if ioctl() defined in <stropts.h> */
-#undef HAVE_IOCTL_IN_STROPTS_H
+/* is_owner_or_cap() exists */
+#undef HAVE_IS_OWNER_OR_CAP
+
+/* uncached_acl_sentinel() exists */
+#undef HAVE_KERNEL_GET_ACL_HANDLE_CACHE
-/* Define to 1 if ioctl() defined in <sys/ioctl.h> */
-#undef HAVE_IOCTL_IN_SYS_IOCTL_H
+/* kernel does stack verification */
+#undef HAVE_KERNEL_OBJTOOL
-/* Define to 1 if ioctl() defined in <unistd.h> */
-#undef HAVE_IOCTL_IN_UNISTD_H
+/* i_(uid|gid)_(read|write) exist */
+#undef HAVE_KUID_HELPERS
-/* kernel defines KOBJ_NAME_LEN */
-#undef HAVE_KOBJ_NAME_LEN
+/* kernel has large stacks */
+#undef HAVE_LARGE_STACKS
+
+/* Define if you have libattr */
+#undef HAVE_LIBATTR
/* Define if you have libblkid */
#undef HAVE_LIBBLKID
-/* Define if you have selinux */
-#undef HAVE_LIBSELINUX
+/* Define if you have libtirpc */
+#undef HAVE_LIBTIRPC
+
+/* Define if you have libudev */
+#undef HAVE_LIBUDEV
+
+/* Define if udev_device_get_is_initialized is available */
+#undef HAVE_LIBUDEV_UDEV_DEVICE_GET_IS_INITIALIZED
/* Define if you have libuuid */
#undef HAVE_LIBUUID
-/* Define to 1 if you have the `z' library (-lz). */
-#undef HAVE_LIBZ
+/* iops->lookup() passes nameidata */
+#undef HAVE_LOOKUP_NAMEIDATA
+
+/* lseek_execute() is available */
+#undef HAVE_LSEEK_EXECUTE
+
+/* makedev() is declared in sys/mkdev.h */
+#undef HAVE_MAKEDEV_IN_MKDEV
+
+/* makedev() is declared in sys/sysmacros.h */
+#undef HAVE_MAKEDEV_IN_SYSMACROS
+
+/* Noting that make_request_fn() returns int */
+#undef HAVE_MAKE_REQUEST_FN_RET_INT
+
+/* Noting that make_request_fn() returns blk_qc_t */
+#undef HAVE_MAKE_REQUEST_FN_RET_QC
/* Define to 1 if you have the <memory.h> header file. */
#undef HAVE_MEMORY_H
+/* iops->create()/mkdir()/mknod() take umode_t */
+#undef HAVE_MKDIR_UMODE_T
+
+/* Define to 1 if you have the `mlockall' function. */
+#undef HAVE_MLOCKALL
+
/* mount_nodev() is available */
#undef HAVE_MOUNT_NODEV
+/* new_sync_read()/new_sync_write() are available */
+#undef HAVE_NEW_SYNC_READ
+
+/* sops->nr_cached_objects() exists */
+#undef HAVE_NR_CACHED_OBJECTS
+
/* open_bdev_exclusive() is available */
#undef HAVE_OPEN_BDEV_EXCLUSIVE
-/* REQ_SYNC is defined */
-#undef HAVE_REQ_SYNC
+/* iops->getattr() takes a path */
+#undef HAVE_PATH_IOPS_GETATTR
+
+/* iops->permission() exists */
+#undef HAVE_PERMISSION
+
+/* iops->permission() with nameidata exists */
+#undef HAVE_PERMISSION_WITH_NAMEIDATA
+
+/* posix_acl_chmod() exists */
+#undef HAVE_POSIX_ACL_CHMOD
+
+/* posix_acl_equiv_mode wants umode_t* */
+#undef HAVE_POSIX_ACL_EQUIV_MODE_UMODE_T
+
+/* posix_acl_from_xattr() needs user_ns */
+#undef HAVE_POSIX_ACL_FROM_XATTR_USERNS
+
+/* posix_acl_release() is available */
+#undef HAVE_POSIX_ACL_RELEASE
+
+/* posix_acl_release() is GPL-only */
+#undef HAVE_POSIX_ACL_RELEASE_GPL_ONLY
+
+/* posix_acl_valid() wants user namespace */
+#undef HAVE_POSIX_ACL_VALID_WITH_NS
+
+/* iops->put_link() cookie */
+#undef HAVE_PUT_LINK_COOKIE
+
+/* iops->put_link() delayed */
+#undef HAVE_PUT_LINK_DELAYED
+
+/* iops->put_link() nameidata */
+#undef HAVE_PUT_LINK_NAMEIDATA
+
+/* qat is enabled and existed */
+#undef HAVE_QAT
+
+/* iops->rename() wants flags */
+#undef HAVE_RENAME_WANTS_FLAGS
+
+/* REQ_FAILFAST_MASK is defined */
+#undef HAVE_REQ_FAILFAST_MASK
+
+/* REQ_OP_DISCARD is defined */
+#undef HAVE_REQ_OP_DISCARD
+
+/* REQ_OP_FLUSH is defined */
+#undef HAVE_REQ_OP_FLUSH
+
+/* REQ_OP_SECURE_ERASE is defined */
+#undef HAVE_REQ_OP_SECURE_ERASE
+
+/* setattr_prepare() is available */
+#undef HAVE_SETATTR_PREPARE
+
+/* iops->set_acl() exists */
+#undef HAVE_SET_ACL
+
+/* posix_acl_release() is usable */
+#undef HAVE_SET_CACHED_ACL_USABLE
+
+/* set_nlink() is available */
+#undef HAVE_SET_NLINK
+
+/* sops->show_options() with dentry */
+#undef HAVE_SHOW_OPTIONS_WITH_DENTRY
+
+/* struct super_block has s_shrink */
+#undef HAVE_SHRINK
+
+/* Define if host toolchain supports SSE */
+#undef HAVE_SSE
-/* rq_for_each_segment() is available */
-#undef HAVE_RQ_FOR_EACH_SEGMENT
+/* Define if host toolchain supports SSE2 */
+#undef HAVE_SSE2
-/* rq_is_sync() is available */
-#undef HAVE_RQ_IS_SYNC
+/* Define if host toolchain supports SSE3 */
+#undef HAVE_SSE3
+
+/* Define if host toolchain supports SSE4.1 */
+#undef HAVE_SSE4_1
+
+/* Define if host toolchain supports SSE4.2 */
+#undef HAVE_SSE4_2
+
+/* Define if host toolchain supports SSSE3 */
+#undef HAVE_SSSE3
/* Define to 1 if you have the <stdint.h> header file. */
#undef HAVE_STDINT_H
/* Define to 1 if you have the <string.h> header file. */
#undef HAVE_STRING_H
+/* super_setup_bdi_name() exits */
+#undef HAVE_SUPER_SETUP_BDI_NAME
+
+/* super_block->s_user_ns exists */
+#undef HAVE_SUPER_USER_NS
+
/* Define to 1 if you have the <sys/stat.h> header file. */
#undef HAVE_SYS_STAT_H
/* Define to 1 if you have the <sys/types.h> header file. */
#undef HAVE_SYS_TYPES_H
+/* struct super_block has s_d_op */
+#undef HAVE_S_D_OP
+
+/* struct super_block has s_instances list_head */
+#undef HAVE_S_INSTANCES_LIST_HEAD
+
+/* i_op->tmpfile() exists */
+#undef HAVE_TMPFILE
+
/* truncate_setsize() is available */
#undef HAVE_TRUNCATE_SETSIZE
/* Define to 1 if you have the <unistd.h> header file. */
#undef HAVE_UNISTD_H
+/* iops->getattr() takes a vfsmount */
+#undef HAVE_VFSMOUNT_IOPS_GETATTR
+
+/* fops->iterate() is available */
+#undef HAVE_VFS_ITERATE
+
+/* fops->iterate_shared() is available */
+#undef HAVE_VFS_ITERATE_SHARED
+
+/* fops->readdir() is available */
+#undef HAVE_VFS_READDIR
+
+/* fops->read/write_iter() are available */
+#undef HAVE_VFS_RW_ITERATE
+
+/* xattr_handler->get() wants dentry */
+#undef HAVE_XATTR_GET_DENTRY
+
+/* xattr_handler->get() wants both dentry and inode */
+#undef HAVE_XATTR_GET_DENTRY_INODE
+
+/* xattr_handler->get() wants xattr_handler */
+#undef HAVE_XATTR_GET_HANDLER
+
+/* xattr_handler->get() wants inode */
+#undef HAVE_XATTR_GET_INODE
+
+/* xattr_handler has name */
+#undef HAVE_XATTR_HANDLER_NAME
+
+/* xattr_handler->list() wants dentry */
+#undef HAVE_XATTR_LIST_DENTRY
+
+/* xattr_handler->list() wants xattr_handler */
+#undef HAVE_XATTR_LIST_HANDLER
+
+/* xattr_handler->list() wants inode */
+#undef HAVE_XATTR_LIST_INODE
+
+/* xattr_handler->list() wants simple */
+#undef HAVE_XATTR_LIST_SIMPLE
+
+/* xattr_handler->set() wants dentry */
+#undef HAVE_XATTR_SET_DENTRY
+
+/* xattr_handler->set() wants both dentry and inode */
+#undef HAVE_XATTR_SET_DENTRY_INODE
+
+/* xattr_handler->set() wants xattr_handler */
+#undef HAVE_XATTR_SET_HANDLER
+
+/* xattr_handler->set() wants inode */
+#undef HAVE_XATTR_SET_INODE
+
/* Define if you have zlib */
#undef HAVE_ZLIB
+/* __posix_acl_chmod() exists */
+#undef HAVE___POSIX_ACL_CHMOD
+
/* Define to the sub-directory in which libtool stores uninstalled libraries.
*/
#undef LT_OBJDIR
-/* Define to 1 if NPTL threading implementation includes guard area in stack
- allocation */
-#undef NPTL_GUARD_WITHIN_STACK
+/* make_request_fn() returns blk_qc_t */
+#undef MAKE_REQUEST_FN_RET
+
+/* hardened module_param_call */
+#undef MODULE_PARAM_CALL_CONST
+
+/* Define to 1 if your C compiler doesn't accept -c and -o together. */
+#undef NO_MINUS_C_MINUS_O
/* Name of package */
#undef PACKAGE
/* Define to the version of this package. */
#undef PACKAGE_VERSION
+/* struct shrink_control has nid */
+#undef SHRINK_CONTROL_HAS_NID
+
/* Define to 1 if you have the ANSI C header files. */
#undef STDC_HEADERS
/* Version number of package */
#undef VERSION
+/* zfs debugging enabled */
+#undef ZFS_DEBUG
+
+/* using global_node_page_state() */
+#undef ZFS_GLOBAL_NODE_PAGE_STATE
+
+/* Define to 1 if GPL-only symbols can be used */
+#undef ZFS_IS_GPL_COMPATIBLE
+
/* Define the project alias string. */
#undef ZFS_META_ALIAS