OpenZFS on Linux and FreeBSD
Go to file
Xin Li c475167627 Illumos #1661: Fix flaw in sa_find_sizes() calculation
When calculating space needed for SA_BONUS buffers, hdrsize is
always rounded up to next 8-aligned boundary. However, in two places
the round up was done against sum of 'total' plus hdrsize. On the
other hand, hdrsize increments by 4 each time, which means in certain
conditions, we would end up returning with will_spill == 0 and
(total + hdrsize) larger than full_space, leading to a failed
assertion because it's invalid for dmu_set_bonus.

Reviewed by: Matthew Ahrens <matt@delphix.com>
Reviewed by: Dan McDonald <danmcd@nexenta.com>
Approved by: Gordon Ross <gwr@nexenta.com>

References to Illumos issue:
  https://www.illumos.org/issues/1661

Signed-off-by: Brian Behlendorf <behlendorf1@llnl.gov>
Closes #426
2011-10-24 09:57:52 -07:00
cmd Change sun.com URLs to zfsonlinux.org 2011-10-24 09:52:21 -07:00
config Convert 'if' statements to AS_IF in kernel.m4 2011-09-06 13:20:48 -07:00
dracut Synchronize initramfs and system hostid 2011-09-30 13:31:00 -07:00
etc Use automatic variable in Makefile 2011-09-26 09:22:30 -07:00
include Illumos #755: dmu_recv_stream builds incomplete guid_to_ds_map 2011-10-18 11:18:14 -07:00
lib Make libefi-created GPT compatible with gptfdisk 2011-09-26 09:44:43 -07:00
man Autogen refresh for udev changes 2011-08-08 16:30:27 -07:00
module Illumos #1661: Fix flaw in sa_find_sizes() calculation 2011-10-24 09:57:52 -07:00
patches Add build system 2010-08-31 13:41:27 -07:00
scripts Disable 90-zfs.rules for test suite 2011-10-11 14:45:37 -07:00
udev Move 90-zfs udev rule from dracut to udev/rules.d 2011-08-19 16:26:13 -07:00
.gitignore Ignore unsigned module build products 2010-03-09 14:14:09 -08:00
AUTHORS Add "ashift" property to zpool create 2011-06-17 16:35:49 -07:00
COPYING Relocate COPYING+COPYRIGHT, remove README cruft 2008-12-01 15:34:53 -08:00
COPYRIGHT Update COPYRIGHT to reference zpios CDDL exceptions. 2010-05-18 14:25:28 -07:00
ChangeLog Add build system 2010-08-31 13:41:27 -07:00
DISCLAIMER Update COPYRIGHT and DISCLAIMER. 2010-05-18 10:32:23 -07:00
META Prep zfs-0.6.0-rc6 tag 2011-10-06 14:10:45 -07:00
Makefile.am Move udev rules from /etc/udev to /lib/udev 2011-08-08 16:21:10 -07:00
Makefile.in Autogen refresh for udev changes 2011-08-08 16:30:27 -07:00
OPENSOLARIS.LICENSE Add CDDL license file 2008-12-01 14:49:34 -08:00
README.markdown Fix markdown rendering 2010-09-15 09:09:37 -07:00
ZFS.RELEASE Update to onnv_147 2010-08-26 14:24:34 -07:00
autogen.sh Make autogen.sh executable 2011-07-26 10:15:35 -07:00
configure Convert 'if' statements to AS_IF in kernel.m4 2011-09-06 13:20:48 -07:00
configure.ac Fix autoconf variable substitution in init scripts. 2011-08-19 16:26:14 -07:00
zfs-modules.spec.in Include distribution in release 2011-10-19 11:43:27 -07:00
zfs-script-config.sh.in Unconditionally load core kernel modules 2010-11-11 11:38:25 -08:00
zfs.spec.in Include distribution in release 2011-10-19 11:43:27 -07:00
zfs_config.h.in Add backing_device_info per-filesystem 2011-08-04 13:37:38 -07:00

README.markdown

Native ZFS for Linux! ZFS is an advanced file system and volume manager which was originally developed for Solaris. It has been successfully ported to FreeBSD and now there is a functional Linux ZFS kernel port too. The port currently includes a fully functional and stable SPA, DMU, and ZVOL with a ZFS Posix Layer (ZPL) on the way!

$ ./configure
$ make pkg

Full documentation for building, configuring, and using ZFS can be found at: http://zfsonlinux.org