xref: /freebsd/sys/modules/zfs/zfs_config.h (revision b59a0cde6a5253f94494397ce5b18dbfa071e08c)
19e5787d2SMatt Macy /*
29e5787d2SMatt Macy  */
39e5787d2SMatt Macy 
49e5787d2SMatt Macy /* zfs_config.h.  Generated from zfs_config.h.in by configure.  */
59e5787d2SMatt Macy /* zfs_config.h.in.  Generated from configure.ac by autoheader.  */
69e5787d2SMatt Macy 
79e5787d2SMatt Macy /* Define to 1 if translation of program messages to the user's native
89e5787d2SMatt Macy    language is requested. */
99e5787d2SMatt Macy /* #undef ENABLE_NLS */
109e5787d2SMatt Macy 
117a7741afSMartin Matuska /* __assign_str() has one arg */
127a7741afSMartin Matuska /* #undef HAVE_1ARG_ASSIGN_STR */
139e5787d2SMatt Macy 
149e5787d2SMatt Macy /* lookup_bdev() wants 1 arg */
159e5787d2SMatt Macy /* #undef HAVE_1ARG_LOOKUP_BDEV */
169e5787d2SMatt Macy 
179e5787d2SMatt Macy /* kernel has access_ok with 'type' parameter */
189e5787d2SMatt Macy /* #undef HAVE_ACCESS_OK_TYPE */
199e5787d2SMatt Macy 
20f03aca96SMartin Matuska /* add_disk() returns int */
21f03aca96SMartin Matuska /* #undef HAVE_ADD_DISK_RET */
22f03aca96SMartin Matuska 
239e5787d2SMatt Macy /* Define if host toolchain supports AES */
249e5787d2SMatt Macy #define HAVE_AES 1
259e5787d2SMatt Macy 
26716fd348SMartin Matuska /* Define if you have [rt] */
27716fd348SMartin Matuska #define HAVE_AIO_H 1
28716fd348SMartin Matuska 
299e5787d2SMatt Macy #ifdef __amd64__
309e5787d2SMatt Macy #ifndef RESCUE
319e5787d2SMatt Macy /* Define if host toolchain supports AVX */
329e5787d2SMatt Macy #define HAVE_AVX 1
339e5787d2SMatt Macy #endif
349e5787d2SMatt Macy 
359e5787d2SMatt Macy /* Define if host toolchain supports AVX2 */
369e5787d2SMatt Macy #define HAVE_AVX2 1
379e5787d2SMatt Macy 
389e5787d2SMatt Macy /* Define if host toolchain supports AVX512BW */
399e5787d2SMatt Macy #define HAVE_AVX512BW 1
409e5787d2SMatt Macy 
419e5787d2SMatt Macy /* Define if host toolchain supports AVX512CD */
429e5787d2SMatt Macy #define HAVE_AVX512CD 1
439e5787d2SMatt Macy 
449e5787d2SMatt Macy /* Define if host toolchain supports AVX512DQ */
459e5787d2SMatt Macy #define HAVE_AVX512DQ 1
469e5787d2SMatt Macy 
479e5787d2SMatt Macy /* Define if host toolchain supports AVX512ER */
489e5787d2SMatt Macy #define HAVE_AVX512ER 1
499e5787d2SMatt Macy 
509e5787d2SMatt Macy /* Define if host toolchain supports AVX512F */
519e5787d2SMatt Macy #define HAVE_AVX512F 1
529e5787d2SMatt Macy 
539e5787d2SMatt Macy /* Define if host toolchain supports AVX512IFMA */
549e5787d2SMatt Macy #define HAVE_AVX512IFMA 1
559e5787d2SMatt Macy 
569e5787d2SMatt Macy /* Define if host toolchain supports AVX512PF */
579e5787d2SMatt Macy #define HAVE_AVX512PF 1
589e5787d2SMatt Macy 
599e5787d2SMatt Macy /* Define if host toolchain supports AVX512VBMI */
609e5787d2SMatt Macy #define HAVE_AVX512VBMI 1
619e5787d2SMatt Macy 
629e5787d2SMatt Macy /* Define if host toolchain supports AVX512VL */
639e5787d2SMatt Macy #define HAVE_AVX512VL 1
649e5787d2SMatt Macy #endif
659e5787d2SMatt Macy 
66aca928a5SMartin Matuska /* backtrace() is available */
67aca928a5SMartin Matuska /* #undef HAVE_BACKTRACE */
68aca928a5SMartin Matuska 
69271171e0SMartin Matuska /* bdevname() is available */
70271171e0SMartin Matuska /* #undef HAVE_BDEVNAME */
71271171e0SMartin Matuska 
728fb96679SMartin Matuska /* bdev_check_media_change() exists */
738fb96679SMartin Matuska /* #undef HAVE_BDEV_CHECK_MEDIA_CHANGE */
748fb96679SMartin Matuska 
751719886fSMartin Matuska /* bdev_file_open_by_path() exists */
761719886fSMartin Matuska /* #undef HAVE_BDEV_FILE_OPEN_BY_PATH */
771719886fSMartin Matuska 
78e3aa18adSMartin Matuska /* bdev_*_io_acct() available */
79d411c1d6SMartin Matuska /* #undef HAVE_BDEV_IO_ACCT_63 */
80d411c1d6SMartin Matuska 
81d411c1d6SMartin Matuska /* bdev_*_io_acct() available */
82d411c1d6SMartin Matuska /* #undef HAVE_BDEV_IO_ACCT_OLD */
83e3aa18adSMartin Matuska 
84be181ee2SMartin Matuska /* bdev_kobj() exists */
85be181ee2SMartin Matuska /* #undef HAVE_BDEV_KOBJ */
86be181ee2SMartin Matuska 
87e3aa18adSMartin Matuska /* bdev_max_discard_sectors() is available */
88e3aa18adSMartin Matuska /* #undef HAVE_BDEV_MAX_DISCARD_SECTORS */
89e3aa18adSMartin Matuska 
90e3aa18adSMartin Matuska /* bdev_max_secure_erase_sectors() is available */
91e3aa18adSMartin Matuska /* #undef HAVE_BDEV_MAX_SECURE_ERASE_SECTORS */
92e3aa18adSMartin Matuska 
9375e1fea6SMartin Matuska /* bdev_nr_bytes() is available */
9475e1fea6SMartin Matuska /* #undef HAVE_BDEV_NR_BYTES */
9575e1fea6SMartin Matuska 
96fd45b686SMartin Matuska /* bdev_open_by_path() exists */
97fd45b686SMartin Matuska /* #undef HAVE_BDEV_OPEN_BY_PATH */
98fd45b686SMartin Matuska 
99fd45b686SMartin Matuska /* bdev_release() exists */
100fd45b686SMartin Matuska /* #undef HAVE_BDEV_RELEASE */
101fd45b686SMartin Matuska 
102681ce946SMartin Matuska /* block_device_operations->submit_bio() returns void */
103681ce946SMartin Matuska /* #undef HAVE_BDEV_SUBMIT_BIO_RETURNS_VOID */
104681ce946SMartin Matuska 
1058fb96679SMartin Matuska /* bdev_whole() is available */
1068fb96679SMartin Matuska /* #undef HAVE_BDEV_WHOLE */
1078fb96679SMartin Matuska 
1088d0b6a7dSMartin Matuska /* bio_alloc() takes 4 arguments */
1098d0b6a7dSMartin Matuska /* #undef HAVE_BIO_ALLOC_4ARG */
1108d0b6a7dSMartin Matuska 
111476ef25dSMartin Matuska /* bio->bi_bdev->bd_disk exists */
112476ef25dSMartin Matuska /* #undef HAVE_BIO_BDEV_DISK */
113476ef25dSMartin Matuska 
1148fb96679SMartin Matuska /* bio_*_io_acct() available */
1158fb96679SMartin Matuska /* #undef HAVE_BIO_IO_ACCT */
1168fb96679SMartin Matuska 
117476ef25dSMartin Matuska /* bio_max_segs() is implemented */
118476ef25dSMartin Matuska /* #undef HAVE_BIO_MAX_SEGS */
119476ef25dSMartin Matuska 
1209e5787d2SMatt Macy /* bio_set_dev() GPL-only */
1219e5787d2SMatt Macy /* #undef HAVE_BIO_SET_DEV_GPL_ONLY */
1229e5787d2SMatt Macy 
123681ce946SMartin Matuska /* bio_set_dev() is a macro */
124681ce946SMartin Matuska /* #undef HAVE_BIO_SET_DEV_MACRO */
125681ce946SMartin Matuska 
1269e5787d2SMatt Macy /* bio_set_op_attrs is available */
1279e5787d2SMatt Macy /* #undef HAVE_BIO_SET_OP_ATTRS */
1289e5787d2SMatt Macy 
129315ee00fSMartin Matuska /* blkdev_get_by_path() exists and takes 4 args */
130315ee00fSMartin Matuska /* #undef HAVE_BLKDEV_GET_BY_PATH_4ARG */
131315ee00fSMartin Matuska 
132681ce946SMartin Matuska /* blkdev_get_by_path() handles ERESTARTSYS */
133681ce946SMartin Matuska /* #undef HAVE_BLKDEV_GET_ERESTARTSYS */
134681ce946SMartin Matuska 
1351719886fSMartin Matuska /* __blkdev_issue_discard(flags) is available */
1361719886fSMartin Matuska /* #undef HAVE_BLKDEV_ISSUE_DISCARD_ASYNC_FLAGS */
137e3aa18adSMartin Matuska 
138e2257b31SMartin Matuska /* __blkdev_issue_discard() is available */
1391719886fSMartin Matuska /* #undef HAVE_BLKDEV_ISSUE_DISCARD_ASYNC_NOFLAGS */
1401719886fSMartin Matuska 
1411719886fSMartin Matuska /* blkdev_issue_discard(flags) is available */
1421719886fSMartin Matuska /* #undef HAVE_BLKDEV_ISSUE_DISCARD_FLAGS */
1431719886fSMartin Matuska 
1441719886fSMartin Matuska /* blkdev_issue_discard() is available */
1451719886fSMartin Matuska /* #undef HAVE_BLKDEV_ISSUE_DISCARD_NOFLAGS */
146e2257b31SMartin Matuska 
147e3aa18adSMartin Matuska /* blkdev_issue_secure_erase() is available */
148e3aa18adSMartin Matuska /* #undef HAVE_BLKDEV_ISSUE_SECURE_ERASE */
149e3aa18adSMartin Matuska 
1501719886fSMartin Matuska /* blkdev_put() exists */
1511719886fSMartin Matuska /* #undef HAVE_BLKDEV_PUT */
1521719886fSMartin Matuska 
153315ee00fSMartin Matuska /* blkdev_put() accepts void* as arg 2 */
154315ee00fSMartin Matuska /* #undef HAVE_BLKDEV_PUT_HOLDER */
155315ee00fSMartin Matuska 
15629dc9349SMartin Matuska /* struct queue_limits has a features field */
15729dc9349SMartin Matuska /* #undef HAVE_BLKDEV_QUEUE_LIMITS_FEATURES */
15829dc9349SMartin Matuska 
1599e5787d2SMatt Macy /* blkdev_reread_part() exists */
1609e5787d2SMatt Macy /* #undef HAVE_BLKDEV_REREAD_PART */
1619e5787d2SMatt Macy 
1629e5787d2SMatt Macy /* blkg_tryget() is available */
1639e5787d2SMatt Macy /* #undef HAVE_BLKG_TRYGET */
1649e5787d2SMatt Macy 
1659e5787d2SMatt Macy /* blkg_tryget() GPL-only */
1669e5787d2SMatt Macy /* #undef HAVE_BLKG_TRYGET_GPL_ONLY */
1679e5787d2SMatt Macy 
1681f88aa09SMartin Matuska /* blk_alloc_disk() exists */
1691f88aa09SMartin Matuska /* #undef HAVE_BLK_ALLOC_DISK */
1701f88aa09SMartin Matuska 
1711719886fSMartin Matuska /* blk_alloc_disk() exists and takes 2 args */
1721719886fSMartin Matuska /* #undef HAVE_BLK_ALLOC_DISK_2ARG */
1731719886fSMartin Matuska 
1749e5787d2SMatt Macy /* blk_alloc_queue() expects request function */
1759e5787d2SMatt Macy /* #undef HAVE_BLK_ALLOC_QUEUE_REQUEST_FN */
1769e5787d2SMatt Macy 
1778fb96679SMartin Matuska /* blk_alloc_queue_rh() expects request function */
1788fb96679SMartin Matuska /* #undef HAVE_BLK_ALLOC_QUEUE_REQUEST_FN_RH */
1798fb96679SMartin Matuska 
180271171e0SMartin Matuska /* blk_cleanup_disk() exists */
181271171e0SMartin Matuska /* #undef HAVE_BLK_CLEANUP_DISK */
182271171e0SMartin Matuska 
183315ee00fSMartin Matuska /* blk_mode_t is defined */
184315ee00fSMartin Matuska /* #undef HAVE_BLK_MODE_T */
185315ee00fSMartin Matuska 
1861719886fSMartin Matuska /* block multiqueue hardware context is cached in struct request */
1871719886fSMartin Matuska /* #undef HAVE_BLK_MQ_RQ_HCTX */
1881719886fSMartin Matuska 
1899e5787d2SMatt Macy /* blk queue backing_dev_info is dynamic */
1909e5787d2SMatt Macy /* #undef HAVE_BLK_QUEUE_BDI_DYNAMIC */
1919e5787d2SMatt Macy 
192e3aa18adSMartin Matuska /* blk_queue_discard() is available */
193e3aa18adSMartin Matuska /* #undef HAVE_BLK_QUEUE_DISCARD */
194e3aa18adSMartin Matuska 
19529dc9349SMartin Matuska /* backing_dev_info is available through queue gendisk */
19629dc9349SMartin Matuska /* #undef HAVE_BLK_QUEUE_DISK_BDI */
19729dc9349SMartin Matuska 
1989e5787d2SMatt Macy /* blk_queue_secure_erase() is available */
1999e5787d2SMatt Macy /* #undef HAVE_BLK_QUEUE_SECURE_ERASE */
2009e5787d2SMatt Macy 
2016ba2210eSMartin Matuska /* blk_queue_update_readahead() exists */
2026ba2210eSMartin Matuska /* #undef HAVE_BLK_QUEUE_UPDATE_READAHEAD */
2036ba2210eSMartin Matuska 
204315ee00fSMartin Matuska /* BLK_STS_RESV_CONFLICT is defined */
205315ee00fSMartin Matuska /* #undef HAVE_BLK_STS_RESV_CONFLICT */
206315ee00fSMartin Matuska 
207315ee00fSMartin Matuska /* Define if release() in block_device_operations takes 1 arg */
208315ee00fSMartin Matuska /* #undef HAVE_BLOCK_DEVICE_OPERATIONS_RELEASE_1ARG */
209315ee00fSMartin Matuska 
210476ef25dSMartin Matuska /* Define if revalidate_disk() in block_device_operations */
211476ef25dSMartin Matuska /* #undef HAVE_BLOCK_DEVICE_OPERATIONS_REVALIDATE_DISK */
212476ef25dSMartin Matuska 
2136bfe9a13SMartin Matuska /* Define to 1 if you have the Mac OS X function
2146bfe9a13SMartin Matuska    CFLocaleCopyPreferredLanguages in the CoreFoundation framework. */
2156bfe9a13SMartin Matuska /* #undef HAVE_CFLOCALECOPYPREFERREDLANGUAGES */
2166bfe9a13SMartin Matuska 
2176bfe9a13SMartin Matuska /* Define to 1 if you have the Mac OS X function CFPreferencesCopyAppValue in
2186bfe9a13SMartin Matuska    the CoreFoundation framework. */
2196bfe9a13SMartin Matuska /* #undef HAVE_CFPREFERENCESCOPYAPPVALUE */
2206bfe9a13SMartin Matuska 
2218fb96679SMartin Matuska /* #undef HAVE_CHECK_DISK_CHANGE */
2228fb96679SMartin Matuska 
223315ee00fSMartin Matuska /* copy_splice_read exists */
224315ee00fSMartin Matuska /* #undef HAVE_COPY_SPLICE_READ */
225315ee00fSMartin Matuska 
2262a58b312SMartin Matuska /* cpu_has_feature() is GPL-only */
2272a58b312SMartin Matuska /* #undef HAVE_CPU_HAS_FEATURE_GPL_ONLY */
2282a58b312SMartin Matuska 
2299e5787d2SMatt Macy /* Define if the GNU dcgettext() function is already present or preinstalled.
2309e5787d2SMatt Macy    */
2319e5787d2SMatt Macy /* #undef HAVE_DCGETTEXT */
2329e5787d2SMatt Macy 
2339e5787d2SMatt Macy /* DECLARE_EVENT_CLASS() is available */
2349e5787d2SMatt Macy /* #undef HAVE_DECLARE_EVENT_CLASS */
2359e5787d2SMatt Macy 
2365c65a0a9SMartin Matuska /* 3-arg dequeue_signal() takes a type argument */
2375c65a0a9SMartin Matuska /* #undef HAVE_DEQUEUE_SIGNAL_3ARG_TYPE */
238dbd5678dSMartin Matuska 
239f03aca96SMartin Matuska /* dequeue_signal() takes 4 arguments */
240f03aca96SMartin Matuska /* #undef HAVE_DEQUEUE_SIGNAL_4ARG */
241f03aca96SMartin Matuska 
2428fb96679SMartin Matuska /* lookup_bdev() wants dev_t arg */
2438fb96679SMartin Matuska /* #undef HAVE_DEVT_LOOKUP_BDEV */
2448fb96679SMartin Matuska 
245315ee00fSMartin Matuska /* disk_check_media_change() exists */
246315ee00fSMartin Matuska /* #undef HAVE_DISK_CHECK_MEDIA_CHANGE */
247315ee00fSMartin Matuska 
248476ef25dSMartin Matuska /* disk_*_io_acct() available */
249476ef25dSMartin Matuska /* #undef HAVE_DISK_IO_ACCT */
250476ef25dSMartin Matuska 
2516ba2210eSMartin Matuska /* disk_update_readahead() exists */
2526ba2210eSMartin Matuska /* #undef HAVE_DISK_UPDATE_READAHEAD */
2536ba2210eSMartin Matuska 
2549e5787d2SMatt Macy /* Define to 1 if you have the <dlfcn.h> header file. */
2559e5787d2SMatt Macy #define HAVE_DLFCN_H 1
2569e5787d2SMatt Macy 
257*b59a0cdeSMartin Matuska /* dops->d_revalidate() takes 4 args */
258*b59a0cdeSMartin Matuska /* #undef HAVE_D_REVALIDATE_4ARGS */
259*b59a0cdeSMartin Matuska 
2601719886fSMartin Matuska /* Define to 1 if you have the 'execvpe' function. */
2611719886fSMartin Matuska #define HAVE_EXECVPE 1
2623494f7c0SMartin Matuska 
263f03aca96SMartin Matuska /* fault_in_iov_iter_readable() is available */
264f03aca96SMartin Matuska /* #undef HAVE_FAULT_IN_IOV_ITER_READABLE */
265f03aca96SMartin Matuska 
2667a7741afSMartin Matuska /* file->f_version exists */
2677a7741afSMartin Matuska /* #undef HAVE_FILE_F_VERSION */
2689e5787d2SMatt Macy 
2692a58b312SMartin Matuska /* flush_dcache_page() is GPL-only */
2702a58b312SMartin Matuska /* #undef HAVE_FLUSH_DCACHE_PAGE_GPL_ONLY */
2712a58b312SMartin Matuska 
272bb2d13b6SMartin Matuska /* Define if compiler supports -Wformat-overflow */
273bb2d13b6SMartin Matuska /* #undef HAVE_FORMAT_OVERFLOW */
274bb2d13b6SMartin Matuska 
275abcdc1b9SMartin Matuska /* fsync_bdev() is declared in include/blkdev.h */
276abcdc1b9SMartin Matuska /* #undef HAVE_FSYNC_BDEV */
277abcdc1b9SMartin Matuska 
278c7046f76SMartin Matuska /* yes */
279c7046f76SMartin Matuska /* #undef HAVE_GENERIC_FADVISE */
280c7046f76SMartin Matuska 
281d411c1d6SMartin Matuska /* generic_fillattr requires struct mnt_idmap* */
282d411c1d6SMartin Matuska /* #undef HAVE_GENERIC_FILLATTR_IDMAP */
283d411c1d6SMartin Matuska 
284abcdc1b9SMartin Matuska /* generic_fillattr requires struct mnt_idmap* and u32 request_mask */
285abcdc1b9SMartin Matuska /* #undef HAVE_GENERIC_FILLATTR_IDMAP_REQMASK */
286abcdc1b9SMartin Matuska 
287476ef25dSMartin Matuska /* generic_fillattr requires struct user_namespace* */
288476ef25dSMartin Matuska /* #undef HAVE_GENERIC_FILLATTR_USERNS */
289476ef25dSMartin Matuska 
2908fb96679SMartin Matuska /* generic_*_io_acct() 4 arg available */
2919e5787d2SMatt Macy /* #undef HAVE_GENERIC_IO_ACCT_4ARG */
2929e5787d2SMatt Macy 
2937a7741afSMartin Matuska /* GENHD_FL_EXT_DEVT flag is available */
2947a7741afSMartin Matuska /* #undef HAVE_GENHD_FL_EXT_DEVT */
2959e5787d2SMatt Macy 
2967a7741afSMartin Matuska /* GENHD_FL_NO_PART flag is available */
2977a7741afSMartin Matuska /* #undef HAVE_GENHD_FL_NO_PART */
2989e5787d2SMatt Macy 
2999e5787d2SMatt Macy /* Define if the GNU gettext() function is already present or preinstalled. */
3009e5787d2SMatt Macy /* #undef HAVE_GETTEXT */
3019e5787d2SMatt Macy 
302b985c9caSMartin Matuska /* Define to 1 if you have the 'gettid' function. */
303b985c9caSMartin Matuska /* #undef HAVE_GETTID */
304b985c9caSMartin Matuska 
3056ba2210eSMartin Matuska /* iops->get_acl() exists */
3066ba2210eSMartin Matuska /* #undef HAVE_GET_ACL */
3076ba2210eSMartin Matuska 
3086ba2210eSMartin Matuska /* iops->get_acl() takes rcu */
3096ba2210eSMartin Matuska /* #undef HAVE_GET_ACL_RCU */
3106ba2210eSMartin Matuska 
31115f0b8c3SMartin Matuska /* has iops->get_inode_acl() */
31215f0b8c3SMartin Matuska /* #undef HAVE_GET_INODE_ACL */
31315f0b8c3SMartin Matuska 
314dbd5678dSMartin Matuska /* iattr->ia_vfsuid and iattr->ia_vfsgid exist */
315dbd5678dSMartin Matuska /* #undef HAVE_IATTR_VFSID */
316dbd5678dSMartin Matuska 
3179e5787d2SMatt Macy /* Define if you have the iconv() function and it works. */
3189e5787d2SMatt Macy #define HAVE_ICONV 1
3199e5787d2SMatt Macy 
320d411c1d6SMartin Matuska /* iops->getattr() takes struct mnt_idmap* */
321d411c1d6SMartin Matuska /* #undef HAVE_IDMAP_IOPS_GETATTR */
322d411c1d6SMartin Matuska 
323d411c1d6SMartin Matuska /* iops->setattr() takes struct mnt_idmap* */
324d411c1d6SMartin Matuska /* #undef HAVE_IDMAP_IOPS_SETATTR */
325d411c1d6SMartin Matuska 
326dbd5678dSMartin Matuska /* APIs for idmapped mount are present */
327dbd5678dSMartin Matuska /* #undef HAVE_IDMAP_MNT_API */
328dbd5678dSMartin Matuska 
329fd45b686SMartin Matuska /* mnt_idmap does not have user_namespace */
330fd45b686SMartin Matuska /* #undef HAVE_IDMAP_NO_USERNS */
331fd45b686SMartin Matuska 
332bb2d13b6SMartin Matuska /* Define if compiler supports -Wimplicit-fallthrough */
333bb2d13b6SMartin Matuska /* #undef HAVE_IMPLICIT_FALLTHROUGH */
334bb2d13b6SMartin Matuska 
335a0b956f5SMartin Matuska /* Define if compiler supports -Winfinite-recursion */
336a0b956f5SMartin Matuska /* #undef HAVE_INFINITE_RECURSION */
337a0b956f5SMartin Matuska 
338f552d7adSMartin Matuska /* inode_get_atime() exists in linux/fs.h */
339f552d7adSMartin Matuska /* #undef HAVE_INODE_GET_ATIME */
340f552d7adSMartin Matuska 
341abcdc1b9SMartin Matuska /* inode_get_ctime() exists in linux/fs.h */
342abcdc1b9SMartin Matuska /* #undef HAVE_INODE_GET_CTIME */
343abcdc1b9SMartin Matuska 
344f552d7adSMartin Matuska /* inode_get_mtime() exists in linux/fs.h */
345f552d7adSMartin Matuska /* #undef HAVE_INODE_GET_MTIME */
346f552d7adSMartin Matuska 
347476ef25dSMartin Matuska /* inode_owner_or_capable() exists */
348476ef25dSMartin Matuska /* #undef HAVE_INODE_OWNER_OR_CAPABLE */
349476ef25dSMartin Matuska 
350d411c1d6SMartin Matuska /* inode_owner_or_capable() takes mnt_idmap */
351d411c1d6SMartin Matuska /* #undef HAVE_INODE_OWNER_OR_CAPABLE_IDMAP */
352d411c1d6SMartin Matuska 
353476ef25dSMartin Matuska /* inode_owner_or_capable() takes user_ns */
354d411c1d6SMartin Matuska /* #undef HAVE_INODE_OWNER_OR_CAPABLE_USERNS */
355476ef25dSMartin Matuska 
356f552d7adSMartin Matuska /* inode_set_atime_to_ts() exists in linux/fs.h */
357f552d7adSMartin Matuska /* #undef HAVE_INODE_SET_ATIME_TO_TS */
358f552d7adSMartin Matuska 
359abcdc1b9SMartin Matuska /* inode_set_ctime_to_ts() exists in linux/fs.h */
360abcdc1b9SMartin Matuska /* #undef HAVE_INODE_SET_CTIME_TO_TS */
361abcdc1b9SMartin Matuska 
362f552d7adSMartin Matuska /* inode_set_mtime_to_ts() exists in linux/fs.h */
363f552d7adSMartin Matuska /* #undef HAVE_INODE_SET_MTIME_TO_TS */
364f552d7adSMartin Matuska 
3659e5787d2SMatt Macy /* timestamp_truncate() exists */
3669e5787d2SMatt Macy /* #undef HAVE_INODE_TIMESTAMP_TRUNCATE */
3679e5787d2SMatt Macy 
3689e5787d2SMatt Macy /* Define to 1 if you have the <inttypes.h> header file. */
3699e5787d2SMatt Macy #define HAVE_INTTYPES_H 1
3709e5787d2SMatt Macy 
371d411c1d6SMartin Matuska /* iops->create() takes struct mnt_idmap* */
372d411c1d6SMartin Matuska /* #undef HAVE_IOPS_CREATE_IDMAP */
373d411c1d6SMartin Matuska 
374476ef25dSMartin Matuska /* iops->create() takes struct user_namespace* */
375476ef25dSMartin Matuska /* #undef HAVE_IOPS_CREATE_USERNS */
376476ef25dSMartin Matuska 
377d411c1d6SMartin Matuska /* iops->mkdir() takes struct mnt_idmap* */
378d411c1d6SMartin Matuska /* #undef HAVE_IOPS_MKDIR_IDMAP */
379d411c1d6SMartin Matuska 
380476ef25dSMartin Matuska /* iops->mkdir() takes struct user_namespace* */
381476ef25dSMartin Matuska /* #undef HAVE_IOPS_MKDIR_USERNS */
382476ef25dSMartin Matuska 
383d411c1d6SMartin Matuska /* iops->mknod() takes struct mnt_idmap* */
384d411c1d6SMartin Matuska /* #undef HAVE_IOPS_MKNOD_IDMAP */
385d411c1d6SMartin Matuska 
386476ef25dSMartin Matuska /* iops->mknod() takes struct user_namespace* */
387476ef25dSMartin Matuska /* #undef HAVE_IOPS_MKNOD_USERNS */
388476ef25dSMartin Matuska 
389d411c1d6SMartin Matuska /* iops->permission() takes struct mnt_idmap* */
390d411c1d6SMartin Matuska /* #undef HAVE_IOPS_PERMISSION_IDMAP */
391d411c1d6SMartin Matuska 
392716fd348SMartin Matuska /* iops->permission() takes struct user_namespace* */
393716fd348SMartin Matuska /* #undef HAVE_IOPS_PERMISSION_USERNS */
394716fd348SMartin Matuska 
395d411c1d6SMartin Matuska /* iops->rename() takes struct mnt_idmap* */
396d411c1d6SMartin Matuska /* #undef HAVE_IOPS_RENAME_IDMAP */
397d411c1d6SMartin Matuska 
398476ef25dSMartin Matuska /* iops->rename() takes struct user_namespace* */
399476ef25dSMartin Matuska /* #undef HAVE_IOPS_RENAME_USERNS */
400476ef25dSMartin Matuska 
401d411c1d6SMartin Matuska /* iops->symlink() takes struct mnt_idmap* */
402d411c1d6SMartin Matuska /* #undef HAVE_IOPS_SYMLINK_IDMAP */
403d411c1d6SMartin Matuska 
404476ef25dSMartin Matuska /* iops->symlink() takes struct user_namespace* */
405476ef25dSMartin Matuska /* #undef HAVE_IOPS_SYMLINK_USERNS */
406476ef25dSMartin Matuska 
407*b59a0cdeSMartin Matuska /* iov_iter_get_pages2() is available */
408*b59a0cdeSMartin Matuska /* #undef HAVE_IOV_ITER_GET_PAGES2 */
409*b59a0cdeSMartin Matuska 
410681ce946SMartin Matuska /* iov_iter_type() is available */
411681ce946SMartin Matuska /* #undef HAVE_IOV_ITER_TYPE */
412681ce946SMartin Matuska 
4131719886fSMartin Matuska /* Define to 1 if you have the 'issetugid' function. */
4149e5787d2SMatt Macy #define HAVE_ISSETUGID 1
4159e5787d2SMatt Macy 
416315ee00fSMartin Matuska /* iter_iov() is available */
417315ee00fSMartin Matuska /* #undef HAVE_ITER_IOV */
418315ee00fSMartin Matuska 
4196bfe9a13SMartin Matuska /* iter_is_ubuf() is available */
4206bfe9a13SMartin Matuska /* #undef HAVE_ITER_IS_UBUF */
4216bfe9a13SMartin Matuska 
4229e5787d2SMatt Macy /* kernel has kernel_fpu_* functions */
4239e5787d2SMatt Macy /* #undef HAVE_KERNEL_FPU */
4249e5787d2SMatt Macy 
4259e5787d2SMatt Macy /* kernel has asm/fpu/api.h */
4269e5787d2SMatt Macy /* #undef HAVE_KERNEL_FPU_API_HEADER */
4279e5787d2SMatt Macy 
4289e5787d2SMatt Macy /* kernel fpu internal */
4299e5787d2SMatt Macy /* #undef HAVE_KERNEL_FPU_INTERNAL */
4309e5787d2SMatt Macy 
431e3aa18adSMartin Matuska /* kernel has asm/fpu/internal.h */
432e3aa18adSMartin Matuska /* #undef HAVE_KERNEL_FPU_INTERNAL_HEADER */
433e3aa18adSMartin Matuska 
434bb2d13b6SMartin Matuska /* Define if compiler supports -Winfinite-recursion */
435bb2d13b6SMartin Matuska /* #undef HAVE_KERNEL_INFINITE_RECURSION */
436bb2d13b6SMartin Matuska 
437aca928a5SMartin Matuska /* kernel defines intptr_t */
438aca928a5SMartin Matuska /* #undef HAVE_KERNEL_INTPTR_T */
439aca928a5SMartin Matuska 
440f552d7adSMartin Matuska /* kernel has kernel_neon_* functions */
441f552d7adSMartin Matuska /* #undef HAVE_KERNEL_NEON */
442f552d7adSMartin Matuska 
4439e5787d2SMatt Macy /* kernel does stack verification */
4449e5787d2SMatt Macy /* #undef HAVE_KERNEL_OBJTOOL */
4459e5787d2SMatt Macy 
4468fb96679SMartin Matuska /* kernel has linux/objtool.h */
4478fb96679SMartin Matuska /* #undef HAVE_KERNEL_OBJTOOL_HEADER */
4488fb96679SMartin Matuska 
449fd45b686SMartin Matuska /* strlcpy() exists */
450fd45b686SMartin Matuska /* #undef HAVE_KERNEL_STRLCPY */
451fd45b686SMartin Matuska 
45275e1fea6SMartin Matuska /* kernel has kmap_local_page */
45375e1fea6SMartin Matuska /* #undef HAVE_KMAP_LOCAL_PAGE */
45475e1fea6SMartin Matuska 
4558fb96679SMartin Matuska /* Define if you have [aio] */
4569e5787d2SMatt Macy /* #undef HAVE_LIBAIO */
4579e5787d2SMatt Macy 
4588fb96679SMartin Matuska /* Define if you have [blkid] */
4599e5787d2SMatt Macy /* #undef HAVE_LIBBLKID */
4609e5787d2SMatt Macy 
4618fb96679SMartin Matuska /* Define if you have [crypto] */
4628fb96679SMartin Matuska #define HAVE_LIBCRYPTO 1
4639e5787d2SMatt Macy 
4648fb96679SMartin Matuska /* Define if you have [tirpc] */
4659e5787d2SMatt Macy /* #undef HAVE_LIBTIRPC */
4669e5787d2SMatt Macy 
4678fb96679SMartin Matuska /* Define if you have [udev] */
4689e5787d2SMatt Macy /* #undef HAVE_LIBUDEV */
4699e5787d2SMatt Macy 
470b985c9caSMartin Matuska /* Define if you have [unwind] */
471b985c9caSMartin Matuska /* #undef HAVE_LIBUNWIND */
472b985c9caSMartin Matuska 
473b985c9caSMartin Matuska /* libunwind has unw_get_elf_filename */
474b985c9caSMartin Matuska /* #undef HAVE_LIBUNWIND_ELF */
475b985c9caSMartin Matuska 
4768fb96679SMartin Matuska /* Define if you have [uuid] */
4779e5787d2SMatt Macy /* #undef HAVE_LIBUUID */
4789e5787d2SMatt Macy 
4797a7741afSMartin Matuska /* building against unsupported kernel version */
4807a7741afSMartin Matuska /* #undef HAVE_LINUX_EXPERIMENTAL */
4819e5787d2SMatt Macy 
4829e5787d2SMatt Macy /* makedev() is declared in sys/mkdev.h */
4839e5787d2SMatt Macy /* #undef HAVE_MAKEDEV_IN_MKDEV */
4849e5787d2SMatt Macy 
4859e5787d2SMatt Macy /* makedev() is declared in sys/sysmacros.h */
4869e5787d2SMatt Macy /* #undef HAVE_MAKEDEV_IN_SYSMACROS */
4879e5787d2SMatt Macy 
4889e5787d2SMatt Macy /* Noting that make_request_fn() returns blk_qc_t */
4899e5787d2SMatt Macy /* #undef HAVE_MAKE_REQUEST_FN_RET_QC */
4909e5787d2SMatt Macy 
4911719886fSMartin Matuska /* Define to 1 if you have the 'mlockall' function. */
4929e5787d2SMatt Macy #define HAVE_MLOCKALL 1
4939e5787d2SMatt Macy 
4947a7741afSMartin Matuska /* PG_error flag is available */
4957a7741afSMartin Matuska /* #undef HAVE_MM_PAGE_FLAG_ERROR */
4967a7741afSMartin Matuska 
49729dc9349SMartin Matuska /* page_mapping() is available */
49829dc9349SMartin Matuska /* #undef HAVE_MM_PAGE_MAPPING */
49929dc9349SMartin Matuska 
500783d3ff6SMartin Matuska /* page_size() is available */
501783d3ff6SMartin Matuska /* #undef HAVE_MM_PAGE_SIZE */
502783d3ff6SMartin Matuska 
5039e5787d2SMatt Macy /* Define if host toolchain supports MOVBE */
5049e5787d2SMatt Macy #define HAVE_MOVBE 1
5059e5787d2SMatt Macy 
506681ce946SMartin Matuska /* folio_wait_bit() exists */
507681ce946SMartin Matuska /* #undef HAVE_PAGEMAP_FOLIO_WAIT_BIT */
508681ce946SMartin Matuska 
509be181ee2SMartin Matuska /* part_to_dev() exists */
510be181ee2SMartin Matuska /* #undef HAVE_PART_TO_DEV */
511be181ee2SMartin Matuska 
5129e5787d2SMatt Macy /* iops->getattr() takes a path */
5139e5787d2SMatt Macy /* #undef HAVE_PATH_IOPS_GETATTR */
5149e5787d2SMatt Macy 
5159e5787d2SMatt Macy /* Define if host toolchain supports PCLMULQDQ */
5169e5787d2SMatt Macy #define HAVE_PCLMULQDQ 1
5179e5787d2SMatt Macy 
5186bfe9a13SMartin Matuska /* pin_user_pages_unlocked() is available */
5196bfe9a13SMartin Matuska /* #undef HAVE_PIN_USER_PAGES_UNLOCKED */
5206bfe9a13SMartin Matuska 
52129dc9349SMartin Matuska /* proc_handler ctl_table arg is const */
52229dc9349SMartin Matuska /* #undef HAVE_PROC_HANDLER_CTL_TABLE_CONST */
52329dc9349SMartin Matuska 
5249e5787d2SMatt Macy /* proc_ops structure exists */
5259e5787d2SMatt Macy /* #undef HAVE_PROC_OPS_STRUCT */
5269e5787d2SMatt Macy 
5279e5787d2SMatt Macy /* If available, contains the Python version number currently in use. */
5289e5787d2SMatt Macy #define HAVE_PYTHON "3.7"
5299e5787d2SMatt Macy 
5309e5787d2SMatt Macy /* qat is enabled and existed */
5319e5787d2SMatt Macy /* #undef HAVE_QAT */
5329e5787d2SMatt Macy 
5334e8d558cSMartin Matuska /* struct reclaim_state has reclaimed */
5344e8d558cSMartin Matuska /* #undef HAVE_RECLAIM_STATE_RECLAIMED */
5354e8d558cSMartin Matuska 
536271171e0SMartin Matuska /* register_shrinker is vararg */
537271171e0SMartin Matuska /* #undef HAVE_REGISTER_SHRINKER_VARARG */
538271171e0SMartin Matuska 
53929dc9349SMartin Matuska /* register_sysctl_sz exists */
54029dc9349SMartin Matuska /* #undef HAVE_REGISTER_SYSCTL_SZ */
54129dc9349SMartin Matuska 
542315ee00fSMartin Matuska /* register_sysctl_table exists */
543315ee00fSMartin Matuska /* #undef HAVE_REGISTER_SYSCTL_TABLE */
544315ee00fSMartin Matuska 
5459e5787d2SMatt Macy /* iops->rename() wants flags */
5469e5787d2SMatt Macy /* #undef HAVE_RENAME_WANTS_FLAGS */
5479e5787d2SMatt Macy 
5488fb96679SMartin Matuska /* revalidate_disk() is available */
5498fb96679SMartin Matuska /* #undef HAVE_REVALIDATE_DISK */
5508fb96679SMartin Matuska 
5518fb96679SMartin Matuska /* revalidate_disk_size() is available */
5528fb96679SMartin Matuska /* #undef HAVE_REVALIDATE_DISK_SIZE */
5538fb96679SMartin Matuska 
5548fb96679SMartin Matuska /* Define to 1 if you have the <security/pam_modules.h> header file. */
5558fb96679SMartin Matuska #define HAVE_SECURITY_PAM_MODULES_H 1
5568fb96679SMartin Matuska 
557d411c1d6SMartin Matuska /* setattr_prepare() accepts mnt_idmap */
558d411c1d6SMartin Matuska /* #undef HAVE_SETATTR_PREPARE_IDMAP */
559d411c1d6SMartin Matuska 
560476ef25dSMartin Matuska /* setattr_prepare() is available, doesn't accept user_namespace */
561476ef25dSMartin Matuska /* #undef HAVE_SETATTR_PREPARE_NO_USERNS */
5629e5787d2SMatt Macy 
563476ef25dSMartin Matuska /* setattr_prepare() accepts user_namespace */
564476ef25dSMartin Matuska /* #undef HAVE_SETATTR_PREPARE_USERNS */
565476ef25dSMartin Matuska 
566d411c1d6SMartin Matuska /* iops->set_acl() takes 4 args, arg1 is struct mnt_idmap * */
567d411c1d6SMartin Matuska /* #undef HAVE_SET_ACL_IDMAP_DENTRY */
568d411c1d6SMartin Matuska 
569476ef25dSMartin Matuska /* iops->set_acl() takes 4 args */
570476ef25dSMartin Matuska /* #undef HAVE_SET_ACL_USERNS */
571476ef25dSMartin Matuska 
57215f0b8c3SMartin Matuska /* iops->set_acl() takes 4 args, arg2 is struct dentry * */
57315f0b8c3SMartin Matuska /* #undef HAVE_SET_ACL_USERNS_DENTRY_ARG2 */
57415f0b8c3SMartin Matuska 
575f552d7adSMartin Matuska /* shrinker_register exists */
576f552d7adSMartin Matuska /* #undef HAVE_SHRINKER_REGISTER */
577f552d7adSMartin Matuska 
578476ef25dSMartin Matuska /* kernel_siginfo_t exists */
579476ef25dSMartin Matuska /* #undef HAVE_SIGINFO */
580476ef25dSMartin Matuska 
5819e5787d2SMatt Macy #if defined(__amd64__) || defined(__i386__)
5829e5787d2SMatt Macy /* Define if host toolchain supports SSE */
5839e5787d2SMatt Macy #define HAVE_SSE 1
5849e5787d2SMatt Macy 
5859e5787d2SMatt Macy /* Define if host toolchain supports SSE2 */
5869e5787d2SMatt Macy #define HAVE_SSE2 1
5879e5787d2SMatt Macy 
5889e5787d2SMatt Macy /* Define if host toolchain supports SSE3 */
5899e5787d2SMatt Macy #define HAVE_SSE3 1
5909e5787d2SMatt Macy 
5919e5787d2SMatt Macy /* Define if host toolchain supports SSE4.1 */
5929e5787d2SMatt Macy #define HAVE_SSE4_1 1
5939e5787d2SMatt Macy 
5949e5787d2SMatt Macy /* Define if host toolchain supports SSE4.2 */
5959e5787d2SMatt Macy #define HAVE_SSE4_2 1
5969e5787d2SMatt Macy 
5979e5787d2SMatt Macy /* Define if host toolchain supports SSSE3 */
5989e5787d2SMatt Macy #define HAVE_SSSE3 1
5999e5787d2SMatt Macy #endif
6009e5787d2SMatt Macy 
6019e5787d2SMatt Macy /* STACK_FRAME_NON_STANDARD is defined */
6029e5787d2SMatt Macy /* #undef HAVE_STACK_FRAME_NON_STANDARD */
6039e5787d2SMatt Macy 
6046ba2210eSMartin Matuska /* standalone <linux/stdarg.h> exists */
6056ba2210eSMartin Matuska /* #undef HAVE_STANDALONE_LINUX_STDARG */
6066ba2210eSMartin Matuska 
6079e5787d2SMatt Macy /* Define to 1 if you have the <stdint.h> header file. */
6089e5787d2SMatt Macy #define HAVE_STDINT_H 1
6099e5787d2SMatt Macy 
610271171e0SMartin Matuska /* Define to 1 if you have the <stdio.h> header file. */
611271171e0SMartin Matuska #define HAVE_STDIO_H 1
612271171e0SMartin Matuska 
6139e5787d2SMatt Macy /* Define to 1 if you have the <stdlib.h> header file. */
6149e5787d2SMatt Macy #define HAVE_STDLIB_H 1
6159e5787d2SMatt Macy 
6169e5787d2SMatt Macy /* Define to 1 if you have the <strings.h> header file. */
6179e5787d2SMatt Macy #define HAVE_STRINGS_H 1
6189e5787d2SMatt Macy 
6199e5787d2SMatt Macy /* Define to 1 if you have the <string.h> header file. */
6209e5787d2SMatt Macy #define HAVE_STRING_H 1
6219e5787d2SMatt Macy 
6221719886fSMartin Matuska /* Define to 1 if you have the 'strlcat' function. */
6239e5787d2SMatt Macy #define HAVE_STRLCAT 1
6249e5787d2SMatt Macy 
6251719886fSMartin Matuska /* Define to 1 if you have the 'strlcpy' function. */
6269e5787d2SMatt Macy #define HAVE_STRLCPY 1
6279e5787d2SMatt Macy 
6288fb96679SMartin Matuska /* submit_bio is member of struct block_device_operations */
6298fb96679SMartin Matuska /* #undef HAVE_SUBMIT_BIO_IN_BLOCK_DEVICE_OPERATIONS */
6308fb96679SMartin Matuska 
631f552d7adSMartin Matuska /* have super_block s_shrink */
632f552d7adSMartin Matuska /* #undef HAVE_SUPER_BLOCK_S_SHRINK */
633f552d7adSMartin Matuska 
634f552d7adSMartin Matuska /* have super_block s_shrink pointer */
635f552d7adSMartin Matuska /* #undef HAVE_SUPER_BLOCK_S_SHRINK_PTR */
636f552d7adSMartin Matuska 
637abcdc1b9SMartin Matuska /* sync_blockdev() is declared in include/blkdev.h */
638abcdc1b9SMartin Matuska /* #undef HAVE_SYNC_BLOCKDEV */
639abcdc1b9SMartin Matuska 
640716fd348SMartin Matuska /* struct kobj_type has default_groups */
641716fd348SMartin Matuska /* #undef HAVE_SYSFS_DEFAULT_GROUPS */
642716fd348SMartin Matuska 
6439e5787d2SMatt Macy /* Define to 1 if you have the <sys/stat.h> header file. */
6449e5787d2SMatt Macy #define HAVE_SYS_STAT_H 1
6459e5787d2SMatt Macy 
6469e5787d2SMatt Macy /* Define to 1 if you have the <sys/types.h> header file. */
6479e5787d2SMatt Macy #define HAVE_SYS_TYPES_H 1
6489e5787d2SMatt Macy 
64915f0b8c3SMartin Matuska /* i_op->tmpfile() uses old dentry signature */
65015f0b8c3SMartin Matuska /* #undef HAVE_TMPFILE_DENTRY */
65115f0b8c3SMartin Matuska 
652d411c1d6SMartin Matuska /* i_op->tmpfile() has mnt_idmap */
653d411c1d6SMartin Matuska /* #undef HAVE_TMPFILE_IDMAP */
654d411c1d6SMartin Matuska 
655476ef25dSMartin Matuska /* i_op->tmpfile() has userns */
656476ef25dSMartin Matuska /* #undef HAVE_TMPFILE_USERNS */
657476ef25dSMartin Matuska 
6589e5787d2SMatt Macy /* totalhigh_pages() exists */
6599e5787d2SMatt Macy /* #undef HAVE_TOTALHIGH_PAGES */
6609e5787d2SMatt Macy 
6619e5787d2SMatt Macy /* kernel has totalram_pages() */
6629e5787d2SMatt Macy /* #undef HAVE_TOTALRAM_PAGES_FUNC */
6639e5787d2SMatt Macy 
6641719886fSMartin Matuska /* Define to 1 if you have the 'udev_device_get_is_initialized' function. */
6658fb96679SMartin Matuska /* #undef HAVE_UDEV_DEVICE_GET_IS_INITIALIZED */
6668fb96679SMartin Matuska 
6679e5787d2SMatt Macy /* kernel has __kernel_fpu_* functions */
6689e5787d2SMatt Macy /* #undef HAVE_UNDERSCORE_KERNEL_FPU */
6699e5787d2SMatt Macy 
6709e5787d2SMatt Macy /* Define to 1 if you have the <unistd.h> header file. */
6719e5787d2SMatt Macy #define HAVE_UNISTD_H 1
6729e5787d2SMatt Macy 
673476ef25dSMartin Matuska /* iops->getattr() takes struct user_namespace* */
674476ef25dSMartin Matuska /* #undef HAVE_USERNS_IOPS_GETATTR */
675476ef25dSMartin Matuska 
676d411c1d6SMartin Matuska /* iops->setattr() takes struct user_namespace* */
677d411c1d6SMartin Matuska /* #undef HAVE_USERNS_IOPS_SETATTR */
678d411c1d6SMartin Matuska 
679315ee00fSMartin Matuska /* fops->clone_file_range() is available */
680315ee00fSMartin Matuska /* #undef HAVE_VFS_CLONE_FILE_RANGE */
681315ee00fSMartin Matuska 
682315ee00fSMartin Matuska /* fops->dedupe_file_range() is available */
683315ee00fSMartin Matuska /* #undef HAVE_VFS_DEDUPE_FILE_RANGE */
684315ee00fSMartin Matuska 
685716fd348SMartin Matuska /* filemap_dirty_folio exists */
686716fd348SMartin Matuska /* #undef HAVE_VFS_FILEMAP_DIRTY_FOLIO */
687716fd348SMartin Matuska 
688315ee00fSMartin Matuska /* generic_copy_file_range() is available */
689315ee00fSMartin Matuska /* #undef HAVE_VFS_GENERIC_COPY_FILE_RANGE */
690315ee00fSMartin Matuska 
6915c65a0a9SMartin Matuska /* migrate_folio exists */
6925c65a0a9SMartin Matuska /* #undef HAVE_VFS_MIGRATE_FOLIO */
6935c65a0a9SMartin Matuska 
694716fd348SMartin Matuska /* address_space_operations->readpages exists */
695716fd348SMartin Matuska /* #undef HAVE_VFS_READPAGES */
696716fd348SMartin Matuska 
697e3aa18adSMartin Matuska /* read_folio exists */
698e3aa18adSMartin Matuska /* #undef HAVE_VFS_READ_FOLIO */
699e3aa18adSMartin Matuska 
700315ee00fSMartin Matuska /* fops->remap_file_range() is available */
701315ee00fSMartin Matuska /* #undef HAVE_VFS_REMAP_FILE_RANGE */
702315ee00fSMartin Matuska 
7031f88aa09SMartin Matuska /* __set_page_dirty_nobuffers exists */
7041f88aa09SMartin Matuska /* #undef HAVE_VFS_SET_PAGE_DIRTY_NOBUFFERS */
7051f88aa09SMartin Matuska 
706783d3ff6SMartin Matuska /* splice_copy_file_range() is available */
707783d3ff6SMartin Matuska /* #undef HAVE_VFS_SPLICE_COPY_FILE_RANGE */
708783d3ff6SMartin Matuska 
7099e5787d2SMatt Macy /* __vmalloc page flags exists */
7109e5787d2SMatt Macy /* #undef HAVE_VMALLOC_PAGE_KERNEL */
7119e5787d2SMatt Macy 
712d411c1d6SMartin Matuska /* int (*writepage_t)() takes struct folio* */
713d411c1d6SMartin Matuska /* #undef HAVE_WRITEPAGE_T_FOLIO */
714d411c1d6SMartin Matuska 
715c7046f76SMartin Matuska /* xattr_handler->get() wants dentry and inode and flags */
716c7046f76SMartin Matuska /* #undef HAVE_XATTR_GET_DENTRY_INODE_FLAGS */
717c7046f76SMartin Matuska 
7189e5787d2SMatt Macy /* xattr_handler->set() wants both dentry and inode */
7199e5787d2SMatt Macy /* #undef HAVE_XATTR_SET_DENTRY_INODE */
7209e5787d2SMatt Macy 
721d411c1d6SMartin Matuska /* xattr_handler->set() takes mnt_idmap */
722d411c1d6SMartin Matuska /* #undef HAVE_XATTR_SET_IDMAP */
723d411c1d6SMartin Matuska 
724476ef25dSMartin Matuska /* xattr_handler->set() takes user_namespace */
725476ef25dSMartin Matuska /* #undef HAVE_XATTR_SET_USERNS */
726476ef25dSMartin Matuska 
727f03aca96SMartin Matuska /* Define if host toolchain supports XSAVE */
728f03aca96SMartin Matuska #define HAVE_XSAVE 1
729f03aca96SMartin Matuska 
730f03aca96SMartin Matuska /* Define if host toolchain supports XSAVEOPT */
731f03aca96SMartin Matuska #define HAVE_XSAVEOPT 1
732f03aca96SMartin Matuska 
733f03aca96SMartin Matuska /* Define if host toolchain supports XSAVES */
734f03aca96SMartin Matuska #define HAVE_XSAVES 1
735f03aca96SMartin Matuska 
7368d0b6a7dSMartin Matuska /* ZERO_PAGE() is GPL-only */
7378d0b6a7dSMartin Matuska /* #undef HAVE_ZERO_PAGE_GPL_ONLY */
7388d0b6a7dSMartin Matuska 
7398fb96679SMartin Matuska /* Define if you have [z] */
7409e5787d2SMatt Macy #define HAVE_ZLIB 1
7419e5787d2SMatt Macy 
7429e5787d2SMatt Macy /* kernel exports FPU functions */
7439e5787d2SMatt Macy /* #undef KERNEL_EXPORTS_X86_FPU */
7449e5787d2SMatt Macy 
745476ef25dSMartin Matuska /* TBD: fetch(3) support */
746476ef25dSMartin Matuska #if 0
747476ef25dSMartin Matuska /* whether the chosen libfetch is to be loaded at run-time */
748476ef25dSMartin Matuska #define LIBFETCH_DYNAMIC 1
749476ef25dSMartin Matuska 
750476ef25dSMartin Matuska /* libfetch is fetch(3) */
751476ef25dSMartin Matuska #define LIBFETCH_IS_FETCH 1
752476ef25dSMartin Matuska 
753476ef25dSMartin Matuska /* libfetch is libcurl */
754476ef25dSMartin Matuska #define LIBFETCH_IS_LIBCURL 0
755476ef25dSMartin Matuska 
756476ef25dSMartin Matuska /* soname of chosen libfetch */
757476ef25dSMartin Matuska #define LIBFETCH_SONAME "libfetch.so.6"
758476ef25dSMartin Matuska #endif
759476ef25dSMartin Matuska 
7609e5787d2SMatt Macy /* Define to the sub-directory where libtool stores uninstalled libraries. */
7619e5787d2SMatt Macy #define LT_OBJDIR ".libs/"
7629e5787d2SMatt Macy 
7639e5787d2SMatt Macy /* make_request_fn() return type */
7649e5787d2SMatt Macy /* #undef MAKE_REQUEST_FN_RET */
7659e5787d2SMatt Macy 
766f03aca96SMartin Matuska /* using complete_and_exit() instead */
767f03aca96SMartin Matuska /* #undef SPL_KTHREAD_COMPLETE_AND_EXIT */
768f03aca96SMartin Matuska 
7699e5787d2SMatt Macy /* Defined for legacy compatibility. */
7709e5787d2SMatt Macy #define SPL_META_ALIAS ZFS_META_ALIAS
7719e5787d2SMatt Macy 
7729e5787d2SMatt Macy /* Defined for legacy compatibility. */
7739e5787d2SMatt Macy #define SPL_META_RELEASE ZFS_META_RELEASE
7749e5787d2SMatt Macy 
7759e5787d2SMatt Macy /* Defined for legacy compatibility. */
7769e5787d2SMatt Macy #define SPL_META_VERSION ZFS_META_VERSION
7779e5787d2SMatt Macy 
778f03aca96SMartin Matuska /* pde_data() is PDE_DATA() */
779f03aca96SMartin Matuska /* #undef SPL_PDE_DATA */
780f03aca96SMartin Matuska 
7811719886fSMartin Matuska /* Define to 1 if all of the C89 standard headers exist (not just the ones
782271171e0SMartin Matuska    required in a freestanding environment). This macro is provided for
783271171e0SMartin Matuska    backward compatibility; new code need not use it. */
7849e5787d2SMatt Macy #define SYSTEM_FREEBSD 1
7859e5787d2SMatt Macy 
7869e5787d2SMatt Macy /* True if ZFS is to be compiled for a Linux system */
7879e5787d2SMatt Macy /* #undef SYSTEM_LINUX */
7889e5787d2SMatt Macy 
789271171e0SMartin Matuska /* Version number of package */
7908fb96679SMartin Matuska /* #undef ZFS_DEBUG */
7919e5787d2SMatt Macy 
7929e5787d2SMatt Macy /* /dev/zfs minor */
7939e5787d2SMatt Macy /* #undef ZFS_DEVICE_MINOR */
7949e5787d2SMatt Macy 
7959e5787d2SMatt Macy /* Define the project alias string. */
796*b59a0cdeSMartin Matuska #define ZFS_META_ALIAS "zfs-2.3.99-189-FreeBSD_g6a2f7b384"
7979e5787d2SMatt Macy 
7989e5787d2SMatt Macy /* Define the project author. */
7998fb96679SMartin Matuska #define ZFS_META_AUTHOR "OpenZFS"
8009e5787d2SMatt Macy 
8019e5787d2SMatt Macy /* Define the project release date. */
8029e5787d2SMatt Macy /* #undef ZFS_META_DATA */
8039e5787d2SMatt Macy 
8049e5787d2SMatt Macy /* Define the maximum compatible kernel version. */
805718519f4SMartin Matuska #define ZFS_META_KVER_MAX "6.12"
8069e5787d2SMatt Macy 
8079e5787d2SMatt Macy /* Define the minimum compatible kernel version. */
8087a7741afSMartin Matuska #define ZFS_META_KVER_MIN "4.18"
8099e5787d2SMatt Macy 
8109e5787d2SMatt Macy /* Define the project license. */
8119e5787d2SMatt Macy #define ZFS_META_LICENSE "CDDL"
8129e5787d2SMatt Macy 
8139e5787d2SMatt Macy /* Define the libtool library 'age' version information. */
8149e5787d2SMatt Macy /* #undef ZFS_META_LT_AGE */
8159e5787d2SMatt Macy 
8169e5787d2SMatt Macy /* Define the libtool library 'current' version information. */
8179e5787d2SMatt Macy /* #undef ZFS_META_LT_CURRENT */
8189e5787d2SMatt Macy 
8199e5787d2SMatt Macy /* Define the libtool library 'revision' version information. */
8209e5787d2SMatt Macy /* #undef ZFS_META_LT_REVISION */
8219e5787d2SMatt Macy 
8229e5787d2SMatt Macy /* Define the project name. */
8239e5787d2SMatt Macy #define ZFS_META_NAME "zfs"
8249e5787d2SMatt Macy 
8259e5787d2SMatt Macy /* Define the project release. */
826*b59a0cdeSMartin Matuska #define ZFS_META_RELEASE "189-FreeBSD_g6a2f7b384"
8279e5787d2SMatt Macy 
8289e5787d2SMatt Macy /* Define the project version. */
82987bf66d4SMartin Matuska #define ZFS_META_VERSION "2.3.99"
8308fb96679SMartin Matuska 
8318fb96679SMartin Matuska /* count is located in percpu_ref.data */
8328fb96679SMartin Matuska /* #undef ZFS_PERCPU_REF_COUNT_IN_DATA */
833