Go to file
Alexander Motin ac592318b8 Fix livelist assertions for dedup and cloning
Two block pointers in livelist pointing to the same location may
be caused not only by dedup, but also by block cloning. We should
not assert D bit set in them.

Two block pointers in livelist pointing to the same location may
have different logical birth time in case of dedup or cloning. We
should assert identical physical birth time instead.

Assert identical physical block size between pointers in addition
to checksum, since that is what checksums are calculated on.

Reviewed-by: Matthew Ahrens <mahrens@delphix.com>
Reviewed-by: Brian Behlendorf <behlendorf1@llnl.gov>
Signed-off-by:	Alexander Motin <mav@FreeBSD.org>
Sponsored by:	iXsystems, Inc.
Closes #15732
2024-01-12 12:53:00 -08:00
.github Refine some details for the github actions update 2023-03-16 10:00:14 -07:00
cmd zdb: Dump encrypted write and clone ZIL records 2024-01-08 16:11:39 -08:00
config Linux 6.2 compat: add check for kernel_neon_* availability 2024-01-12 12:38:27 -08:00
contrib Packaging: Auto-generate changelog during configure (#15528) 2023-11-16 14:23:03 -08:00
etc Revert "systemd: Use non-absolute paths in Exec* lines" 2023-06-07 11:14:05 -07:00
include Linux 6.2 compat: add check for kernel_neon_* availability 2024-01-12 12:38:27 -08:00
lib ZIO: Add overflow checks for linear buffers 2024-01-08 16:11:39 -08:00
man Allow block cloning across encrypted datasets 2024-01-08 16:11:39 -08:00
module Fix livelist assertions for dedup and cloning 2024-01-12 12:53:00 -08:00
rpm zfs-dkms: fix shell-init error message 2023-11-28 15:19:07 -08:00
scripts Add zfs_prepare_disk script for disk firmware install 2023-11-06 16:45:07 -08:00
tests Allow block cloning across encrypted datasets 2024-01-08 16:11:39 -08:00
udev
.cirrus.yml CI: add FreeBSD build with Cirrus CI 2023-10-07 09:08:20 -07:00
.editorconfig
.gitignore Packaging: Auto-generate changelog during configure (#15528) 2023-11-16 14:23:03 -08:00
.gitmodules
.mailmap mailmap: initial, trying to tidy up a lot of the commit history 2023-10-10 19:19:09 -07:00
AUTHORS AUTHORS: update with missing names 2023-10-10 19:19:09 -07:00
autogen.sh Ubuntu 22.04 integration: ShellCheck 2022-11-18 11:24:48 -08:00
CODE_OF_CONDUCT.md Documentation corrections 2022-12-22 11:34:28 -08:00
configure.ac Packaging: Auto-generate changelog during configure (#15528) 2023-11-16 14:23:03 -08:00
copy-builtin
COPYRIGHT
LICENSE
Makefile.am Process script directory for all configs 2022-10-27 16:45:14 -07:00
META Tag zfs-2.2.2 2023-11-29 14:08:46 -08:00
NEWS
NOTICE
README.md FreeBSD: Fix the build on FreeBSD 12 2023-11-28 15:19:07 -08:00
RELEASES.md
TEST
zfs.release.in

img

OpenZFS is an advanced file system and volume manager which was originally developed for Solaris and is now maintained by the OpenZFS community. This repository contains the code for running OpenZFS on Linux and FreeBSD.

codecov coverity

Official Resources

Installation

Full documentation for installing OpenZFS on your favorite operating system can be found at the Getting Started Page.

Contribute & Develop

We have a separate document with contribution guidelines.

We have a Code of Conduct.

Release

OpenZFS is released under a CDDL license. For more details see the NOTICE, LICENSE and COPYRIGHT files; UCRL-CODE-235197

Supported Kernels

  • The META file contains the officially recognized supported Linux kernel versions.
  • Supported FreeBSD versions are any supported branches and releases starting from 12.4-RELEASE.