1 /* 2 */ 3 4 /* zfs_config.h. Generated from zfs_config.h.in by configure. */ 5 /* zfs_config.h.in. Generated from configure.ac by autoheader. */ 6 7 /* Define to 1 if translation of program messages to the user's native 8 language is requested. */ 9 /* #undef ENABLE_NLS */ 10 11 /* bio_end_io_t wants 1 arg */ 12 /* #undef HAVE_1ARG_BIO_END_IO_T */ 13 14 /* lookup_bdev() wants 1 arg */ 15 /* #undef HAVE_1ARG_LOOKUP_BDEV */ 16 17 /* submit_bio() wants 1 arg */ 18 /* #undef HAVE_1ARG_SUBMIT_BIO */ 19 20 /* bdi_setup_and_register() wants 2 args */ 21 /* #undef HAVE_2ARGS_BDI_SETUP_AND_REGISTER */ 22 23 /* vfs_getattr wants 2 args */ 24 /* #undef HAVE_2ARGS_VFS_GETATTR */ 25 26 /* zlib_deflate_workspacesize() wants 2 args */ 27 /* #undef HAVE_2ARGS_ZLIB_DEFLATE_WORKSPACESIZE */ 28 29 /* bdi_setup_and_register() wants 3 args */ 30 /* #undef HAVE_3ARGS_BDI_SETUP_AND_REGISTER */ 31 32 /* vfs_getattr wants 3 args */ 33 /* #undef HAVE_3ARGS_VFS_GETATTR */ 34 35 /* vfs_getattr wants 4 args */ 36 /* #undef HAVE_4ARGS_VFS_GETATTR */ 37 38 /* kernel has access_ok with 'type' parameter */ 39 /* #undef HAVE_ACCESS_OK_TYPE */ 40 41 /* posix_acl has refcount_t */ 42 /* #undef HAVE_ACL_REFCOUNT */ 43 44 /* add_disk() returns int */ 45 /* #undef HAVE_ADD_DISK_RET */ 46 47 /* Define if host toolchain supports AES */ 48 #define HAVE_AES 1 49 50 /* Define if you have [rt] */ 51 #define HAVE_AIO_H 1 52 53 #ifdef __amd64__ 54 #ifndef RESCUE 55 /* Define if host toolchain supports AVX */ 56 #define HAVE_AVX 1 57 #endif 58 59 /* Define if host toolchain supports AVX2 */ 60 #define HAVE_AVX2 1 61 62 /* Define if host toolchain supports AVX512BW */ 63 #define HAVE_AVX512BW 1 64 65 /* Define if host toolchain supports AVX512CD */ 66 #define HAVE_AVX512CD 1 67 68 /* Define if host toolchain supports AVX512DQ */ 69 #define HAVE_AVX512DQ 1 70 71 /* Define if host toolchain supports AVX512ER */ 72 #define HAVE_AVX512ER 1 73 74 /* Define if host toolchain supports AVX512F */ 75 #define HAVE_AVX512F 1 76 77 /* Define if host toolchain supports AVX512IFMA */ 78 #define HAVE_AVX512IFMA 1 79 80 /* Define if host toolchain supports AVX512PF */ 81 #define HAVE_AVX512PF 1 82 83 /* Define if host toolchain supports AVX512VBMI */ 84 #define HAVE_AVX512VBMI 1 85 86 /* Define if host toolchain supports AVX512VL */ 87 #define HAVE_AVX512VL 1 88 #endif 89 90 /* bdevname() is available */ 91 /* #undef HAVE_BDEVNAME */ 92 93 /* bdev_check_media_change() exists */ 94 /* #undef HAVE_BDEV_CHECK_MEDIA_CHANGE */ 95 96 /* bdev_*_io_acct() available */ 97 /* #undef HAVE_BDEV_IO_ACCT_63 */ 98 99 /* bdev_*_io_acct() available */ 100 /* #undef HAVE_BDEV_IO_ACCT_OLD */ 101 102 /* bdev_kobj() exists */ 103 /* #undef HAVE_BDEV_KOBJ */ 104 105 /* bdev_max_discard_sectors() is available */ 106 /* #undef HAVE_BDEV_MAX_DISCARD_SECTORS */ 107 108 /* bdev_max_secure_erase_sectors() is available */ 109 /* #undef HAVE_BDEV_MAX_SECURE_ERASE_SECTORS */ 110 111 /* block_device_operations->submit_bio() returns void */ 112 /* #undef HAVE_BDEV_SUBMIT_BIO_RETURNS_VOID */ 113 114 /* bdev_whole() is available */ 115 /* #undef HAVE_BDEV_WHOLE */ 116 117 /* bio_alloc() takes 4 arguments */ 118 /* #undef HAVE_BIO_ALLOC_4ARG */ 119 120 /* bio->bi_bdev->bd_disk exists */ 121 /* #undef HAVE_BIO_BDEV_DISK */ 122 123 /* bio->bi_opf is defined */ 124 /* #undef HAVE_BIO_BI_OPF */ 125 126 /* bio->bi_status exists */ 127 /* #undef HAVE_BIO_BI_STATUS */ 128 129 /* bio has bi_iter */ 130 /* #undef HAVE_BIO_BVEC_ITER */ 131 132 /* bio_*_io_acct() available */ 133 /* #undef HAVE_BIO_IO_ACCT */ 134 135 /* bio_max_segs() is implemented */ 136 /* #undef HAVE_BIO_MAX_SEGS */ 137 138 /* bio_set_dev() is available */ 139 /* #undef HAVE_BIO_SET_DEV */ 140 141 /* bio_set_dev() GPL-only */ 142 /* #undef HAVE_BIO_SET_DEV_GPL_ONLY */ 143 144 /* bio_set_dev() is a macro */ 145 /* #undef HAVE_BIO_SET_DEV_MACRO */ 146 147 /* bio_set_op_attrs is available */ 148 /* #undef HAVE_BIO_SET_OP_ATTRS */ 149 150 /* blkdev_get_by_path() exists and takes 4 args */ 151 /* #undef HAVE_BLKDEV_GET_BY_PATH_4ARG */ 152 153 /* blkdev_get_by_path() handles ERESTARTSYS */ 154 /* #undef HAVE_BLKDEV_GET_ERESTARTSYS */ 155 156 /* blkdev_issue_discard() is available */ 157 /* #undef HAVE_BLKDEV_ISSUE_DISCARD */ 158 159 /* blkdev_issue_secure_erase() is available */ 160 /* #undef HAVE_BLKDEV_ISSUE_SECURE_ERASE */ 161 162 /* blkdev_put() accepts void* as arg 2 */ 163 /* #undef HAVE_BLKDEV_PUT_HOLDER */ 164 165 /* blkdev_reread_part() exists */ 166 /* #undef HAVE_BLKDEV_REREAD_PART */ 167 168 /* blkg_tryget() is available */ 169 /* #undef HAVE_BLKG_TRYGET */ 170 171 /* blkg_tryget() GPL-only */ 172 /* #undef HAVE_BLKG_TRYGET_GPL_ONLY */ 173 174 /* blk_alloc_disk() exists */ 175 /* #undef HAVE_BLK_ALLOC_DISK */ 176 177 /* blk_alloc_queue() expects request function */ 178 /* #undef HAVE_BLK_ALLOC_QUEUE_REQUEST_FN */ 179 180 /* blk_alloc_queue_rh() expects request function */ 181 /* #undef HAVE_BLK_ALLOC_QUEUE_REQUEST_FN_RH */ 182 183 /* blk_cleanup_disk() exists */ 184 /* #undef HAVE_BLK_CLEANUP_DISK */ 185 186 /* blk_mode_t is defined */ 187 /* #undef HAVE_BLK_MODE_T */ 188 189 /* block multiqueue is available */ 190 /* #undef HAVE_BLK_MQ */ 191 192 /* blk queue backing_dev_info is dynamic */ 193 /* #undef HAVE_BLK_QUEUE_BDI_DYNAMIC */ 194 195 /* blk_queue_discard() is available */ 196 /* #undef HAVE_BLK_QUEUE_DISCARD */ 197 198 /* blk_queue_flag_clear() exists */ 199 /* #undef HAVE_BLK_QUEUE_FLAG_CLEAR */ 200 201 /* blk_queue_flag_set() exists */ 202 /* #undef HAVE_BLK_QUEUE_FLAG_SET */ 203 204 /* blk_queue_flush() is available */ 205 /* #undef HAVE_BLK_QUEUE_FLUSH */ 206 207 /* blk_queue_flush() is GPL-only */ 208 /* #undef HAVE_BLK_QUEUE_FLUSH_GPL_ONLY */ 209 210 /* blk_queue_secdiscard() is available */ 211 /* #undef HAVE_BLK_QUEUE_SECDISCARD */ 212 213 /* blk_queue_secure_erase() is available */ 214 /* #undef HAVE_BLK_QUEUE_SECURE_ERASE */ 215 216 /* blk_queue_update_readahead() exists */ 217 /* #undef HAVE_BLK_QUEUE_UPDATE_READAHEAD */ 218 219 /* blk_queue_write_cache() exists */ 220 /* #undef HAVE_BLK_QUEUE_WRITE_CACHE */ 221 222 /* blk_queue_write_cache() is GPL-only */ 223 /* #undef HAVE_BLK_QUEUE_WRITE_CACHE_GPL_ONLY */ 224 225 /* BLK_STS_RESV_CONFLICT is defined */ 226 /* #undef HAVE_BLK_STS_RESV_CONFLICT */ 227 228 /* Define if release() in block_device_operations takes 1 arg */ 229 /* #undef HAVE_BLOCK_DEVICE_OPERATIONS_RELEASE_1ARG */ 230 231 /* Define if revalidate_disk() in block_device_operations */ 232 /* #undef HAVE_BLOCK_DEVICE_OPERATIONS_REVALIDATE_DISK */ 233 234 /* Define to 1 if you have the Mac OS X function CFLocaleCopyCurrent in the 235 CoreFoundation framework. */ 236 /* #undef HAVE_CFLOCALECOPYCURRENT */ 237 238 /* Define to 1 if you have the Mac OS X function 239 CFLocaleCopyPreferredLanguages in the CoreFoundation framework. */ 240 /* #undef HAVE_CFLOCALECOPYPREFERREDLANGUAGES */ 241 242 /* Define to 1 if you have the Mac OS X function CFPreferencesCopyAppValue in 243 the CoreFoundation framework. */ 244 /* #undef HAVE_CFPREFERENCESCOPYAPPVALUE */ 245 246 /* check_disk_change() exists */ 247 /* #undef HAVE_CHECK_DISK_CHANGE */ 248 249 /* clear_inode() is available */ 250 /* #undef HAVE_CLEAR_INODE */ 251 252 /* dentry uses const struct dentry_operations */ 253 /* #undef HAVE_CONST_DENTRY_OPERATIONS */ 254 255 /* copy_from_iter() is available */ 256 /* #undef HAVE_COPY_FROM_ITER */ 257 258 /* copy_splice_read exists */ 259 /* #undef HAVE_COPY_SPLICE_READ */ 260 261 /* copy_to_iter() is available */ 262 /* #undef HAVE_COPY_TO_ITER */ 263 264 /* cpu_has_feature() is GPL-only */ 265 /* #undef HAVE_CPU_HAS_FEATURE_GPL_ONLY */ 266 267 /* yes */ 268 /* #undef HAVE_CPU_HOTPLUG */ 269 270 /* current_time() exists */ 271 /* #undef HAVE_CURRENT_TIME */ 272 273 /* Define if the GNU dcgettext() function is already present or preinstalled. 274 */ 275 /* #undef HAVE_DCGETTEXT */ 276 277 /* DECLARE_EVENT_CLASS() is available */ 278 /* #undef HAVE_DECLARE_EVENT_CLASS */ 279 280 /* dentry aliases are in d_u member */ 281 /* #undef HAVE_DENTRY_D_U_ALIASES */ 282 283 /* dequeue_signal() takes 4 arguments */ 284 /* #undef HAVE_DEQUEUE_SIGNAL_4ARG */ 285 286 /* lookup_bdev() wants dev_t arg */ 287 /* #undef HAVE_DEVT_LOOKUP_BDEV */ 288 289 /* sops->dirty_inode() wants flags */ 290 /* #undef HAVE_DIRTY_INODE_WITH_FLAGS */ 291 292 /* disk_check_media_change() exists */ 293 /* #undef HAVE_DISK_CHECK_MEDIA_CHANGE */ 294 295 /* disk_*_io_acct() available */ 296 /* #undef HAVE_DISK_IO_ACCT */ 297 298 /* disk_update_readahead() exists */ 299 /* #undef HAVE_DISK_UPDATE_READAHEAD */ 300 301 /* Define to 1 if you have the <dlfcn.h> header file. */ 302 #define HAVE_DLFCN_H 1 303 304 /* d_make_root() is available */ 305 /* #undef HAVE_D_MAKE_ROOT */ 306 307 /* d_prune_aliases() is available */ 308 /* #undef HAVE_D_PRUNE_ALIASES */ 309 310 /* dops->d_revalidate() operation takes nameidata */ 311 /* #undef HAVE_D_REVALIDATE_NAMEIDATA */ 312 313 /* eops->encode_fh() wants child and parent inodes */ 314 /* #undef HAVE_ENCODE_FH_WITH_INODE */ 315 316 /* sops->evict_inode() exists */ 317 /* #undef HAVE_EVICT_INODE */ 318 319 /* Define to 1 if you have the `execvpe' function. */ 320 /* #undef HAVE_EXECVPE */ 321 322 /* FALLOC_FL_ZERO_RANGE is defined */ 323 /* #undef HAVE_FALLOC_FL_ZERO_RANGE */ 324 325 /* fault_in_iov_iter_readable() is available */ 326 /* #undef HAVE_FAULT_IN_IOV_ITER_READABLE */ 327 328 /* filemap_range_has_page() is available */ 329 /* #undef HAVE_FILEMAP_RANGE_HAS_PAGE */ 330 331 /* fops->aio_fsync() exists */ 332 /* #undef HAVE_FILE_AIO_FSYNC */ 333 334 /* file_dentry() is available */ 335 /* #undef HAVE_FILE_DENTRY */ 336 337 /* fops->fadvise() exists */ 338 /* #undef HAVE_FILE_FADVISE */ 339 340 /* file_inode() is available */ 341 /* #undef HAVE_FILE_INODE */ 342 343 /* flush_dcache_page() is GPL-only */ 344 /* #undef HAVE_FLUSH_DCACHE_PAGE_GPL_ONLY */ 345 346 /* iops->follow_link() cookie */ 347 /* #undef HAVE_FOLLOW_LINK_COOKIE */ 348 349 /* iops->follow_link() nameidata */ 350 /* #undef HAVE_FOLLOW_LINK_NAMEIDATA */ 351 352 /* Define if compiler supports -Wformat-overflow */ 353 /* #undef HAVE_FORMAT_OVERFLOW */ 354 355 /* fsync_bdev() is declared in include/blkdev.h */ 356 /* #undef HAVE_FSYNC_BDEV */ 357 358 /* fops->fsync() with range */ 359 /* #undef HAVE_FSYNC_RANGE */ 360 361 /* fops->fsync() without dentry */ 362 /* #undef HAVE_FSYNC_WITHOUT_DENTRY */ 363 364 /* yes */ 365 /* #undef HAVE_GENERIC_FADVISE */ 366 367 /* generic_fillattr requires struct mnt_idmap* */ 368 /* #undef HAVE_GENERIC_FILLATTR_IDMAP */ 369 370 /* generic_fillattr requires struct mnt_idmap* and u32 request_mask */ 371 /* #undef HAVE_GENERIC_FILLATTR_IDMAP_REQMASK */ 372 373 /* generic_fillattr requires struct user_namespace* */ 374 /* #undef HAVE_GENERIC_FILLATTR_USERNS */ 375 376 /* generic_*_io_acct() 3 arg available */ 377 /* #undef HAVE_GENERIC_IO_ACCT_3ARG */ 378 379 /* generic_*_io_acct() 4 arg available */ 380 /* #undef HAVE_GENERIC_IO_ACCT_4ARG */ 381 382 /* generic_readlink is global */ 383 /* #undef HAVE_GENERIC_READLINK */ 384 385 /* generic_setxattr() exists */ 386 /* #undef HAVE_GENERIC_SETXATTR */ 387 388 /* generic_write_checks() takes kiocb */ 389 /* #undef HAVE_GENERIC_WRITE_CHECKS_KIOCB */ 390 391 /* Define if the GNU gettext() function is already present or preinstalled. */ 392 /* #undef HAVE_GETTEXT */ 393 394 /* iops->get_acl() exists */ 395 /* #undef HAVE_GET_ACL */ 396 397 /* iops->get_acl() takes rcu */ 398 /* #undef HAVE_GET_ACL_RCU */ 399 400 /* has iops->get_inode_acl() */ 401 /* #undef HAVE_GET_INODE_ACL */ 402 403 /* iops->get_link() cookie */ 404 /* #undef HAVE_GET_LINK_COOKIE */ 405 406 /* iops->get_link() delayed */ 407 /* #undef HAVE_GET_LINK_DELAYED */ 408 409 /* group_info->gid exists */ 410 /* #undef HAVE_GROUP_INFO_GID */ 411 412 /* has_capability() is available */ 413 /* #undef HAVE_HAS_CAPABILITY */ 414 415 /* iattr->ia_vfsuid and iattr->ia_vfsgid exist */ 416 /* #undef HAVE_IATTR_VFSID */ 417 418 /* Define if you have the iconv() function and it works. */ 419 #define HAVE_ICONV 1 420 421 /* iops->getattr() takes struct mnt_idmap* */ 422 /* #undef HAVE_IDMAP_IOPS_GETATTR */ 423 424 /* iops->setattr() takes struct mnt_idmap* */ 425 /* #undef HAVE_IDMAP_IOPS_SETATTR */ 426 427 /* APIs for idmapped mount are present */ 428 /* #undef HAVE_IDMAP_MNT_API */ 429 430 /* Define if compiler supports -Wimplicit-fallthrough */ 431 /* #undef HAVE_IMPLICIT_FALLTHROUGH */ 432 433 /* Define if compiler supports -Winfinite-recursion */ 434 /* #undef HAVE_INFINITE_RECURSION */ 435 436 /* inode_get_atime() exists in linux/fs.h */ 437 /* #undef HAVE_INODE_GET_ATIME */ 438 439 /* inode_get_ctime() exists in linux/fs.h */ 440 /* #undef HAVE_INODE_GET_CTIME */ 441 442 /* inode_get_mtime() exists in linux/fs.h */ 443 /* #undef HAVE_INODE_GET_MTIME */ 444 445 /* yes */ 446 /* #undef HAVE_INODE_LOCK_SHARED */ 447 448 /* inode_owner_or_capable() exists */ 449 /* #undef HAVE_INODE_OWNER_OR_CAPABLE */ 450 451 /* inode_owner_or_capable() takes mnt_idmap */ 452 /* #undef HAVE_INODE_OWNER_OR_CAPABLE_IDMAP */ 453 454 /* inode_owner_or_capable() takes user_ns */ 455 /* #undef HAVE_INODE_OWNER_OR_CAPABLE_USERNS */ 456 457 /* inode_set_atime_to_ts() exists in linux/fs.h */ 458 /* #undef HAVE_INODE_SET_ATIME_TO_TS */ 459 460 /* inode_set_ctime_to_ts() exists in linux/fs.h */ 461 /* #undef HAVE_INODE_SET_CTIME_TO_TS */ 462 463 /* inode_set_flags() exists */ 464 /* #undef HAVE_INODE_SET_FLAGS */ 465 466 /* inode_set_iversion() exists */ 467 /* #undef HAVE_INODE_SET_IVERSION */ 468 469 /* inode_set_mtime_to_ts() exists in linux/fs.h */ 470 /* #undef HAVE_INODE_SET_MTIME_TO_TS */ 471 472 /* inode->i_*time's are timespec64 */ 473 /* #undef HAVE_INODE_TIMESPEC64_TIMES */ 474 475 /* timestamp_truncate() exists */ 476 /* #undef HAVE_INODE_TIMESTAMP_TRUNCATE */ 477 478 /* Define to 1 if you have the <inttypes.h> header file. */ 479 #define HAVE_INTTYPES_H 1 480 481 /* in_compat_syscall() is available */ 482 /* #undef HAVE_IN_COMPAT_SYSCALL */ 483 484 /* iops->create() takes struct mnt_idmap* */ 485 /* #undef HAVE_IOPS_CREATE_IDMAP */ 486 487 /* iops->create() takes struct user_namespace* */ 488 /* #undef HAVE_IOPS_CREATE_USERNS */ 489 490 /* iops->mkdir() takes struct mnt_idmap* */ 491 /* #undef HAVE_IOPS_MKDIR_IDMAP */ 492 493 /* iops->mkdir() takes struct user_namespace* */ 494 /* #undef HAVE_IOPS_MKDIR_USERNS */ 495 496 /* iops->mknod() takes struct mnt_idmap* */ 497 /* #undef HAVE_IOPS_MKNOD_IDMAP */ 498 499 /* iops->mknod() takes struct user_namespace* */ 500 /* #undef HAVE_IOPS_MKNOD_USERNS */ 501 502 /* iops->permission() takes struct mnt_idmap* */ 503 /* #undef HAVE_IOPS_PERMISSION_IDMAP */ 504 505 /* iops->permission() takes struct user_namespace* */ 506 /* #undef HAVE_IOPS_PERMISSION_USERNS */ 507 508 /* iops->rename() takes struct mnt_idmap* */ 509 /* #undef HAVE_IOPS_RENAME_IDMAP */ 510 511 /* iops->rename() takes struct user_namespace* */ 512 /* #undef HAVE_IOPS_RENAME_USERNS */ 513 514 /* iops->setattr() exists */ 515 /* #undef HAVE_IOPS_SETATTR */ 516 517 /* iops->symlink() takes struct mnt_idmap* */ 518 /* #undef HAVE_IOPS_SYMLINK_IDMAP */ 519 520 /* iops->symlink() takes struct user_namespace* */ 521 /* #undef HAVE_IOPS_SYMLINK_USERNS */ 522 523 /* iov_iter_advance() is available */ 524 /* #undef HAVE_IOV_ITER_ADVANCE */ 525 526 /* iov_iter_count() is available */ 527 /* #undef HAVE_IOV_ITER_COUNT */ 528 529 /* iov_iter_fault_in_readable() is available */ 530 /* #undef HAVE_IOV_ITER_FAULT_IN_READABLE */ 531 532 /* iov_iter_revert() is available */ 533 /* #undef HAVE_IOV_ITER_REVERT */ 534 535 /* iov_iter_type() is available */ 536 /* #undef HAVE_IOV_ITER_TYPE */ 537 538 /* iov_iter types are available */ 539 /* #undef HAVE_IOV_ITER_TYPES */ 540 541 /* yes */ 542 /* #undef HAVE_IO_SCHEDULE_TIMEOUT */ 543 544 /* Define to 1 if you have the `issetugid' function. */ 545 #define HAVE_ISSETUGID 1 546 547 /* iter_iov() is available */ 548 /* #undef HAVE_ITER_IOV */ 549 550 /* kernel has kernel_fpu_* functions */ 551 /* #undef HAVE_KERNEL_FPU */ 552 553 /* kernel has asm/fpu/api.h */ 554 /* #undef HAVE_KERNEL_FPU_API_HEADER */ 555 556 /* kernel fpu internal */ 557 /* #undef HAVE_KERNEL_FPU_INTERNAL */ 558 559 /* kernel has asm/fpu/internal.h */ 560 /* #undef HAVE_KERNEL_FPU_INTERNAL_HEADER */ 561 562 /* uncached_acl_sentinel() exists */ 563 /* #undef HAVE_KERNEL_GET_ACL_HANDLE_CACHE */ 564 565 /* Define if compiler supports -Winfinite-recursion */ 566 /* #undef HAVE_KERNEL_INFINITE_RECURSION */ 567 568 /* kernel has kernel_neon_* functions */ 569 /* #undef HAVE_KERNEL_NEON */ 570 571 /* kernel does stack verification */ 572 /* #undef HAVE_KERNEL_OBJTOOL */ 573 574 /* kernel has linux/objtool.h */ 575 /* #undef HAVE_KERNEL_OBJTOOL_HEADER */ 576 577 /* kernel_read() take loff_t pointer */ 578 /* #undef HAVE_KERNEL_READ_PPOS */ 579 580 /* timer_list.function gets a timer_list */ 581 /* #undef HAVE_KERNEL_TIMER_FUNCTION_TIMER_LIST */ 582 583 /* struct timer_list has a flags member */ 584 /* #undef HAVE_KERNEL_TIMER_LIST_FLAGS */ 585 586 /* timer_setup() is available */ 587 /* #undef HAVE_KERNEL_TIMER_SETUP */ 588 589 /* kernel_write() take loff_t pointer */ 590 /* #undef HAVE_KERNEL_WRITE_PPOS */ 591 592 /* kmem_cache_create_usercopy() exists */ 593 /* #undef HAVE_KMEM_CACHE_CREATE_USERCOPY */ 594 595 /* kstrtoul() exists */ 596 /* #undef HAVE_KSTRTOUL */ 597 598 /* ktime_get_coarse_real_ts64() exists */ 599 /* #undef HAVE_KTIME_GET_COARSE_REAL_TS64 */ 600 601 /* ktime_get_raw_ts64() exists */ 602 /* #undef HAVE_KTIME_GET_RAW_TS64 */ 603 604 /* kvmalloc exists */ 605 /* #undef HAVE_KVMALLOC */ 606 607 /* Define if you have [aio] */ 608 /* #undef HAVE_LIBAIO */ 609 610 /* Define if you have [blkid] */ 611 /* #undef HAVE_LIBBLKID */ 612 613 /* Define if you have [crypto] */ 614 #define HAVE_LIBCRYPTO 1 615 616 /* Define if you have [tirpc] */ 617 /* #undef HAVE_LIBTIRPC */ 618 619 /* Define if you have [udev] */ 620 /* #undef HAVE_LIBUDEV */ 621 622 /* Define if you have [uuid] */ 623 /* #undef HAVE_LIBUUID */ 624 625 /* linux/blk-cgroup.h exists */ 626 /* #undef HAVE_LINUX_BLK_CGROUP_HEADER */ 627 628 /* lseek_execute() is available */ 629 /* #undef HAVE_LSEEK_EXECUTE */ 630 631 /* makedev() is declared in sys/mkdev.h */ 632 /* #undef HAVE_MAKEDEV_IN_MKDEV */ 633 634 /* makedev() is declared in sys/sysmacros.h */ 635 /* #undef HAVE_MAKEDEV_IN_SYSMACROS */ 636 637 /* Noting that make_request_fn() returns blk_qc_t */ 638 /* #undef HAVE_MAKE_REQUEST_FN_RET_QC */ 639 640 /* Noting that make_request_fn() returns void */ 641 /* #undef HAVE_MAKE_REQUEST_FN_RET_VOID */ 642 643 /* iops->mkdir() takes umode_t */ 644 /* #undef HAVE_MKDIR_UMODE_T */ 645 646 /* Define to 1 if you have the `mlockall' function. */ 647 #define HAVE_MLOCKALL 1 648 649 /* lookup_bdev() wants mode arg */ 650 /* #undef HAVE_MODE_LOOKUP_BDEV */ 651 652 /* Define if host toolchain supports MOVBE */ 653 #define HAVE_MOVBE 1 654 655 /* new_sync_read()/new_sync_write() are available */ 656 /* #undef HAVE_NEW_SYNC_READ */ 657 658 /* folio_wait_bit() exists */ 659 /* #undef HAVE_PAGEMAP_FOLIO_WAIT_BIT */ 660 661 /* part_to_dev() exists */ 662 /* #undef HAVE_PART_TO_DEV */ 663 664 /* iops->getattr() takes a path */ 665 /* #undef HAVE_PATH_IOPS_GETATTR */ 666 667 /* Define if host toolchain supports PCLMULQDQ */ 668 #define HAVE_PCLMULQDQ 1 669 670 /* percpu_counter_add_batch() is defined */ 671 /* #undef HAVE_PERCPU_COUNTER_ADD_BATCH */ 672 673 /* percpu_counter_init() wants gfp_t */ 674 /* #undef HAVE_PERCPU_COUNTER_INIT_WITH_GFP */ 675 676 /* posix_acl_chmod() exists */ 677 /* #undef HAVE_POSIX_ACL_CHMOD */ 678 679 /* posix_acl_from_xattr() needs user_ns */ 680 /* #undef HAVE_POSIX_ACL_FROM_XATTR_USERNS */ 681 682 /* posix_acl_release() is available */ 683 /* #undef HAVE_POSIX_ACL_RELEASE */ 684 685 /* posix_acl_release() is GPL-only */ 686 /* #undef HAVE_POSIX_ACL_RELEASE_GPL_ONLY */ 687 688 /* posix_acl_valid() wants user namespace */ 689 /* #undef HAVE_POSIX_ACL_VALID_WITH_NS */ 690 691 /* proc_ops structure exists */ 692 /* #undef HAVE_PROC_OPS_STRUCT */ 693 694 /* iops->put_link() cookie */ 695 /* #undef HAVE_PUT_LINK_COOKIE */ 696 697 /* iops->put_link() delayed */ 698 /* #undef HAVE_PUT_LINK_DELAYED */ 699 700 /* iops->put_link() nameidata */ 701 /* #undef HAVE_PUT_LINK_NAMEIDATA */ 702 703 /* If available, contains the Python version number currently in use. */ 704 #define HAVE_PYTHON "3.7" 705 706 /* qat is enabled and existed */ 707 /* #undef HAVE_QAT */ 708 709 /* struct reclaim_state has reclaimed */ 710 /* #undef HAVE_RECLAIM_STATE_RECLAIMED */ 711 712 /* register_shrinker is vararg */ 713 /* #undef HAVE_REGISTER_SHRINKER_VARARG */ 714 715 /* register_sysctl_table exists */ 716 /* #undef HAVE_REGISTER_SYSCTL_TABLE */ 717 718 /* iops->rename2() exists */ 719 /* #undef HAVE_RENAME2 */ 720 721 /* struct inode_operations_wrapper takes .rename2() */ 722 /* #undef HAVE_RENAME2_OPERATIONS_WRAPPER */ 723 724 /* iops->rename() wants flags */ 725 /* #undef HAVE_RENAME_WANTS_FLAGS */ 726 727 /* REQ_DISCARD is defined */ 728 /* #undef HAVE_REQ_DISCARD */ 729 730 /* REQ_FLUSH is defined */ 731 /* #undef HAVE_REQ_FLUSH */ 732 733 /* REQ_OP_DISCARD is defined */ 734 /* #undef HAVE_REQ_OP_DISCARD */ 735 736 /* REQ_OP_FLUSH is defined */ 737 /* #undef HAVE_REQ_OP_FLUSH */ 738 739 /* REQ_OP_SECURE_ERASE is defined */ 740 /* #undef HAVE_REQ_OP_SECURE_ERASE */ 741 742 /* REQ_PREFLUSH is defined */ 743 /* #undef HAVE_REQ_PREFLUSH */ 744 745 /* revalidate_disk() is available */ 746 /* #undef HAVE_REVALIDATE_DISK */ 747 748 /* revalidate_disk_size() is available */ 749 /* #undef HAVE_REVALIDATE_DISK_SIZE */ 750 751 /* struct rw_semaphore has member activity */ 752 /* #undef HAVE_RWSEM_ACTIVITY */ 753 754 /* struct rw_semaphore has atomic_long_t member count */ 755 /* #undef HAVE_RWSEM_ATOMIC_LONG_COUNT */ 756 757 /* linux/sched/signal.h exists */ 758 /* #undef HAVE_SCHED_SIGNAL_HEADER */ 759 760 /* Define to 1 if you have the <security/pam_modules.h> header file. */ 761 #define HAVE_SECURITY_PAM_MODULES_H 1 762 763 /* setattr_prepare() accepts mnt_idmap */ 764 /* #undef HAVE_SETATTR_PREPARE_IDMAP */ 765 766 /* setattr_prepare() is available, doesn't accept user_namespace */ 767 /* #undef HAVE_SETATTR_PREPARE_NO_USERNS */ 768 769 /* setattr_prepare() accepts user_namespace */ 770 /* #undef HAVE_SETATTR_PREPARE_USERNS */ 771 772 /* iops->set_acl() exists, takes 3 args */ 773 /* #undef HAVE_SET_ACL */ 774 775 /* iops->set_acl() takes 4 args, arg1 is struct mnt_idmap * */ 776 /* #undef HAVE_SET_ACL_IDMAP_DENTRY */ 777 778 /* iops->set_acl() takes 4 args */ 779 /* #undef HAVE_SET_ACL_USERNS */ 780 781 /* iops->set_acl() takes 4 args, arg2 is struct dentry * */ 782 /* #undef HAVE_SET_ACL_USERNS_DENTRY_ARG2 */ 783 784 /* set_cached_acl() is usable */ 785 /* #undef HAVE_SET_CACHED_ACL_USABLE */ 786 787 /* set_special_state() exists */ 788 /* #undef HAVE_SET_SPECIAL_STATE */ 789 790 /* shrinker_register exists */ 791 /* #undef HAVE_SHRINKER_REGISTER */ 792 793 /* struct shrink_control exists */ 794 /* #undef HAVE_SHRINK_CONTROL_STRUCT */ 795 796 /* kernel_siginfo_t exists */ 797 /* #undef HAVE_SIGINFO */ 798 799 /* signal_stop() exists */ 800 /* #undef HAVE_SIGNAL_STOP */ 801 802 /* new shrinker callback wants 2 args */ 803 /* #undef HAVE_SINGLE_SHRINKER_CALLBACK */ 804 805 /* cs->count_objects exists */ 806 /* #undef HAVE_SPLIT_SHRINKER_CALLBACK */ 807 808 #if defined(__amd64__) || defined(__i386__) 809 /* Define if host toolchain supports SSE */ 810 #define HAVE_SSE 1 811 812 /* Define if host toolchain supports SSE2 */ 813 #define HAVE_SSE2 1 814 815 /* Define if host toolchain supports SSE3 */ 816 #define HAVE_SSE3 1 817 818 /* Define if host toolchain supports SSE4.1 */ 819 #define HAVE_SSE4_1 1 820 821 /* Define if host toolchain supports SSE4.2 */ 822 #define HAVE_SSE4_2 1 823 824 /* Define if host toolchain supports SSSE3 */ 825 #define HAVE_SSSE3 1 826 #endif 827 828 /* STACK_FRAME_NON_STANDARD is defined */ 829 /* #undef HAVE_STACK_FRAME_NON_STANDARD */ 830 831 /* standalone <linux/stdarg.h> exists */ 832 /* #undef HAVE_STANDALONE_LINUX_STDARG */ 833 834 /* Define to 1 if you have the <stdint.h> header file. */ 835 #define HAVE_STDINT_H 1 836 837 /* Define to 1 if you have the <stdio.h> header file. */ 838 #define HAVE_STDIO_H 1 839 840 /* Define to 1 if you have the <stdlib.h> header file. */ 841 #define HAVE_STDLIB_H 1 842 843 /* Define to 1 if you have the <strings.h> header file. */ 844 #define HAVE_STRINGS_H 1 845 846 /* Define to 1 if you have the <string.h> header file. */ 847 #define HAVE_STRING_H 1 848 849 /* Define to 1 if you have the `strlcat' function. */ 850 #define HAVE_STRLCAT 1 851 852 /* Define to 1 if you have the `strlcpy' function. */ 853 #define HAVE_STRLCPY 1 854 855 /* submit_bio is member of struct block_device_operations */ 856 /* #undef HAVE_SUBMIT_BIO_IN_BLOCK_DEVICE_OPERATIONS */ 857 858 /* have super_block s_shrink */ 859 /* #undef HAVE_SUPER_BLOCK_S_SHRINK */ 860 861 /* have super_block s_shrink pointer */ 862 /* #undef HAVE_SUPER_BLOCK_S_SHRINK_PTR */ 863 864 /* super_setup_bdi_name() exits */ 865 /* #undef HAVE_SUPER_SETUP_BDI_NAME */ 866 867 /* super_block->s_user_ns exists */ 868 /* #undef HAVE_SUPER_USER_NS */ 869 870 /* sync_blockdev() is declared in include/blkdev.h */ 871 /* #undef HAVE_SYNC_BLOCKDEV */ 872 873 /* struct kobj_type has default_groups */ 874 /* #undef HAVE_SYSFS_DEFAULT_GROUPS */ 875 876 /* Define to 1 if you have the <sys/stat.h> header file. */ 877 #define HAVE_SYS_STAT_H 1 878 879 /* Define to 1 if you have the <sys/types.h> header file. */ 880 #define HAVE_SYS_TYPES_H 1 881 882 /* i_op->tmpfile() exists */ 883 /* #undef HAVE_TMPFILE */ 884 885 /* i_op->tmpfile() uses old dentry signature */ 886 /* #undef HAVE_TMPFILE_DENTRY */ 887 888 /* i_op->tmpfile() has mnt_idmap */ 889 /* #undef HAVE_TMPFILE_IDMAP */ 890 891 /* i_op->tmpfile() has userns */ 892 /* #undef HAVE_TMPFILE_USERNS */ 893 894 /* totalhigh_pages() exists */ 895 /* #undef HAVE_TOTALHIGH_PAGES */ 896 897 /* kernel has totalram_pages() */ 898 /* #undef HAVE_TOTALRAM_PAGES_FUNC */ 899 900 /* Define to 1 if you have the `udev_device_get_is_initialized' function. */ 901 /* #undef HAVE_UDEV_DEVICE_GET_IS_INITIALIZED */ 902 903 /* kernel has __kernel_fpu_* functions */ 904 /* #undef HAVE_UNDERSCORE_KERNEL_FPU */ 905 906 /* Define to 1 if you have the <unistd.h> header file. */ 907 #define HAVE_UNISTD_H 1 908 909 /* iops->getattr() takes struct user_namespace* */ 910 /* #undef HAVE_USERNS_IOPS_GETATTR */ 911 912 /* iops->setattr() takes struct user_namespace* */ 913 /* #undef HAVE_USERNS_IOPS_SETATTR */ 914 915 /* user_namespace->ns.inum exists */ 916 /* #undef HAVE_USER_NS_COMMON_INUM */ 917 918 /* iops->getattr() takes a vfsmount */ 919 /* #undef HAVE_VFSMOUNT_IOPS_GETATTR */ 920 921 /* fops->clone_file_range() is available */ 922 /* #undef HAVE_VFS_CLONE_FILE_RANGE */ 923 924 /* fops->copy_file_range() is available */ 925 /* #undef HAVE_VFS_COPY_FILE_RANGE */ 926 927 /* fops->dedupe_file_range() is available */ 928 /* #undef HAVE_VFS_DEDUPE_FILE_RANGE */ 929 930 /* aops->direct_IO() uses iovec */ 931 /* #undef HAVE_VFS_DIRECT_IO_IOVEC */ 932 933 /* aops->direct_IO() uses iov_iter without rw */ 934 /* #undef HAVE_VFS_DIRECT_IO_ITER */ 935 936 /* aops->direct_IO() uses iov_iter with offset */ 937 /* #undef HAVE_VFS_DIRECT_IO_ITER_OFFSET */ 938 939 /* aops->direct_IO() uses iov_iter with rw and offset */ 940 /* #undef HAVE_VFS_DIRECT_IO_ITER_RW_OFFSET */ 941 942 /* filemap_dirty_folio exists */ 943 /* #undef HAVE_VFS_FILEMAP_DIRTY_FOLIO */ 944 945 /* file_operations_extend takes .copy_file_range() and .clone_file_range() */ 946 /* #undef HAVE_VFS_FILE_OPERATIONS_EXTEND */ 947 948 /* generic_copy_file_range() is available */ 949 /* #undef HAVE_VFS_GENERIC_COPY_FILE_RANGE */ 950 951 /* All required iov_iter interfaces are available */ 952 /* #undef HAVE_VFS_IOV_ITER */ 953 954 /* fops->iterate() is available */ 955 /* #undef HAVE_VFS_ITERATE */ 956 957 /* fops->iterate_shared() is available */ 958 /* #undef HAVE_VFS_ITERATE_SHARED */ 959 960 /* fops->readdir() is available */ 961 /* #undef HAVE_VFS_READDIR */ 962 963 /* address_space_operations->readpages exists */ 964 /* #undef HAVE_VFS_READPAGES */ 965 966 /* read_folio exists */ 967 /* #undef HAVE_VFS_READ_FOLIO */ 968 969 /* fops->remap_file_range() is available */ 970 /* #undef HAVE_VFS_REMAP_FILE_RANGE */ 971 972 /* fops->read/write_iter() are available */ 973 /* #undef HAVE_VFS_RW_ITERATE */ 974 975 /* __set_page_dirty_nobuffers exists */ 976 /* #undef HAVE_VFS_SET_PAGE_DIRTY_NOBUFFERS */ 977 978 /* __vmalloc page flags exists */ 979 /* #undef HAVE_VMALLOC_PAGE_KERNEL */ 980 981 /* yes */ 982 /* #undef HAVE_WAIT_ON_BIT_ACTION */ 983 984 /* wait_queue_entry_t exists */ 985 /* #undef HAVE_WAIT_QUEUE_ENTRY_T */ 986 987 /* wq_head->head and wq_entry->entry exist */ 988 /* #undef HAVE_WAIT_QUEUE_HEAD_ENTRY */ 989 990 /* int (*writepage_t)() takes struct folio* */ 991 /* #undef HAVE_WRITEPAGE_T_FOLIO */ 992 993 /* xattr_handler->get() wants dentry */ 994 /* #undef HAVE_XATTR_GET_DENTRY */ 995 996 /* xattr_handler->get() wants both dentry and inode */ 997 /* #undef HAVE_XATTR_GET_DENTRY_INODE */ 998 999 /* xattr_handler->get() wants dentry and inode and flags */ 1000 /* #undef HAVE_XATTR_GET_DENTRY_INODE_FLAGS */ 1001 1002 /* xattr_handler->get() wants xattr_handler */ 1003 /* #undef HAVE_XATTR_GET_HANDLER */ 1004 1005 /* xattr_handler has name */ 1006 /* #undef HAVE_XATTR_HANDLER_NAME */ 1007 1008 /* xattr_handler->list() wants dentry */ 1009 /* #undef HAVE_XATTR_LIST_DENTRY */ 1010 1011 /* xattr_handler->list() wants xattr_handler */ 1012 /* #undef HAVE_XATTR_LIST_HANDLER */ 1013 1014 /* xattr_handler->list() wants simple */ 1015 /* #undef HAVE_XATTR_LIST_SIMPLE */ 1016 1017 /* xattr_handler->set() wants dentry */ 1018 /* #undef HAVE_XATTR_SET_DENTRY */ 1019 1020 /* xattr_handler->set() wants both dentry and inode */ 1021 /* #undef HAVE_XATTR_SET_DENTRY_INODE */ 1022 1023 /* xattr_handler->set() wants xattr_handler */ 1024 /* #undef HAVE_XATTR_SET_HANDLER */ 1025 1026 /* xattr_handler->set() takes mnt_idmap */ 1027 /* #undef HAVE_XATTR_SET_IDMAP */ 1028 1029 /* xattr_handler->set() takes user_namespace */ 1030 /* #undef HAVE_XATTR_SET_USERNS */ 1031 1032 /* Define if host toolchain supports XSAVE */ 1033 #define HAVE_XSAVE 1 1034 1035 /* Define if host toolchain supports XSAVEOPT */ 1036 #define HAVE_XSAVEOPT 1 1037 1038 /* Define if host toolchain supports XSAVES */ 1039 #define HAVE_XSAVES 1 1040 1041 /* ZERO_PAGE() is GPL-only */ 1042 /* #undef HAVE_ZERO_PAGE_GPL_ONLY */ 1043 1044 /* Define if you have [z] */ 1045 #define HAVE_ZLIB 1 1046 1047 /* __posix_acl_chmod() exists */ 1048 /* #undef HAVE___POSIX_ACL_CHMOD */ 1049 1050 /* kernel exports FPU functions */ 1051 /* #undef KERNEL_EXPORTS_X86_FPU */ 1052 1053 /* TBD: fetch(3) support */ 1054 #if 0 1055 /* whether the chosen libfetch is to be loaded at run-time */ 1056 #define LIBFETCH_DYNAMIC 1 1057 1058 /* libfetch is fetch(3) */ 1059 #define LIBFETCH_IS_FETCH 1 1060 1061 /* libfetch is libcurl */ 1062 #define LIBFETCH_IS_LIBCURL 0 1063 1064 /* soname of chosen libfetch */ 1065 #define LIBFETCH_SONAME "libfetch.so.6" 1066 #endif 1067 1068 /* Define to the sub-directory where libtool stores uninstalled libraries. */ 1069 #define LT_OBJDIR ".libs/" 1070 1071 /* make_request_fn() return type */ 1072 /* #undef MAKE_REQUEST_FN_RET */ 1073 1074 /* struct shrink_control has nid */ 1075 /* #undef SHRINK_CONTROL_HAS_NID */ 1076 1077 /* using complete_and_exit() instead */ 1078 /* #undef SPL_KTHREAD_COMPLETE_AND_EXIT */ 1079 1080 /* Defined for legacy compatibility. */ 1081 #define SPL_META_ALIAS ZFS_META_ALIAS 1082 1083 /* Defined for legacy compatibility. */ 1084 #define SPL_META_RELEASE ZFS_META_RELEASE 1085 1086 /* Defined for legacy compatibility. */ 1087 #define SPL_META_VERSION ZFS_META_VERSION 1088 1089 /* pde_data() is PDE_DATA() */ 1090 /* #undef SPL_PDE_DATA */ 1091 1092 /* Define to 1 if all of the C90 standard headers exist (not just the ones 1093 required in a freestanding environment). This macro is provided for 1094 backward compatibility; new code need not use it. */ 1095 #define SYSTEM_FREEBSD 1 1096 1097 /* True if ZFS is to be compiled for a Linux system */ 1098 /* #undef SYSTEM_LINUX */ 1099 1100 /* Version number of package */ 1101 /* #undef ZFS_DEBUG */ 1102 1103 /* /dev/zfs minor */ 1104 /* #undef ZFS_DEVICE_MINOR */ 1105 1106 /* enum node_stat_item contains NR_FILE_PAGES */ 1107 /* #undef ZFS_ENUM_NODE_STAT_ITEM_NR_FILE_PAGES */ 1108 1109 /* enum node_stat_item contains NR_INACTIVE_ANON */ 1110 /* #undef ZFS_ENUM_NODE_STAT_ITEM_NR_INACTIVE_ANON */ 1111 1112 /* enum node_stat_item contains NR_INACTIVE_FILE */ 1113 /* #undef ZFS_ENUM_NODE_STAT_ITEM_NR_INACTIVE_FILE */ 1114 1115 /* enum zone_stat_item contains NR_FILE_PAGES */ 1116 /* #undef ZFS_ENUM_ZONE_STAT_ITEM_NR_FILE_PAGES */ 1117 1118 /* enum zone_stat_item contains NR_INACTIVE_ANON */ 1119 /* #undef ZFS_ENUM_ZONE_STAT_ITEM_NR_INACTIVE_ANON */ 1120 1121 /* enum zone_stat_item contains NR_INACTIVE_FILE */ 1122 /* #undef ZFS_ENUM_ZONE_STAT_ITEM_NR_INACTIVE_FILE */ 1123 1124 /* GENHD_FL_EXT_DEVT flag is not available */ 1125 /* #undef ZFS_GENHD_FL_EXT_DEVT */ 1126 1127 /* GENHD_FL_NO_PART_SCAN flag is available */ 1128 /* #undef ZFS_GENHD_FL_NO_PART */ 1129 1130 /* global_node_page_state() exists */ 1131 /* #undef ZFS_GLOBAL_NODE_PAGE_STATE */ 1132 1133 /* global_zone_page_state() exists */ 1134 /* #undef ZFS_GLOBAL_ZONE_PAGE_STATE */ 1135 1136 /* Define to 1 if GPL-only symbols can be used */ 1137 /* #undef ZFS_IS_GPL_COMPATIBLE */ 1138 1139 /* Define the project alias string. */ 1140 #define ZFS_META_ALIAS "zfs-2.2.99-288-FreeBSD_ga382e2119" 1141 1142 /* Define the project author. */ 1143 #define ZFS_META_AUTHOR "OpenZFS" 1144 1145 /* Define the project release date. */ 1146 /* #undef ZFS_META_DATA */ 1147 1148 /* Define the maximum compatible kernel version. */ 1149 #define ZFS_META_KVER_MAX "6.6" 1150 1151 /* Define the minimum compatible kernel version. */ 1152 #define ZFS_META_KVER_MIN "3.10" 1153 1154 /* Define the project license. */ 1155 #define ZFS_META_LICENSE "CDDL" 1156 1157 /* Define the libtool library 'age' version information. */ 1158 /* #undef ZFS_META_LT_AGE */ 1159 1160 /* Define the libtool library 'current' version information. */ 1161 /* #undef ZFS_META_LT_CURRENT */ 1162 1163 /* Define the libtool library 'revision' version information. */ 1164 /* #undef ZFS_META_LT_REVISION */ 1165 1166 /* Define the project name. */ 1167 #define ZFS_META_NAME "zfs" 1168 1169 /* Define the project release. */ 1170 #define ZFS_META_RELEASE "288-FreeBSD_ga382e2119" 1171 1172 /* Define the project version. */ 1173 #define ZFS_META_VERSION "2.2.99" 1174 1175 /* count is located in percpu_ref.data */ 1176 /* #undef ZFS_PERCPU_REF_COUNT_IN_DATA */ 1177