Commit Graph

20960 Commits

Author SHA1 Message Date
Brian Behlendorf 7d5e54a11b Merge branch 'linux-symbol-collisions' into refs/top-bases/linux-zfs-branch 2010-08-09 16:51:45 -07:00
Brian Behlendorf 11a4494498 Merge commit 'refs/top-bases/linux-symbol-collisions' into linux-symbol-collisions 2010-08-09 16:51:43 -07:00
Brian Behlendorf 0ced01c6c5 Merge branch 'linux-kernel-mem' into refs/top-bases/linux-zfs-branch 2010-08-09 16:51:36 -07:00
Brian Behlendorf e39a871d46 Merge commit 'refs/top-bases/linux-kernel-mem' into linux-kernel-mem 2010-08-09 16:51:34 -07:00
Brian Behlendorf acf6f07ace Merge branch 'linux-kernel-disk' into refs/top-bases/linux-zfs-branch 2010-08-09 16:51:26 -07:00
Brian Behlendorf 13c5d88ac4 Merge commit 'refs/top-bases/linux-kernel-disk' into linux-kernel-disk 2010-08-09 16:51:23 -07:00
Brian Behlendorf f73f826e9f Merge branch 'linux-have-spl-debug' into refs/top-bases/linux-zfs-branch 2010-08-09 16:51:16 -07:00
Brian Behlendorf bbcc7cba51 Merge commit 'refs/top-bases/linux-have-spl-debug' into linux-have-spl-debug 2010-08-09 16:51:13 -07:00
Brian Behlendorf 9cb44812a4 Merge branch 'linux-have-mntent' into refs/top-bases/linux-zfs-branch 2010-08-09 16:51:06 -07:00
Brian Behlendorf 63d94952dc Merge commit 'refs/top-bases/linux-have-mntent' into linux-have-mntent 2010-08-09 16:51:03 -07:00
Brian Behlendorf dd11e3f7f0 Limit sysfs name to KOBJ_NAME_LEN
See commit dfc166d174 for details.
2010-08-09 16:45:38 -07:00
Brian Behlendorf dfc166d174 Limit sysfs name to KOBJ_NAME_LEN
It appears that in earlier kernels the maximum name length of a
kobject was KOBJ_NAME_LEN (20) bytes.  This was later extended to
dynamically allocate enough memory if it was over KOBJ_NAME_LEN,
and finally it was always made dynamic.  Unfortunately, util this
last step happened it doesn't look like it always safe to use
names larger than KOBJ_NAME_LEN.  For example, under the RHEL5
2.6.18 kernel if the kobject name length exceeds KOBJ_NAME_LEN
a NULL dereference is tripped.

To avoid this issue the build system has been update to check
to see if KOBJ_NAME_LEN is defined.  If it is we have to assume
the maximum kobject name length is only 20 bytes.  This 20 byte
name must minimally include the following components.

  <zpool>/<dataset>[@snapshot[partition]]
2010-08-09 16:44:41 -07:00
Brian Behlendorf d5168aa089 Insert small delay for udev
While the zfs utilities do block until the expected device appears
they can only do this for full devices, not partitions.  This means
that once as device appears it still may take a little bit of time
before the kernel rescans the partition table, updates sysfs, udev
is notified and the partition devices are created.  The test case
itself could block briefly waiting for the partition beause it knows
what to expect.  But for now the simpler thing to do is just delay.
2010-08-09 16:43:54 -07:00
Brian Behlendorf 6478a7f847 Remove /zvol/ path component from zconfig.sh
See previous commit for details.  But the gist is with the removal of
the zvol path component the regression tests must be updated to use
the correct path name.
2010-08-09 16:43:33 -07:00
Brian Behlendorf 5ce3b77ef8 Remove /zvol/ path component for zvol devices
As part of commit f162433deb the /zvol/
path component was added for zvol devices.  This ensured all zvol
devices would be created by udev in /dev/zvol/<pool>/<dataset>, as
opposed to the previous /dev/<pool>/<dataset> path.  Logically, it
was nice to organize them in a directory much like Solaris does.

However, while initial testing showed this to work fine with modern
kernels it does not appear to be supported under RHEL5.  The extra
path component triggers a NULL deref in create_dir().  Anyway, to
avoid having different zvol path names based on your kernel version
its more consistent simply to revert to the original naming convention.
If you really want the zvol component you can always add custom
udev rules to do exactly this.

We can revisiting this change again once we are willing to drop
support for RHEL5 and similar older distros.
2010-08-09 16:42:42 -07:00
Brian Behlendorf 3d78dbe4b6 Merge branch 'linux-kernel-mem' into refs/top-bases/linux-zfs-branch 2010-08-06 14:02:10 -07:00
Brian Behlendorf c10118d23e Reapply changes to correct TopGit merge
See commit 992e89df07
2010-08-06 13:56:23 -07:00
Brian Behlendorf 979273cab1 Merge branch 'linux-kernel-mem' into refs/top-bases/linux-zfs-branch
Conflicts:

	module/zfs/zfs_ioctl.c
2010-08-06 13:37:03 -07:00
Brian Behlendorf 992e89df07 Revert changes to correct TopGit merge
I've noticed the TopGit linux-zfs-branch has some linux-kernel-mem
changes which were incorrectly merged.  To fix the issue I'm
reverting the changes in the linux-kernel-mem topic branch, then
remerging the revert, and finally reapplying and merging the
change correctly.
2010-08-06 13:27:32 -07:00
Brian Behlendorf 7c857dcaf4 Merge branch 'linux-libspl' into refs/top-bases/linux-zfs-branch 2010-08-06 11:17:46 -07:00
Brian Behlendorf 615e289a57 Revert "Remove declarations in VERIFY3_IMPL to save stack"
This reverts commit 421d95b3ea.

Ricardo correctly pointed out that there is more going on here than
typecasting.  By removing the locals we are actually causing LEFT and
RIGHT to be evaluated twice which can potentially lead to some
strange side effects as:

1) VERIFY3*() causing a panic but in the panic message the values
look correct such that the assertion shouldn't fail, or:

2) if LEFT or RIGHT are expressions with side-effects (e.g. a call
to a function which changes some state), then when we panic and
examine the crash dump, it may lead to an unexpected state because
we are not expecting certain things to change during the panic,
after the expressions inside VERIFY3*(...) have been evaluated.

3) Also, it may lead to double-panics or deadlocks during panics,
like for example, if the expressions inside VERIFY3*(...) only expect
to be called once (e.g. because they acquire a mutex).
2010-08-06 11:08:24 -07:00
Brian Behlendorf 0fd353341a Revert "remove compiler warning on 32-bit systems"
This reverts commit 80819cc01e.
2010-08-06 11:08:11 -07:00
Brian Behlendorf a0e4ba0b36 Merge branch 'linux-have-mlslabel' into refs/top-bases/linux-zfs-branch 2010-08-06 10:55:48 -07:00
Brian Behlendorf 6bf8e59f4f Merge commit 'refs/top-bases/linux-have-mlslabel' into linux-have-mlslabel 2010-08-06 10:55:46 -07:00
Brian Behlendorf 7c0e4cf7fe Merge branch 'linux-spa-thread' into refs/top-bases/linux-zfs-branch 2010-08-06 10:55:38 -07:00
Brian Behlendorf 1c46ee7dc1 Merge commit 'refs/top-bases/linux-spa-thread' into linux-spa-thread 2010-08-06 10:55:36 -07:00
Brian Behlendorf a5895f71e6 Merge branch 'linux-topology' into refs/top-bases/linux-zfs-branch 2010-08-06 10:55:28 -07:00
Brian Behlendorf 637b5e5c7c Merge commit 'refs/top-bases/linux-topology' into linux-topology 2010-08-06 10:55:26 -07:00
Brian Behlendorf b677319cc3 Merge branch 'linux-sha2' into refs/top-bases/linux-zfs-branch 2010-08-06 10:55:19 -07:00
Brian Behlendorf b03dc3b357 Merge commit 'refs/top-bases/linux-sha2' into linux-sha2 2010-08-06 10:55:16 -07:00
Brian Behlendorf 2a5f49988c Merge branch 'linux-user-util' into refs/top-bases/linux-zfs-branch 2010-08-06 10:55:08 -07:00
Brian Behlendorf 948b10b462 Merge commit 'refs/top-bases/linux-user-util' into linux-user-util 2010-08-06 10:55:06 -07:00
Brian Behlendorf 711a5d60a5 Merge branch 'linux-events' into refs/top-bases/linux-zfs-branch 2010-08-06 10:54:58 -07:00
Brian Behlendorf a83fa51e54 Merge commit 'refs/top-bases/linux-events' into linux-events 2010-08-06 10:54:56 -07:00
Brian Behlendorf eeecef2c7b Merge branch 'linux-kernel-module' into refs/top-bases/linux-zfs-branch 2010-08-06 10:54:49 -07:00
Brian Behlendorf bb6043ec12 Merge commit 'refs/top-bases/linux-kernel-module' into linux-kernel-module 2010-08-06 10:54:46 -07:00
Brian Behlendorf 2209c58281 Merge branch 'linux-kernel-device' into refs/top-bases/linux-zfs-branch 2010-08-06 10:54:37 -07:00
Brian Behlendorf b1917e6208 Merge commit 'refs/top-bases/linux-kernel-device' into linux-kernel-device 2010-08-06 10:54:34 -07:00
Brian Behlendorf f18af24801 Merge branch 'linux-have-idmap' into refs/top-bases/linux-zfs-branch 2010-08-06 10:54:26 -07:00
Brian Behlendorf c412136664 Merge commit 'refs/top-bases/linux-have-idmap' into linux-have-idmap 2010-08-06 10:54:23 -07:00
Brian Behlendorf a2da24dbe3 Merge branch 'linux-ztest' into refs/top-bases/linux-zfs-branch 2010-08-06 10:54:16 -07:00
Brian Behlendorf 00ef1da191 Merge commit 'refs/top-bases/linux-ztest' into linux-ztest 2010-08-06 10:54:13 -07:00
Brian Behlendorf e985124efe Merge branch 'linux-unused' into refs/top-bases/linux-zfs-branch 2010-08-06 10:54:05 -07:00
Brian Behlendorf f70896946c Merge commit 'refs/top-bases/linux-unused' into linux-unused 2010-08-06 10:54:02 -07:00
Brian Behlendorf 27432bb045 Merge branch 'linux-libspl' into refs/top-bases/linux-zfs-branch 2010-08-06 10:53:55 -07:00
Brian Behlendorf 1d610821b3 Merge commit 'refs/top-bases/linux-libspl' into linux-libspl 2010-08-06 10:53:53 -07:00
Brian Behlendorf dc236f1d4d Merge branch 'linux-zpios' into refs/top-bases/linux-zfs-branch 2010-08-06 10:53:43 -07:00
Brian Behlendorf c240da97b3 Merge commit 'refs/top-bases/linux-zpios' into linux-zpios 2010-08-06 10:53:41 -07:00
Brian Behlendorf 0dc1414e51 Merge branch 'linux-user-disk' into refs/top-bases/linux-zfs-branch 2010-08-06 10:53:33 -07:00
Brian Behlendorf fff1bace2b Merge commit 'refs/top-bases/linux-user-disk' into linux-user-disk 2010-08-06 10:53:31 -07:00