FreeBSD src
Go to file
Brian Behlendorf fc173c8589 Disable .zfs directory on 32-bit systems
The .zfs control directory implementation currently relies on
the fact that there is a direct 1:1 mapping from an object id
to its inode number.  This works well as long as the system
uses a 64-bit value to store the inode number.

Unfortunately, the Linux kernel defines the inode number as
an 'unsigned long' type.  This means that for 32-bit systems
will only have 32-bit inode numbers but we still have 64-bit
object ids.

This problem is particularly acute for the .zfs directories
which leverage those upper 32-bits.  This is done to avoid
conflicting with object ids which are allocated monotonically
starting from 0.  This is likely to also be a problem for
datasets on 32-bit systems with more than ~2 billion files.

The right long term fix must remove the simple 1:1 mapping.
Until that's done the only safe thing to do is to disable the
.zfs directory on 32-bit systems.

Signed-off-by: Brian Behlendorf <behlendorf1@llnl.gov>
2012-07-20 12:20:57 -07:00
cmd Move partition scanning from userspace to module. 2012-07-17 09:17:31 -07:00
config Fix build failures on PaX/GRSecurity patched kernels 2012-07-17 09:22:43 -07:00
dracut Move partition scanning from userspace to module. 2012-07-17 09:17:31 -07:00
etc Move partition scanning from userspace to module. 2012-07-17 09:17:31 -07:00
include Fix build failures on PaX/GRSecurity patched kernels 2012-07-17 09:22:43 -07:00
lib Move partition scanning from userspace to module. 2012-07-17 09:17:31 -07:00
man Move partition scanning from userspace to module. 2012-07-17 09:17:31 -07:00
module Disable .zfs directory on 32-bit systems 2012-07-20 12:20:57 -07:00
patches Add build system 2010-08-31 13:41:27 -07:00
scripts Move partition scanning from userspace to module. 2012-07-17 09:17:31 -07:00
udev Move partition scanning from userspace to module. 2012-07-17 09:17:31 -07:00
.gitignore
AUTHORS Add "ashift" property to zpool create 2011-06-17 16:35:49 -07:00
autogen.sh Make autogen.sh executable 2011-07-26 10:15:35 -07:00
ChangeLog Add build system 2010-08-31 13:41:27 -07:00
configure Fix build failures on PaX/GRSecurity patched kernels 2012-07-17 09:22:43 -07:00
configure.ac Move zfs.release generation to configure step 2012-07-12 12:22:51 -07:00
COPYING
COPYRIGHT Update COPYRIGHT to reference zpios CDDL exceptions. 2010-05-18 14:25:28 -07:00
DISCLAIMER
Makefile.am Move zfs.release generation to configure step 2012-07-12 12:22:51 -07:00
Makefile.in Move partition scanning from userspace to module. 2012-07-17 09:17:31 -07:00
META ZFS 0.6.0-rc9 2012-06-14 11:46:40 -07:00
OPENSOLARIS.LICENSE
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_config.h.in Move partition scanning from userspace to module. 2012-07-17 09:17:31 -07:00
zfs-modules.spec.in Remove Chaos 4.x RPM support 2012-07-02 15:16:05 -07:00
zfs-script-config.sh.in Unconditionally load core kernel modules 2010-11-11 11:38:25 -08:00
ZFS.RELEASE Update to onnv_147 2010-08-26 14:24:34 -07:00
zfs.release.in Move zfs.release generation to configure step 2012-07-12 12:22:51 -07:00
zfs.spec.in Mark zdev.conf as a config file 2012-06-13 13:02:43 -07:00

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