https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=289655

            Bug ID: 289655
           Summary: Add /usr/include/openzfs to support in-base and
                    external applications
           Product: Base System
           Version: 15.0-STABLE
          Hardware: Any
                OS: Any
            Status: New
          Severity: Affects Some People
          Priority: ---
         Component: bin
          Assignee: [email protected]
          Reporter: [email protected]

After many discussions on the Production User Calls, at the OpenZFS Summit, and
online [1], it is hopefully time to consider /usr/include/openzfs in the
FreeBSD base, an unobtrusive change that would hopefully never delay a release.

To state the obvious, not all FreeBSD systems are configured with sources and
there have been issues building against firmly or vaguely defined and versioned
"libzfs", notably Samba which can support, but by default lacks support for
"Volume Shadow Copies/Previous Versions" for Windows clients.[2]

FreeBSD's in-base bectl(8) has the luxury of being built against the in-based
sources, but serves as an example of how a utility might depend on OpenZFS
headers.

I will leave this to the experts to validate, but these files appear to be the
most valuable as "libzfs" for use by in-base and external tools:

contrib/openzfs/include/sys/avl.h
contrib/openzfs/include/sys/avl_impl.h
contrib/openzfs/include/sys/fs/zfs.h
contrib/openzfs/include/sys/zio_priority.h
contrib/openzfs/lib/libspl/include/libshare.h
contrib/openzfs/lib/libspl/include/os/freebsd/sys/mnttab.h

[1]
https://despairlabs.com/blog/posts/2025-03-12-we-should-improve-libzfs-somewhat/

[2] https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=251730

I welcome the subject matter experts to chime in as I am doing my best to relay
the key points of a multi-year discussion.

-- 
You are receiving this mail because:
You are the assignee for the bug.

Reply via email to