You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
This introduces a new ZFS_IOC_LIBZFS_CORE ioctl and replaces the ioctl
calls in all but 1 function in libzfs_core.so and adds many more. It is
intended to be as stable kernel/userland interface that allows
basic userland functionality to continue working when an older userland
is used with newer kernel modules or vice versa by mistake.
At this time, it is a subset of the legacy functionality, but enough API
functions have been implemented that mismatched kernel/userland code
will not break the Gentoo's boot process (excluding zfs share and ZED,
which are excluded at this time) and ClusterHQ's flocker.
This sufficiently addresses the long standing /dev/zfs API instability
that it opens the possibility of stabilization of the ZFS packaging in
Gentoo on amd64 and other architectures, which makes this an improvement
in more ways than one.
To ease the transition to the new ABI, we include a shim library that
implements the new C library extensions using the old kernel ABI. The
--with-libzfs_core=default|all|legacy|stable configure switch determines
which is used and presently, the default is an alias for legacy that can
be changed in a future release. --with-libzfs_core=all will install
both, with libzfs_core.so.1 using the new ABI while a
libzfs_core-legacy.so.0 that can be loaded with LD_PRELOAD will be
installed containing the old one.
Signed-off-by: Richard Yao <ryao@gentoo.org>
0 commit comments