OpenZFS on Linux and FreeBSD
Go to file
Ned Bass 613d88eda8 Align parition end on 1 MiB boundary
Some devices have exhibited sensitivity to the ending alignment of
partitions.  In particular, even if the first partition begins at 1
MiB, we have seen many sd driver task abort errors with certain SSDs
if the first partition doesn't end on a 1 MiB boundary.  This occurs
when the vdev label is read during pool creation or importation and
causes a delay of about 30 seconds per device.  It can also be
simulated with dd when the pool isn't imported:

  dd if=/dev/sda1 of=/dev/null bs=262144 count=1

For the record, this problem was observed with SMARTMOD
SG9XCA2E200GE01 200GB SSDs.  Unfortunately I don't have a good
explanation for this behavior. It seems to have something to do with
highly fragmented single-sector requests being issued to the device,
which it may not support.  With end-aligned partitions at least
page-sized requests were queued and issued to the driver according
to blktrace. In any case, aligning the partition end is a fairly
innocuous work-around, wasting at most 1 MiB of space.

Signed-off-by: Brian Behlendorf <behlendorf1@llnl.gov>
Closes #574
2012-03-05 09:49:50 -08:00
cmd Cleanly support debug packages 2012-02-27 14:08:17 -08:00
config Cleanly support debug packages 2012-02-27 14:08:17 -08:00
dracut Cleanly support debug packages 2012-02-27 14:08:17 -08:00
etc Cleanly support debug packages 2012-02-27 14:08:17 -08:00
include Cleanly support debug packages 2012-02-27 14:08:17 -08:00
lib Align parition end on 1 MiB boundary 2012-03-05 09:49:50 -08:00
man Cleanly support debug packages 2012-02-27 14:08:17 -08:00
module Use SA_HDL_PRIVATE for SA xattrs 2012-03-02 13:20:48 -08:00
patches Add build system 2010-08-31 13:41:27 -07:00
scripts Cleanly support debug packages 2012-02-27 14:08:17 -08:00
udev Cleanly support debug packages 2012-02-27 14:08:17 -08: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 Add the release component to headers 2012-01-18 12:19:47 -08:00
Makefile.in Cleanly support debug packages 2012-02-27 14:08:17 -08:00
OPENSOLARIS.LICENSE Add CDDL license file 2008-12-01 14:49:34 -08:00
PKGBUILD-zfs-modules.in Add make rule for building Arch Linux packages 2011-12-14 19:14:23 -08:00
PKGBUILD-zfs.in Add make rule for building Arch Linux packages 2011-12-14 19:14:23 -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 Cleanly support debug packages 2012-02-27 14:08:17 -08:00
configure.ac Add make rule for building Arch Linux packages 2011-12-14 19:14:23 -08:00
zfs-modules.spec.in Cleanly support debug packages 2012-02-27 14:08:17 -08:00
zfs-script-config.sh.in Unconditionally load core kernel modules 2010-11-11 11:38:25 -08:00
zfs.spec.in Fix rpm dependencies 2012-01-18 12:19:52 -08:00
zfs_config.h.in Cleanly support debug packages 2012-02-27 14:08:17 -08: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