OpenZFS on Linux and FreeBSD
Go to file
Brian Behlendorf 7df02c0f57 Split the udev rule from a specific configuration
While I completely agree the udev is the lesser of many possibles
evils when solving the device issue... it is still evil.  After
attempting to craft a single rule which will work for various
versions of udev in various distros.  I've come to the conclusion
the only maintainable way to solve this issue is to split the rule
from any particular configuration.

This commit provides a generic 60-zpool.rules file which use a
small helper util 'zpool_id' to parse a configuration file by
default located in /etc/zfs/zdev.conf.  The helper script maps
a by-path udev name to a more friendly name of <channel><rank>
for large configurations.

As part of this change all of the support scripts why rely on
this udev naming convention have been updated as needed.  Example
zdev.conf files have also been added for 3 different systems by
you will always need to add one for your exact hardware.

Finally, included in these changes are the proper tweaks to the
build system to ensure everything still get's packaged properly
in the rpms and can run in or out of tree.
2010-03-01 16:51:21 -08:00
cmd Split the udev rule from a specific configuration 2010-03-01 16:51:21 -08:00
config Split the udev rule from a specific configuration 2010-03-01 16:51:21 -08:00
etc Split the udev rule from a specific configuration 2010-03-01 16:51:21 -08:00
lib Merge commit 'refs/top-bases/zfs-branch' into zfs-branch 2009-10-14 15:57:10 -07:00
man Add man pages to the build system and packages. 2009-12-11 16:49:25 -08:00
module Merge commit 'refs/top-bases/zfs-branch' into zfs-branch 2010-01-08 11:39:31 -08:00
patches Add e2fsprogs patch for detecting ZFS uberblocks until it appears upstream. 2009-11-02 15:04:43 -08:00
scripts Split the udev rule from a specific configuration 2010-03-01 16:51:21 -08:00
.gitignore Add .gitignore files to exclude build products 2010-01-08 11:35:17 -08:00
.topdeps New TopGit dependency: feature-branch 2008-12-05 09:36:26 -08:00
.topmsg Add TODO 2009-01-21 11:26:19 -08:00
AUTHORS Refresh zfs-branch 2008-12-05 09:46:11 -08:00
COPYING Refresh for consistency with COPYRIGHT 2009-06-08 11:59:13 -07:00
COPYRIGHT Readd accidentally dropped COPYRIGHT, it just references the 2009-06-08 11:01:13 -07:00
ChangeLog Prep for 0.4.7 tag, updated META and ChangeLog. 2009-11-24 12:43:40 -08:00
DISCLAIMER Initial Linux ZFS GIT Repo 2008-11-20 12:01:55 -08:00
GIT Refresh type in topgit git://* reference 2009-01-26 21:58:32 -08:00
META Prep for 0.4.7 tag, updated META and ChangeLog. 2009-11-24 12:43:40 -08:00
Makefile.am Split the udev rule from a specific configuration 2010-03-01 16:51:21 -08:00
OPENSOLARIS.LICENSE Add CDDL license file 2008-12-01 14:49:34 -08:00
README Refresh README 2009-01-20 16:16:57 -08:00
TODO Prep for 0.4.6 tag, updated META, ChangeLog, and TODO. 2009-11-02 13:03:59 -08:00
ZFS.RELEASE Rebase master to b121 2009-08-18 11:43:27 -07:00
autogen.sh Core target arch support for conditional compilation of SUBDIRs 2009-06-08 16:07:43 -07:00
configure.ac Split the udev rule from a specific configuration 2010-03-01 16:51:21 -08:00
zfs-modules.spec.in Add chaos5 and rhel6 macro's to the zfs-modules.spec.in 2009-11-24 13:24:25 -08:00
zfs.spec.in Split the udev rule from a specific configuration 2010-03-01 16:51:21 -08:00
zfs_unconfig.h Distro friendly build system / packaging improvements. 2009-07-01 10:53:05 -07:00

README

============================ ZFS KERNEL BUILD ============================

1) Build the SPL (Solaris Porting Layer) module which is designed to
   provide many Solaris APIs in the Linux kernel which are needed
   by ZFS.  To build the SPL:

        tar -xzf spl-x.y.z.tgz
        cd spl-x.y.z
        ./configure --with-linux=<kernel src>
        make
        make check <as root>

2) Build ZFS, this port is based on build specified by the ZFS.RELEASE
   file.  You will need to have both the kernel and SPL source available.
   To build ZFS for use as a Linux kernel module.

        tar -xzf zfs-x.y.z.tgz
        cd zfs-x.y.z
        ./configure --with-linux=<kernel src> \
                    --with-spl=<spl src>
        make
        make check <as root>

============================ ZPIOS TEST SUITE ============================

3) Provided is an in-kernel test application called zpios which can be
   used to simulate a parallel IO load.  It may be used as a stress 
   or performance test for your configuration.  To simplify testing
   scripts provided in the scripts/ directory which provide a few
   pre-built zpool configurations and zpios test cases.  By default
   'make check' as root will run a simple test against several small
   loopback devices created in /tmp/.

       cd scripts
       ./zfs.sh					# Load the ZFS/SPL modules
       ./zpios.sh -c lo-raid0.sh -t tiny -v 	# Tiny zpios loopback test
       ./zfs.sh -u				# Unload the ZFS/SPL modules

Enjoy,
Brian Behlendorf <behlendorf1@llnl.gov>