Commit Graph

164 Commits

Author SHA1 Message Date
Brian Behlendorf 1b5b05c1c3 Merge branch 'linux-docs' into refs/top-bases/linux-zfs-branch 2009-11-15 16:27:05 -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
Brian Behlendorf 96a05001c1 Merge commit 'refs/top-bases/linux-zpios' into linux-zpios
Conflicts:

	scripts/Makefile.am
2009-07-24 11:16:47 -07:00
Ricardo M. Correia 08d148d418 Add ulimit -c unlimited before running ztest, to get a core dump.
Signed-off-by: Brian Behlendorf <behlendorf1@llnl.gov>
2009-07-24 10:58:55 -07:00
Brian Behlendorf 08c9bcde74 Merge commit 'refs/top-bases/linux-zpios' into linux-zpios 2009-07-24 10:36:00 -07:00
Brian Behlendorf 710c21f2e9 Use LOSETUP variable for all calls to /sbin/losetup 2009-07-24 10:25:01 -07:00
Brian Behlendorf 75ddd265cb Remove a stray | in the zpios-survey script which caused it to fail. 2009-07-24 08:50:05 -07:00
Brian Behlendorf 154612b330 Merge commit 'refs/top-bases/linux-zpios' into linux-zpios 2009-07-21 17:14:43 -07:00
Brian Behlendorf bc8c87d2f3 Missed one instance of losetup -f to unused_loop_device change 2009-07-21 17:05:13 -07:00
Brian Behlendorf 8e5f7bd9d5 Merge commit 'refs/top-bases/linux-zpios' into linux-zpios 2009-07-21 16:32:18 -07:00
Brian Behlendorf b9c3c7a2f4 The losetup -f option is unavailable for SLES10 use unused_loop_device()
SLES10 ships util-linux-2.12r-35.30 which does not support the -f option
to losetup.  To avoid this problem the unused_loop_device() function was
added which attempts to find an unused loop device by checking each
/dev/loop* device with losetup to see if it is configured.
2009-07-21 16:17:54 -07:00
Brian Behlendorf efb9868b69 Pretty-up the 'make check' output
Reasonable output from 'make check' now looks roughly like this.  The
big change is the consolidation of the all the zpion test results in
to a single table which can be easily scanned for failures/problems.

==================================== ZTEST ====================================

5 vdevs, 7 datasets, 23 threads, 300 seconds...
Pass   1,  SIGKILL,   1 ENOSPC, 13.8% of  238M used,  17% done,    4m07s to go
Pass   2,  SIGKILL,   1 ENOSPC, 23.7% of  238M used,  38% done,    3m04s to go
Pass   3,  SIGKILL,   0 ENOSPC, 27.0% of  238M used,  66% done,    1m42s to go
Pass   4,  SIGKILL,   0 ENOSPC, 27.4% of  238M used,  75% done,    1m14s to go
Pass   5,  SIGKILL,   0 ENOSPC, 27.9% of  238M used,  89% done,      32s to go
Pass   6, Complete,   0 ENOSPC, 14.0% of  476M used, 100% done,       0s to go
5 killed, 1 completed, 83% kill rate

==================================== ZPIOS ====================================

status    name        id        wr-data wr-ch   wr-bw   rd-data rd-ch   rd-bw
-------------------------------------------------------------------------------
PASS:     file-raid0   0        64m     64      13.04m  64m     64    842.22m
PASS:     file-raid10  0        64m     64      134.19m 64m     64    842.22m
PASS:     file-raidz   0        64m     64      87.56m  64m     64    853.45m
PASS:     file-raidz2  0        64m     64      134.19m 64m     64    853.45m
PASS:     lo-raid0     0        64m     64      429.59m 64m     64    14.63m
PASS:     lo-raid10    0        64m     64      397.57m 64m     64    771.19m
PASS:     lo-raidz     0        64m     64      206.48m 64m     64    688.27m
PASS:     lo-raidz2    0        64m     64      14.34m  64m     64    711.21m
2009-07-21 14:41:35 -07:00
Brian Behlendorf 379941cb58 Merge commit 'refs/top-bases/linux-zpios' into linux-zpios 2009-07-10 11:52:55 -07:00
Brian Behlendorf e16ffab302 SPLBUILD now includes modules 2009-07-10 11:37:30 -07:00
Brian Behlendorf 621679fec6 Update to use dmu_read() instead of dmu_read_impl() now that a 'flags'
argument is available.  This flags argument was added to allow a clean
API for disabling prefetch, so I'll update zpios to use it in preference
to the module option hack used before.
2009-07-06 16:51:59 -07:00
Brian Behlendorf b46037b53f Merge commit 'refs/top-bases/linux-zpios' into linux-zpios 2009-03-18 14:39:07 -07:00
Brian Behlendorf 70407622a7 Move `make check` ztest under ./scripts where the module stack is loaded. 2009-03-18 14:19:04 -07:00
Brian Behlendorf a31814f47b Further profile infrastructure 2009-02-20 22:27:18 -08:00
Brian Behlendorf 4d28f29b6c Update profile scripts with additional upcalls for fine grained profiling 2009-02-20 14:28:00 -08:00
Brian Behlendorf ddfa570f42 Initial update to support zpios.sh profiling option. 2009-02-19 14:51:40 -08:00