zfs/config
Jason Lee 3070faa798 ZFS Interface for Accelerators (Z.I.A.)
The ZIO pipeline has been modified to allow for external,
alternative implementations of existing operations to be
used. The original ZFS functions remain in the code as
fallback in case the external implementation fails.

Definitions:
    Accelerator - an entity (usually hardware) that is
                  intended to accelerate operations
    Offloader   - synonym of accelerator; used interchangeably
    Data Processing Unit Services Module (DPUSM)
                - https://github.com/hpc/dpusm
                - defines a "provider API" for accelerator
                  vendors to set up
                - defines a "user API" for accelerator consumers
                  to call
                - maintains list of providers and coordinates
                  interactions between providers and consumers.
    Provider    - a DPUSM wrapper for an accelerator's API
    Offload     - moving data from ZFS/memory to the accelerator
    Onload      - the opposite of offload

In order for Z.I.A. to be extensible, it does not directly
communicate with a fixed accelerator. Rather, Z.I.A. acquires
a handle to a DPUSM, which is then used to acquire handles
to providers.

Using ZFS with Z.I.A.:
    1. Build and start the DPUSM
    2. Implement, build, and register a provider with the DPUSM
    3. Reconfigure ZFS with '--with-zia=<DPUSM root>'
    4. Rebuild and start ZFS
    5. Create a zpool
    6. Select the provider
           zpool set zia_provider=<provider name> <zpool>
    7. Select operations to offload
           zpool set zia_<property>=on <zpool>

The operations that have been modified are:
    - compression
        - non-raw-writes only
    - decompression
    - checksum
        - not handling embedded checksums
        - checksum compute and checksum error call the same function
    - raidz
        - generation
        - reconstruction
    - vdev_file
        - open
        - write
        - close
    - vdev_disk
        - open
        - invalidate
        - write
        - flush
        - close

Successful operations do not bring data back into memory after
they complete, allowing for subsequent offloader operations
reuse the data. This results in only one data movement per ZIO
at the beginning of a pipeline that is necessary for getting
data from ZFS to the accelerator.

When errors ocurr and the offloaded data is still accessible,
the offloaded data will be onloaded (or dropped if it still
matches the in-memory copy) for that ZIO pipeline stage and
processed with ZFS. This will cause thrashing if a later
operation offloads data. This should not happen often, as
constant errors (resulting in data movement) is not expected
to be the norm.

Unrecoverable errors such as hardware failures will trigger
pipeline restarts (if necessary) in order to complete the
original ZIO using the software path.

The modifications to ZFS can be thought of as two sets of changes:
    - The ZIO write pipeline
        - compression, checksum, RAIDZ generation, and write
        - Each stage starts by offloading data that was not
          previously offloaded
            - This allows for ZIOs to be offloaded at any point
              in the pipeline
    - Resilver
        - vdev_raidz_io_done (RAIDZ reconstruction, checksum, and
          RAIDZ generation), and write
        - Because the core of resilver is vdev_raidz_io_done, data
          is only offloaded once at the beginning of
          vdev_raidz_io_done
            - Errors cause data to be onloaded, but will not
              re-offload in subsequent steps within resilver
            - Write is a separate ZIO pipeline stage, so it will
              attempt to offload data

The zio_decompress function has been modified to allow for
offloading but the ZIO read pipeline as a whole has not, so it
is not part of the above list.

An example provider implementation can be found in
module/zia-software-provider
    - The provider's "hardware" is actually software - data is
      "offloaded" to memory not owned by ZFS
    - Calls ZFS functions in order to not reimplement operations
    - Has kernel module parameters that can be used to trigger
      ZIA_ACCELERATOR_DOWN states for testing pipeline restarts.

abd_t, raidz_row_t, and vdev_t have each been given an additional
"void *<prefix>_zia_handle" member. These opaque handles point to
data that is located on an offloader. abds are still allocated,
but their payloads are expected to diverge from the offloaded copy
as operations are run.

Encryption and deduplication are disabled for zpools with Z.I.A.
operations enabled

Aggregation is disabled for offloaded abds

RPMs will build with Z.I.A.

Signed-off-by: Jason Lee <jasonlee@lanl.gov>
2024-09-10 15:14:15 +00:00
..
.gitignore Prepare SPL repo to merge with ZFS repo 2018-05-29 14:51:39 -07:00
CppCheck.am cppcheck: explicitly exclude kernel code from userspace checks 2022-05-10 10:20:55 -07:00
Rules.am ZFS Interface for Accelerators (Z.I.A.) 2024-09-10 15:14:15 +00:00
Shellcheck.am shellcheck: disable "unreachable command" check [SC2317] 2023-07-21 11:53:06 -07:00
Substfiles.am config/Substfiles.am: restrict to the dedicated list. 2024-04-09 16:34:58 -07:00
always-arch.m4 Add ARM architecture to OpenZFS buildsystem 2023-03-02 13:51:50 -08:00
always-compiler-options.m4 Fix Clang 15 compilation errors 2022-11-30 13:46:26 -08:00
always-cppcheck.m4 autoconf: use include directives instead of recursing down lib 2022-05-10 10:18:11 -07:00
always-parallel.m4 config: check for parallel(1), use it for cstyle 2022-01-06 12:46:42 -08:00
always-python.m4 Removed Python 2 and Python 3.5- support 2022-01-13 09:51:12 -07:00
always-pyzfs.m4 Python 3.12 deprecated python3-distutils 2024-04-25 13:40:09 -07:00
always-sed.m4 Add compatibility for busybox mktemp 2020-12-03 10:01:16 -08:00
always-shellcheck.m4 Turn checkbashisms into a make target 2021-06-01 11:38:54 -07:00
always-system.m4 autoconf: use include directives instead of recursing down lib 2022-05-10 10:18:11 -07:00
ax_code_coverage.m4 Updated the lz4 decompressor 2022-01-07 10:36:49 -08:00
ax_count_cpus.m4 cppcheck: integrete cppcheck 2021-01-26 16:12:26 -08:00
ax_python_devel.m4 Python 3.12 deprecated python3-distutils 2024-04-25 13:40:09 -07:00
ax_restore_flags.m4 config: better libtirpc detection 2019-03-02 16:19:05 -08:00
ax_save_flags.m4 config: better libtirpc detection 2019-03-02 16:19:05 -08:00
config.rpath Add config.rpath for AM_GNU_GETTEXT 2020-07-10 14:26:12 -07:00
deb.am Fix shebang for helper script of deb-utils 2023-01-05 10:50:00 -08:00
find_system_library.m4 find_system_library: fix var cleanup when library not found 2024-05-01 10:51:14 -07:00
gettext.m4 config: libintl/libiconv for gettext() detection 2019-04-19 12:09:29 -07:00
host-cpu-c-abi.m4 config: libintl/libiconv for gettext() detection 2019-04-19 12:09:29 -07:00
iconv.m4 Clarify comments in config/*.m4, vdev_geom.c, zfs_allow_*.ksh 2020-06-22 09:46:37 -07:00
intlmacosx.m4 config: libintl/libiconv for gettext() detection 2019-04-19 12:09:29 -07:00
kernel-access-ok-type.m4 Perform KABI checks in parallel 2019-10-01 12:50:34 -07:00
kernel-acl.m4 Linux 6.8 compat: make test functions static 2024-01-29 11:36:07 -08:00
kernel-add-disk.m4 Fix clang 13 compilation errors 2022-06-15 14:20:28 -07:00
kernel-aio-fsync.m4 Perform KABI checks in parallel 2019-10-01 12:50:34 -07:00
kernel-automount.m4 Linux 6.8 compat: make test functions static 2024-01-29 11:36:07 -08:00
kernel-bdi.m4 Minor fix to configure on s390x 2021-05-27 22:39:53 -07:00
kernel-bio.m4 Linux 6.8 compat: make test functions static 2024-01-29 11:36:07 -08:00
kernel-bio_max_segs.m4 Linux 5.12 update: bio_max_segs() replaces BIO_MAX_PAGES 2021-03-19 22:33:42 -07:00
kernel-blk-queue.m4 Linux 6.11: get backing_dev_info through queue gendisk 2024-08-13 17:46:49 -07:00
kernel-blkdev.m4 Linux 5.16: use bdev_nr_bytes() to get device capacity 2024-07-15 17:10:06 -07:00
kernel-block-device-operations.m4 Linux 6.8 compat: make test functions static 2024-01-29 11:36:07 -08:00
kernel-clear-inode.m4 Perform KABI checks in parallel 2019-10-01 12:50:34 -07:00
kernel-commit-metadata.m4 Linux 6.8 compat: make test functions static 2024-01-29 11:36:07 -08:00
kernel-config-defined.m4 autoconf: Pretend `CONFIG_MODULES` is always on 2022-04-26 10:47:09 -07:00
kernel-copy-from-user-inatomic.m4 autoconf: Fail when __copy_from_user_inatomic is a non-GPL symbol 2022-05-11 10:32:51 -07:00
kernel-cpu_has_feature.m4 Workaround for Linux PowerPC GPL-only cpu_has_feature() 2023-03-10 09:35:00 -08:00
kernel-current-time.m4 Linux 6.7 compat: simplify current_time() check 2023-12-20 11:47:18 -08:00
kernel-declare-event-class.m4 Perform KABI checks in parallel 2019-10-01 12:50:34 -07:00
kernel-dentry-alias.m4 Remove zpl_revalidate: fix snapshot rollback 2022-10-28 09:47:19 -07:00
kernel-dentry-operations.m4 Linux 6.8 compat: make test functions static 2024-01-29 11:36:07 -08:00
kernel-dirty-inode.m4 Linux 6.8 compat: make test functions static 2024-01-29 11:36:07 -08:00
kernel-discard-granularity.m4 Linux compat: Minimum kernel version 3.10 2019-11-12 08:59:06 -08:00
kernel-encode-fh-inode.m4 Linux 6.8 compat: make test functions static 2024-01-29 11:36:07 -08:00
kernel-evict-inode.m4 Linux 6.8 compat: make test functions static 2024-01-29 11:36:07 -08:00
kernel-fadvise.m4 Add Linux posix_fadvise support 2022-09-08 10:29:41 -07:00
kernel-fallocate.m4 Linux 6.8 compat: make test functions static 2024-01-29 11:36:07 -08:00
kernel-file-dentry.m4 Perform KABI checks in parallel 2019-10-01 12:50:34 -07:00
kernel-file-inode.m4 Perform KABI checks in parallel 2019-10-01 12:50:34 -07:00
kernel-filemap-splice-read.m4 Linux 6.5 compat: Use copy_splice_read instead of filemap_splice_read 2023-08-08 15:42:32 -07:00
kernel-filemap.m4 Linux 5.18+ compat: Detect filemap_range_has_page 2024-03-29 17:11:52 -07:00
kernel-flush_dcache_page.m4 compact: workaround for GPL-only symbols on riscv from Linux 6.2 2023-12-06 12:37:50 -08:00
kernel-fmode-t.m4 Linux compat: Minimum kernel version 3.10 2019-11-12 08:59:06 -08:00
kernel-follow-down-one.m4 Linux compat: Minimum kernel version 3.10 2019-11-12 08:59:06 -08:00
kernel-fpu.m4 Linux 6.2 compat: add check for kernel_neon_* availability 2024-01-08 16:05:24 -08:00
kernel-fst-mount.m4 Linux compat: Minimum kernel version 3.10 2019-11-12 08:59:06 -08:00
kernel-fsync-bdev.m4 Linux 6.6 compat: fsync_bdev() has been removed in favor of sync_blockdev() 2023-09-21 18:38:40 -07:00
kernel-fsync.m4 Linux 6.8 compat: make test functions static 2024-01-29 11:36:07 -08:00
kernel-generic_fadvise.m4 Add Linux posix_fadvise support 2022-09-08 10:29:41 -07:00
kernel-generic_fillattr.m4 Linux 6.6 compat: generic_fillattr has a new u32 request_mask added at arg2 2023-09-21 18:38:40 -07:00
kernel-generic_io_acct.m4 linux 6.3 compat: add another bdev_io_acct case 2023-03-27 11:29:19 -07:00
kernel-generic_readlink.m4 Perform KABI checks in parallel 2019-10-01 12:50:34 -07:00
kernel-genhd-flags.m4 Linux 5.17 compat: GENHD_FL_EXT_DEVT / GENHD_FL_NO_PART_SCAN 2022-04-19 10:38:04 -07:00
kernel-get-disk-ro.m4 libtpool: -Wno-clobbered 2022-02-18 09:34:25 -08:00
kernel-get-link.m4 Linux 6.8 compat: make test functions static 2024-01-29 11:36:07 -08:00
kernel-global_page_state.m4 egrep -> grep -E 2022-04-01 17:58:07 -07:00
kernel-group-info.m4 Strengthen Linux kernel capabilities detection 2022-04-21 09:37:11 -07:00
kernel-hotplug.m4 Implement memory and CPU hotplug 2020-12-10 14:09:23 -08:00
kernel-iattr-vfsid.m4 Support idmapped mount in user namespace 2022-11-08 10:28:56 -08:00
kernel-idmap_mnt_api.m4 Linux 6.8 compat: handle mnt_idmap user_namespace change 2024-01-29 11:36:07 -08:00
kernel-in-compat-syscall.m4 Perform KABI checks in parallel 2019-10-01 12:50:34 -07:00
kernel-inode-create.m4 Linux 6.8 compat: make test functions static 2024-01-29 11:36:07 -08:00
kernel-inode-getattr.m4 Linux 6.8 compat: make test functions static 2024-01-29 11:36:07 -08:00
kernel-inode-lock.m4 Perform KABI checks in parallel 2019-10-01 12:50:34 -07:00
kernel-inode-lookup.m4 Linux 6.8 compat: make test functions static 2024-01-29 11:36:07 -08:00
kernel-inode-permission.m4 Linux 6.8 compat: fix inode permission tests 2024-01-29 11:36:07 -08:00
kernel-inode-set-flags.m4 Perform KABI checks in parallel 2019-10-01 12:50:34 -07:00
kernel-inode-set-iversion.m4 Perform KABI checks in parallel 2019-10-01 12:50:34 -07:00
kernel-inode-setattr.m4 Linux 6.8 compat: make test functions static 2024-01-29 11:36:07 -08:00
kernel-inode-times.m4 Linux 6.7 compat: use inode atime/mtime accessors 2023-12-20 11:47:40 -08:00
kernel-insert-inode-locked.m4 Linux compat: Minimum kernel version 3.10 2019-11-12 08:59:06 -08:00
kernel-is_owner_or_cap.m4 Linux 6.3 compat: idmapped mount API changes 2023-04-10 14:15:36 -07:00
kernel-kmap-atomic-args.m4 Linux compat: Minimum kernel version 3.10 2019-11-12 08:59:06 -08:00
kernel-kmap-local-page.m4 Use kmap_local_page instead of kmap_atomic (#16329) 2024-07-16 17:27:29 -07:00
kernel-kmem-cache.m4 Linux compat: Minimum kernel version 3.10 2019-11-12 08:59:06 -08:00
kernel-kmem.m4 Linux 5.16 compat: Check slab.h for kvmalloc 2022-01-24 12:57:50 -08:00
kernel-kstrtoul.m4 Linux compat: Minimum kernel version 3.10 2019-11-12 08:59:06 -08:00
kernel-kthread.m4 Linux 5.17 compat: dequeue_signal() takes a 4th argument 2022-01-25 12:52:51 -08:00
kernel-ktime.m4 Linux 5.6 compat: ktime_get_raw_ts64() 2020-02-27 09:30:45 -08:00
kernel-kuid-helpers.m4 Linux compat: Minimum kernel version 3.10 2019-11-12 08:59:06 -08:00
kernel-kuidgid.m4 Linux compat: Minimum kernel version 3.10 2019-11-12 08:59:06 -08:00
kernel-lseek-execute.m4 Perform KABI checks in parallel 2019-10-01 12:50:34 -07:00
kernel-make-request-fn.m4 Linux 6.11: enable queue flush through queue limits 2024-08-13 17:46:41 -07:00
kernel-misc-minor.m4 Perform KABI checks in parallel 2019-10-01 12:50:34 -07:00
kernel-mkdir.m4 Linux 6.8 compat: make test functions static 2024-01-29 11:36:07 -08:00
kernel-mknod.m4 Linux 6.8 compat: make test functions static 2024-01-29 11:36:07 -08:00
kernel-mm-pagemap.m4 Linux 6.11: add compat macro for page_mapping() 2024-08-13 17:47:18 -07:00
kernel-objtool.m4 Linux 5.10 compat: frame.h renamed objtool.h 2020-11-02 22:01:10 +00:00
kernel-pagemap-folio_wait_bit.m4 autoconf: AC_MSG_CHECKING consistency 2022-06-01 09:59:37 -07:00
kernel-pde-data.m4 Linux 5.17 compat: PDE_DATA() renamed to pde_data() 2022-01-25 12:53:00 -08:00
kernel-percpu.m4 Introduce write-mostly sums 2021-05-27 14:27:29 -06:00
kernel-proc-operations.m4 Linux 6.8 compat: make test functions static 2024-01-29 11:36:07 -08:00
kernel-put-link.m4 Linux 6.8 compat: make test functions static 2024-01-29 11:36:07 -08:00
kernel-readpages.m4 autoconf: AC_MSG_CHECKING consistency 2022-06-01 09:59:37 -07:00
kernel-reclaim_state.m4 Linux 6.4 compat: reclaimed_slab renamed to reclaimed 2023-05-24 12:23:42 -07:00
kernel-register_sysctl_table.m4 Linux 6.11: avoid passing "end" sentinel to register_sysctl() 2024-08-13 17:47:22 -07:00
kernel-rename.m4 Linux 6.8 compat: make test functions static 2024-01-29 11:36:07 -08:00
kernel-revalidate-disk-size.m4 Linux 5.18 compat: replace genhd.h with blkdev.h includes 2022-03-28 09:52:55 -07:00
kernel-rw.m4 Perform KABI checks in parallel 2019-10-01 12:50:34 -07:00
kernel-rwsem.m4 Delete rw_semaphore.wait_lock configure check 2020-12-09 21:22:54 -08:00
kernel-sched.m4 Linux compat: Minimum kernel version 3.10 2019-11-12 08:59:06 -08:00
kernel-security-inode-init.m4 Linux compat: Minimum kernel version 3.10 2019-11-12 08:59:06 -08:00
kernel-set-nlink.m4 Linux compat: Minimum kernel version 3.10 2019-11-12 08:59:06 -08:00
kernel-setattr-prepare.m4 Linux 6.3 compat: idmapped mount API changes 2023-04-10 14:15:36 -07:00
kernel-sget-args.m4 Linux compat: Minimum kernel version 3.10 2019-11-12 08:59:06 -08:00
kernel-show-options.m4 Linux 6.8 compat: make test functions static 2024-01-29 11:36:07 -08:00
kernel-shrink.m4 Linux 6.8 compat: make test functions static 2024-01-29 11:36:07 -08:00
kernel-siginfo.m4 Add SIGSTOP and SIGTSTP handling to issig 2021-04-15 13:34:35 -07:00
kernel-signal-stop.m4 Add SIGSTOP and SIGTSTP handling to issig 2021-04-15 13:34:35 -07:00
kernel-special-state.m4 Add SIGSTOP and SIGTSTP handling to issig 2021-04-15 13:34:35 -07:00
kernel-stdarg.m4 Linux 5.15 compat: standalone <linux/stdarg.h> 2021-09-08 12:59:43 -07:00
kernel-strlcpy.m4 Linux 6.8 compat: implement strlcpy fallback 2024-01-29 11:36:07 -08:00
kernel-super-userns.m4 Perform KABI checks in parallel 2019-10-01 12:50:34 -07:00
kernel-symlink.m4 Linux 6.8 compat: make test functions static 2024-01-29 11:36:07 -08:00
kernel-sysfs.m4 autoconf: AC_MSG_CHECKING consistency 2022-06-01 09:59:37 -07:00
kernel-timer.m4 Linux 6.8 compat: make test functions static 2024-01-29 11:36:07 -08:00
kernel-tmpfile.m4 Linux 6.8 compat: make test functions static 2024-01-29 11:36:07 -08:00
kernel-totalhigh_pages.m4 Perform KABI checks in parallel 2019-10-01 12:50:34 -07:00
kernel-totalram-pages-func.m4 Perform KABI checks in parallel 2019-10-01 12:50:34 -07:00
kernel-truncate-setsize.m4 Linux compat: Minimum kernel version 3.10 2019-11-12 08:59:06 -08:00
kernel-types.m4 Linux 6.7 compat: detect if kernel defines intptr_t 2024-05-24 18:54:24 -07:00
kernel-user-ns-inum.m4 Add Linux namespace delegation support 2022-06-10 09:51:46 -07:00
kernel-userns-capabilities.m4 Linux 4.10 compat: has_capability() 2020-07-19 09:56:21 -07:00
kernel-usleep_range.m4 Linux compat: Minimum kernel version 3.10 2019-11-12 08:59:06 -08:00
kernel-vfs-direct_IO.m4 Linux 6.8 compat: make test functions static 2024-01-29 11:36:07 -08:00
kernel-vfs-extended-file_range.m4 linux: implement filesystem-side copy/clone functions for EL7 2023-07-24 16:37:04 -07:00
kernel-vfs-file_range.m4 Linux 6.8 compat: use splice_copy_file_range() for fallback 2024-03-20 16:46:15 -07:00
kernel-vfs-filemap_dirty_folio.m4 autoconf: AC_MSG_CHECKING consistency 2022-06-01 09:59:37 -07:00
kernel-vfs-fsync.m4 Linux compat: Minimum kernel version 3.10 2019-11-12 08:59:06 -08:00
kernel-vfs-getattr.m4 Perform KABI checks in parallel 2019-10-01 12:50:34 -07:00
kernel-vfs-iov_iter.m4 Linux 6.5 compat: replace generic_file_splice_read with filemap_splice_read 2023-08-07 15:47:46 -07:00
kernel-vfs-iterate.m4 Linux 6.8 compat: make test functions static 2024-01-29 11:36:07 -08:00
kernel-vfs-read_folio.m4 autoconf: AC_MSG_CHECKING consistency 2022-06-01 09:59:37 -07:00
kernel-vfs-rw-iterate.m4 Linux 6.8 compat: make test functions static 2024-01-29 11:36:07 -08:00
kernel-vfs-set_page_dirty.m4 autoconf: AC_MSG_CHECKING consistency 2022-06-01 09:59:37 -07:00
kernel-wait.m4 Perform KABI checks in parallel 2019-10-01 12:50:34 -07:00
kernel-writepage_t.m4 Linux 6.8 compat: make test functions static 2024-01-29 11:36:07 -08:00
kernel-xattr-handler.m4 Linux 6.8 compat: make test functions static 2024-01-29 11:36:07 -08:00
kernel-zero_page.m4 Adding ZERO_PAGE detection 2022-03-14 12:37:39 -07:00
kernel-zlib.m4 Linux compat: Minimum kernel version 3.10 2019-11-12 08:59:06 -08:00
kernel.m4 Linux 6.11: avoid passing "end" sentinel to register_sysctl() 2024-08-13 17:47:22 -07:00
lib-ld.m4 config: libintl/libiconv for gettext() detection 2019-04-19 12:09:29 -07:00
lib-link.m4 Clarify comments in config/*.m4, vdev_geom.c, zfs_allow_*.ksh 2020-06-22 09:46:37 -07:00
lib-prefix.m4 Clarify comments in config/*.m4, vdev_geom.c, zfs_allow_*.ksh 2020-06-22 09:46:37 -07:00
mount-helper.m4 Autoconf 2.70 compatibility 2021-01-02 16:55:55 -08:00
nls.m4 config: libintl/libiconv for gettext() detection 2019-04-19 12:09:29 -07:00
pkg.m4 Fix typos in config/ 2019-08-30 09:40:30 -07:00
po.m4 config: libintl/libiconv for gettext() detection 2019-04-19 12:09:29 -07:00
progtest.m4 config: libintl/libiconv for gettext() detection 2019-04-19 12:09:29 -07:00
rpm.am Make sure all necessary RPM path macros are defined 2024-01-16 13:32:59 -08:00
tgz.am Make RPM_DEFINE_KMOD conditional on CONFIG_KERNEL 2020-07-14 17:32:21 -07:00
toolchain-simd.m4 Linux 5.16 compat: don't use XSTATE_XSAVE to save FPU state 2022-02-09 12:50:10 -08:00
user-aio.h.m4 config: user: check for <aio.h> 2022-03-28 10:24:22 -07:00
user-backtrace.m4 libspl/assert: dump backtrace in assert 2024-05-01 10:52:00 -07:00
user-clock_gettime.m4 Clean up lib dependencies 2020-07-10 14:26:00 -07:00
user-dracut.m4 Autoconf 2.70 compatibility 2021-01-02 16:55:55 -08:00
user-gettext.m4 Add config.rpath for AM_GNU_GETTEXT 2020-07-10 14:26:12 -07:00
user-libaio.m4 config: user: check for <aio.h> 2022-03-28 10:24:22 -07:00
user-libatomic.m4 config/libatomic: require -latomic iff atomic.c doesn't link w/o it 2021-07-13 13:50:48 -07:00
user-libblkid.m4 Fix up FIND_SYSTEM_LIBRARY to work with cross-compiling 2020-07-10 14:26:40 -07:00
user-libcrypto.m4 Fix up FIND_SYSTEM_LIBRARY to work with cross-compiling 2020-07-10 14:26:40 -07:00
user-libexec.m4 Autoconf 2.70 compatibility 2021-01-02 16:55:55 -08:00
user-libfetch.m4 libfetch: unquote @LIBFETCH_SONAME@ subst 2022-01-06 11:26:40 -08:00
user-libtirpc.m4 Fix up FIND_SYSTEM_LIBRARY to work with cross-compiling 2020-07-10 14:26:40 -07:00
user-libudev.m4 Fix up FIND_SYSTEM_LIBRARY to work with cross-compiling 2020-07-10 14:26:40 -07:00
user-libunwind.m4 libspl/assert: use libunwind for backtrace when available 2024-05-01 10:52:05 -07:00
user-libuuid.m4 Fix up FIND_SYSTEM_LIBRARY to work with cross-compiling 2020-07-10 14:26:40 -07:00
user-makedev.m4 Autoconf 2.70 compatibility 2021-01-02 16:55:55 -08:00
user-pam.m4 Use correct prefix for share/pam-configs 2020-07-30 09:09:46 -07:00
user-runstatedir.m4 Add defs for makefile installation dir vars 2014-03-31 16:11:13 -07:00
user-systemd.m4 autoconf: use include directives instead of recursing down etc 2022-05-10 10:19:58 -07:00
user-sysvinit.m4 autoconf: use include directives instead of recursing down etc 2022-05-10 10:19:58 -07:00
user-udev.m4 Autoconf 2.70 compatibility 2021-01-02 16:55:55 -08:00
user-zlib.m4 Fix up FIND_SYSTEM_LIBRARY to work with cross-compiling 2020-07-10 14:26:40 -07:00
user.m4 libspl/assert: use libunwind for backtrace when available 2024-05-01 10:52:05 -07:00
zfs-build.m4 ZFS Interface for Accelerators (Z.I.A.) 2024-09-10 15:14:15 +00:00
zfs-meta.m4 Remove basename(1). Clean up/shorten some coreutils pipelines 2021-11-11 13:27:37 -07:00
zia.m4 ZFS Interface for Accelerators (Z.I.A.) 2024-09-10 15:14:15 +00:00