Commit Graph

182 Commits

Author SHA1 Message Date
Brian Behlendorf b0436b0a97 Merge branch 'linux-docs' into refs/top-bases/linux-zfs-branch 2010-03-11 14:08:33 -08:00
Brian Behlendorf feee765f99 Remove promise example config replace with a supermicro config
The promise config never worked quite right.  I'm replacing it with
a Supermicro config which does and which I've tested on a real test
system.
2010-03-11 14:04:12 -08:00
Brian Behlendorf e7b3766a69 Remove udev dependency when running in-tree
After much contemplation I can't see a clean way to use udev entirely
in-tree for testing.  This patch removed a horrible horrible hack which
would copy the needed udev bits in to place on your system to make it
work.  That however is simply not acceptable, nothing you in in-tree
should ever ever ever install something on your system.

Since I could not come up with a clean way to use udev in-tree.  The
fix is to simply parse the zdev config file and create the needed
symlinks in a sub-diretory or your working tree.  This is not as clean
as using udev but it does work perfectly well for in-tree testing.
2010-03-11 13:56:20 -08:00
Brian Behlendorf 037d965f04 Merge commit 'refs/top-bases/linux-zpios' into linux-zpios 2010-03-09 14:56:01 -08:00
Ricardo M. Correia 17c7323211 Fix scripts to work when invoked from other directories. 2010-03-09 14:51:49 -08:00
Ricardo M. Correia 4853ac3d53 Fix scripts to work when invoked from other directories. 2010-03-09 14:50:15 -08:00
Brian Behlendorf 06d354b4f3 Merge commit 'refs/top-bases/linux-zpios' into linux-zpios
Conflicts:

	cmd/Makefile.am
2010-03-02 10:06:26 -08:00
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
Brian Behlendorf 0e63df30fe Merge commit 'refs/top-bases/linux-zpios' into linux-zpios 2010-01-08 10:26:22 -08:00
Brian Behlendorf e0aff96a14 Use udevadm if available otherwise use udevtrigger/udevsettle
Moving forward udevadm {trigger/settle} replaced udevtrigger/udevsettle
as the correct interface to use.  However, since we need to work in
both environments for testing check and see if udevadm is available.
If it is then use it.  If it is not fall back to the legacy interface.
2010-01-08 10:20:03 -08:00
Brian Behlendorf 4fdebcdb85 Merge commit 'refs/top-bases/linux-zpios' into linux-zpios 2009-12-11 16:23:43 -08:00
Brian Behlendorf 77825f6f77 Merge commit 'refs/top-bases/zfs-branch' into zfs-branch 2009-12-11 16:22:24 -08:00
Brian Behlendorf 058ac9ba78 Pull in latest man pages as part of update-zfs.sh
The script has been updated to download the latest documentations
packages for Solaris and extract the needed ZFS man pages.  These
will still need a little markup to handle changes between the
Solaris and Linux versions of ZFS.  Howver, they should be pretty
minor I've tried hard to keep the interface the same.

In additional to the script update the zdb, zfs, and zpool man
pages have been added to the repo.
2009-12-11 16:15:33 -08:00
Brian Behlendorf ffa4167a7b Merge commit 'refs/top-bases/linux-zpios' into linux-zpios 2009-11-24 15:52:23 -08:00
Brian Behlendorf 0ec3a0ef62 Add udev rules to zfs-test package 2009-11-24 15:48:16 -08:00
Brian Behlendorf 0fa82994c4 Merge commit 'refs/top-bases/linux-zpios' into linux-zpios 2009-11-20 10:31:30 -08:00
Brian Behlendorf 23304dc828 Add 16 drive promise JBOD zpool configs for small test setup. 2009-11-20 10:12:41 -08:00
Brian Behlendorf 6fabeffd3b Additional ZVOL compatibility autoconf checks and zconfig ZVOL sanity test. 2009-11-20 10:04:56 -08:00
Brian Behlendorf 911692fabb Merge commit 'refs/top-bases/linux-zpios' into linux-zpios 2009-11-15 16:28:51 -08:00
Brian Behlendorf d00a0ea8a0 Merge commit 'refs/top-bases/zfs-branch' into zfs-branch 2009-11-15 16:27:02 -08:00
Brian Behlendorf 0aa61e8427 Remove zvol.c when updating in update-zfs.sh Linux version available. 2009-11-15 16:20:01 -08:00
Brian Behlendorf bed1e1bfde Merge commit 'refs/top-bases/linux-zpios' into linux-zpios 2009-11-02 14:16:09 -08:00
Brian Behlendorf 15098d4fd1 Add missing os-sanity.sh test script to package. 2009-11-02 14:10:46 -08:00
Brian Behlendorf 31a5ad7c9d Add missing zconfig.sh test script to package. 2009-11-02 14:09:23 -08:00
Brian Behlendorf 98e0ea6e3e Merge commit 'refs/top-bases/linux-zpios' into linux-zpios 2009-10-27 15:03:51 -07:00
Brian Behlendorf 008f3a42bb Added zpios-sanity.sh script to validate common configurations.
This script was added to provide a simple way to check that zpool
layers correctly on all the standard linux block device types.
It's still a little fragile if there a hiccup in say the md or
lvm tool chain but aside from that it works well.

The 'make check' target now also calls this script in a safe mode
which only operates on files and loopback devices.  To check other
block devices types is must be explicitly run by hand because it
will overwrite various block devices.
2009-10-27 14:33:27 -07:00
Brian Behlendorf 2d70e6fd91 Update scripts to cleanup better when setup failures occur 2009-10-27 14:31:31 -07:00
Brian Behlendorf 753a45822f Merge commit 'refs/top-bases/linux-zpios' into linux-zpios 2009-10-26 10:49:35 -07:00
Brian Behlendorf 5fbb2c1c4e Test configs for md, dm, and ramdisk style block devices
For the sake of completeness we need to validate everything works
well not just on IDE or SCSI drives.  But we need to verify a
zpool configured on top of the Linux virtual block devices.
These scripts simply that testing process, and have shown that
while everything is good on top of a ram disk.  Right now the
code base panics the kernel when layered on top of either an
md or dm style device.  For the moment don't do that.
2009-10-26 10:41:06 -07:00
Brian Behlendorf b1d8d8fef9 Merge commit 'refs/top-bases/linux-zpios' into linux-zpios 2009-10-21 12:04:21 -07:00
Brian Behlendorf 5bf14d3400 Update zpool-configs to be udev aware.
To simplify creation and management of test configurations the
dragon and x4550 configureis have been integrated with udev.  Our
current best guess as to how we'll actually manage the disks in
these systems is with a udev mapping scheme.  The current leading
scheme is to map each drive to a simpe <CHANNEL><RANK> id.  In
this mapping each CHANNEL is represented by the letters a-z, and
the RANK is represented by the numbers 1-n.  A CHANNEL should
identify a group of RANKS which are all attached to a single
controller, each RANK represents a disk.  This provides a nice
mechanism to locate a specific drive given a known hardware
configuration.  Various hardware vendors use a similar scheme.

A nice side effect of these changes is it allowed me to make
the raid0/raid10/raidz/raidz2 setup functions generic.  This
makes adding new test configs easy, you just need to create
a udev rules file for your test config which conforms to the
naming scheme.
2009-10-21 11:38:51 -07:00
Brian Behlendorf cd82cb1836 Merge commit 'refs/top-bases/linux-zpios' into linux-zpios 2009-10-09 15:45:30 -07:00
Brian Behlendorf e0e0f0ea84 Merge commit 'refs/top-bases/zfs-branch' into zfs-branch 2009-10-09 15:43:33 -07:00
Brian Behlendorf 5c36312909 Script update-zfs.sh updated to include libefi library 2009-10-09 15:37:29 -07:00
Brian Behlendorf a4a2726d2a Merge commit 'refs/top-bases/linux-zpios' into linux-zpios 2009-10-06 12:29:44 -07:00
Brian Behlendorf 5d4c60fabe Use alternate /etc/zfs/zpool.cache file for in-tree tests
Pass an alternate location via module option for the zpool.cache file
used by the kernel.  This allows us to write in-tree tests which do
not modify any out-of-tree files we do not own.  This is just standard
good behavior for any test suite.

Additionally, refine the existing test case to explicity use the cache
file when looking for pools to import.  And add a second test cache
which is forced to probe the disks for available pools to import.
2009-10-06 12:12:05 -07:00
Brian Behlendorf e02d23d347 Merge commit 'refs/top-bases/linux-zpios' into linux-zpios
Conflicts:

	scripts/Makefile.am
2009-10-01 17:09:38 -07:00
Brian Behlendorf 0efea24e73 Add zconfig.sg test script.
This is an initial script for validation of zfs/zpool configuration.
For now there is only one test here to ensure that /etc/zfs/zpool.cache
is being updated properly from the kernel module.  Additional tests
should be added, I believe Richardo said there was an existing test
suite out there which validated the behavior of many zpool/zfs commands.
It would be nice to add that as appropriate.
2009-10-01 16:55:34 -07:00
Brian Behlendorf af90397fbc Move ZPIOS chunk to linux-zpios topic branch 2009-08-18 14:48:25 -07:00
Brian Behlendorf cd710627dd Merge commit 'refs/top-bases/linux-zpios' into linux-zpios 2009-08-18 14:21:47 -07:00
Brian Behlendorf 5b4a08d0f4 Move ZPIOS chunk to linux-zpios topic branch 2009-08-18 14:06:05 -07:00
Brian Behlendorf 38f5d8fd54 Merge commit 'refs/top-bases/linux-zpios' into linux-zpios 2009-08-18 10:51:10 -07:00
Brian Behlendorf adc7bb76f2 Add 3 dragon drawer test configurations (raid0, raidz, raidz2).
The current test rig consists of two 60 disk dragon drawers in configured
in 4-x15 mode.  Each drawer has 4 SAS connections to my node for a total
of 8 SAS connections spread over 4 dual-port LSI SAS adapters.  The
configures are as follows:
- raid0:  All 120 drives in a single pool.
- raidz:  15 RAIDZ groups of 7+1.
- raidz2: 15 RAIDZ2 groups of 6+2.
2009-08-18 10:40:30 -07:00
Brian Behlendorf 8e954086b9 Add zpios scripts to zfs-test package test infrastructure.
This change extends the existing in-tree test infrastructure such
that it can also be run as part of a the installed package.  This
simplifies testing on multiple systems and is generally all around
useful.  The scripts may still be run in-tree and will use the
in-tree build products as long as .script-config exists.
2009-08-17 21:50:55 -07:00
Brian Behlendorf 48107741cd Merge commit 'refs/top-bases/linux-zpios' into linux-zpios
Conflicts:

	configure.ac
	scripts/Makefile.am
2009-08-17 21:46:51 -07:00
Brian Behlendorf 4f555da51d Add zfs-test package which includes test infrastructure.
This change extends the existing in-tree test infrastructure such
that it can also be run as part of a the installed package.  This
simplifies testing on multiple systems and is generally all around
useful.  The scripts may still be run in-tree and will use the
in-tree build products as long as .script-config exists.
2009-08-17 21:35:06 -07:00
Brian Behlendorf 49d045e35d Merge commit 'refs/top-bases/linux-zpios' into linux-zpios 2009-07-27 10:50:31 -07:00
Brian Behlendorf 3a431c68c2 Remove LINUXINCLUDE from autoconf wrapper, breaks 2.6.28+ kernels.
Modern kernel build systems at least post 2.6.16 will set this properly
so we should not.  In fact post 2.6.28 the include headers have moved
under arch so the guess we make here is completely wrong.  Letting
the kernel build system set this ensure it will be correct.  Also
drop the ulimit from the Makefile which, not surprisingly, turns out
to be very non-portable.  If your expecting failures set the ulimit
in your shell before kicking off the test suite.
2009-07-27 10:39:28 -07:00
Brian Behlendorf 518a89550a Merge commit 'refs/top-bases/linux-zpios' into linux-zpios
Conflicts:

	scripts/Makefile.am
2009-07-24 16:04:26 -07:00
Brian Behlendorf 5ecd180d91 ulimit is a function of the shell and should be invoked as such. 2009-07-24 15:50:57 -07:00