Brian Behlendorf
e8e3a8ae70
Merge branch 'linux-user-disk' into refs/top-bases/linux-zfs-branch
2009-10-23 12:28:12 -07:00
Brian Behlendorf
24f3d6e49e
Misc fixed based on testing with the dragon config.
...
In check_disk() we should only check the entire device if it
not a whole disk. It is a whole disk with an EFI label on it,
it is possible that libblkid will misidentify the device as a
filesystem. I had a case yesterday where 2 bytes in the EFI
GUID happened we set to the right values such that libblkid
decided there was a minux filesystem there. If it's a whole
device we look for a EFI label.
If we are able to read the backup EFI label from a device but
the primary is corrupt. Then don't bother trying to stat
the partitions in /dev/ the kernel will not create devices
using the backup label when the primary is damaged.
Add code to determine if we have a udev path instead of a
normal device path. In this case use the -part# partition
naming scheme instead of the /dev/disk# scheme. This is
important because we always want to access devices using
the full path provided at configuration time.
Readded support for zpool_relabel_disk() now that we have
the full libefi library in place we do have access to this
functionality.
Lots of additional paranoia to ensure EFI label are written
correctly. These changes include:
1) Removing the O_NDELAY flag when opening a file descriptor
for libefi. This flag should really only be used when you
do not intend to do any file IO. Under Solaris only ioctl()'s
were performed under linux we do perform reads and writes.
2) Use O_DIRECT to ensure any caching is bypassed while
writing or reading the EFI labels. This change forces the
use of sector aligned memory buffers which are allocated
using posix_memalign().
3) Add additional efi_debug error messages to efi_ioctl().
4) While doing a fsync is good to ensure the EFI label is on
disk we can, and should go one step futher by issuing the
BLKFLSBUF ioctl(). This signals the kernel to instruct the
drive to flush it's on-disk cache.
5) Because of some initial strangeness I observed in testing
with some flakey drives be extra paranoid in zpool_label_disk().
After we've written the device without error, flushed the drive
caches, correctly detected the new partitions created by the
kernel. Then additionally read back the EFI label from user
space to make sure it is intact and correct. I don't think we
can ever be to careful here.
NOTE: The was recently some concern expressed that writing EFI
labels from user space on Linux was not the right way to do this.
That instead two kernel ioctl()s should be used to create and
remove partitions. After some investigation it's clear to me
using those ioctl() would be a bad idea. The in fact don't
actually write partition tables to the disk, they only create
the partition devices in the kernel. So what you really want
to do is write the label out from user space, then prompt the
kernel to re-read the partition from disk to create the partitions.
This is in fact exactly what newer version of parted do.
2009-10-23 11:57:59 -07:00
Brian Behlendorf
e0e0bac5a6
Merge branch 'linux-user-disk' into refs/top-bases/linux-zfs-branch
2009-10-21 12:04:19 -07:00
Brian Behlendorf
aec988734b
Command 'zpool create' needs to wait on correct partition names.
...
When creating partition tables we always need to wait until not
only the /dev/<disk><part> device appears. But just as importantly
if we were originally given a udev path we need to wait for the
/dev/disk/*/<name>-part<part> symlink to be created. However,
since the partition naming convention differs between /dev/ and
/dev/disk we determine based on the path which convention to
expect and then wait (for a few seconds) for the device to be
created. Based on my experience with udev on my test nodes it
takes about 300ms for the devices to be created after being
prompted by the kernel. This time will vary somehwat based
on how complicated your udev rules are, so for safety I threw
in a factor of 10. We wait 3 seconds for the devices to appears
before erroring out with a failure.
An additional minor fix includes checking the force flag in the
EFI_GPT_PRIMARY_CORRUPT case. This allows you to force the
update even in the corrupt partition case.
Finally, since these are Linux only changes I've dropped the
devid code entirely here because I still can't think of why we
would need or want it on a Linux system.
2009-10-21 11:50:42 -07:00
Brian Behlendorf
3129860fb1
Merge branch 'linux-user-disk' into refs/top-bases/linux-zfs-branch
2009-10-19 14:06:11 -07:00
Brian Behlendorf
5be28776fb
Always preserve the passed path at creation time so udev may be used
...
After spending considerable time thinking about this I've come to the
conclusion that on Linux systems we don't need Solaris style devid
support. Instead was can simply use udev if we are careful, there
are even some advantages.
The Solaris style devid's are designed to provide a mechanism by which
a device can be opened reliably regardless of it's location in the system.
This is exactly what udev provides us on Linux, a flexible mechanism for
consistently identifing the same devices regardless of probing order.
We just need to be careful to always open the device by the path provided
at creation time, this path must be stored in ZPOOL_CONFIG_PATH. This
in fact has certain advantages.
For example, if in your system you always want the zpool to be able to
locate the disk regardless of physical location you can create the pool
using /dev/disk/by-id/. This is perhaps what you'ld want on a desktop
system where the exact location is not that important. It's more
critical that all the disks can be found.
However, in an enterprise setup there's a good chace that the physical
location of each drive is important. You have like set things up such
that your raid groups span multiple hosts adapters, such that you can
lose an adapter without downtime. In this case you would want to use
the /dev/disk/by-path/ path to ensure the path information is preserved
and you always open the disks at the right physical locations. This
would ensure your system never gets accidently misconfigured and still
just works because the zpool was still able to locate the disk.
Finally, if you want to get really fancy you can always create your
own udev rules. This way you could implement whatever lookup sceme
you wanted in user space for your drives. This would include nice
cosmetic things like being able to control the device names in tools
like zpool status, since the name as just based of the device names.
I've yet to come up with a good reason to implement devid support on
Linux since we have udev. But I've still just commented it out for now
because somebody might come up with a really good I forgot.
2009-10-19 13:46:48 -07:00
Brian Behlendorf
295d45555e
Merge branch 'linux-user-disk' into refs/top-bases/linux-zfs-branch
2009-10-15 16:45:13 -07:00
Brian Behlendorf
48d1b0c5ab
Cleanly integrate ZFS tools with libblkid.
...
The majority of this this patch concerns itself with doing a direct
replacement of Solaris's libdiskmgt library with libblkid+libefi.
You'll notice that this patch removes all libdiskmgt code instead of
ifdef'ing it out. This was done to minimize any confusion when reading
the code because it seems unlikely we will ever port libdiskmgt to Linux.
Despite the replacement the behavior of the tools should have remained
the same with one exception. For the moment, we are unable to check
the partitions of devices which have an MBR style partition table when
creating a filesystem. If a non-efi partition sceme is detected on a
whole disk device we prompt the user to explicity use the force option.
It would not be a ton of work to make the tool aware of MBR style
partitions if this becomes a problem.
I've done basic sanity checking for various configurations and all
the issues I'm aware of have been addressed. Even things like blkid
misidentifing a disk as ext3 when it is added to a zfs pool. I'm
careful to always zero out the first 4k of any new zfs partition. That
all said this is all new code and while it looks like it's working right
for me we should keep an eye on it for any strange behavior.
2009-10-15 16:28:47 -07:00
Brian Behlendorf
553e366ce5
Merge branch 'linux-libspl' into refs/top-bases/linux-zfs-branch
2009-10-14 16:54:42 -07:00
Brian Behlendorf
22925be29c
Add in missing header required by libefi.
2009-10-14 16:50:26 -07:00
Brian Behlendorf
c4726e7ad2
Merge branch 'linux-user-disk' into refs/top-bases/linux-zfs-branch
2009-10-14 16:32:16 -07:00
Brian Behlendorf
992be351d5
Changes required to integrate libefi in to Linux.
...
The major change here is to fix up libefi to be linux aware. For
the most part this wasn't too hard but there were a few major issues.
First off I needed to handle the DKIOCGMEDIAINFO and DKIOCINFO ioctls.
There is no direct equivilant for these ioctls under linux. To handle
this I added wrapper functions which under Solaris simple call the ioctls.
But under Linux dig around the system a little bit getting the needed
info to fill in the requested structures.
Secondly the efi_ioctl() call was adapted such that under linux it directly
read or writes out the partition table. Under Solaris this work was
handed off to the kernel via an ioctl. In the efi_write() case we also
ensure we prompt the kernel via BLKRRPART to re-scan the new partition
table. The libefi generated partition tables are correct but older
versions of ~parted-1.8.1 can not read them without a small patch.
The kernel and fdisk are able to read them just fine.
Thirdly efi_alloc_and_init() which is used by zpool to determine if a
device is a 'wholedisk' was updated to be linux aware. This check is
performed by using the partition number for the device, which the
partition number is 0 on linux it is a 'wholedisk'. However, certain
device type such as the loopback and ram disks needed to be excluded
because they do not support partitioning.
Forthly the zpool command was made symlink aware so it can correctly
resolve udev entries such as /dev/disk/by-*/*. This symlinks are
fully expanded ensuring all block devices are recognized. When a
when a 'wholedisk' block device is detected we now properly write
out an efi label and place zfs in the first partition (0th slice).
This partition is created 1MiB in to the disk to ensure it is aligned
nicely with all high end block devices I'm aware of.
This all works for me now but it did take quite a bit of work to get
it all sorted out. It would not surprise me if certain special cases
were missed so we should keep any eye of for any odd behavior.
2009-10-14 16:07:48 -07:00
Brian Behlendorf
c56b485f66
Merge commit 'refs/top-bases/linux-have-zpl' into linux-have-zpl
2009-10-14 15:59:26 -07:00
Brian Behlendorf
9e729be801
Merge commit 'refs/top-bases/linux-unused' into linux-unused
2009-10-14 15:59:18 -07:00
Brian Behlendorf
f4f805a70e
Merge branch 'linux-libspl' into refs/top-bases/linux-zfs-branch
2009-10-14 15:59:13 -07:00
Brian Behlendorf
84ed1fee34
Merge commit 'refs/top-bases/linux-libspl' into linux-libspl
2009-10-14 15:59:11 -07:00
Brian Behlendorf
245e7692f7
Merge commit 'refs/top-bases/linux-user-disk' into linux-user-disk
2009-10-14 15:58:55 -07:00
Brian Behlendorf
b75b8901fe
Merge commit 'refs/top-bases/linux-legacy' into linux-legacy
2009-10-14 15:58:39 -07:00
Brian Behlendorf
1c4a603c81
Merge commit 'refs/top-bases/linux-kernel-mem' into linux-kernel-mem
2009-10-14 15:58:31 -07:00
Brian Behlendorf
3cbe396819
Merge commit 'refs/top-bases/linux-have-zvol' into linux-have-zvol
2009-10-14 15:58:16 -07:00
Brian Behlendorf
35e54ecb43
Merge commit 'refs/top-bases/linux-have-sysevent' into linux-have-sysevent
2009-10-14 15:57:55 -07:00
Brian Behlendorf
ae4e1bef0f
Merge commit 'refs/top-bases/linux-kernel-module' into linux-kernel-module
2009-10-14 15:57:54 -07:00
Brian Behlendorf
db77dd0e60
Merge commit 'refs/top-bases/linux-have-mntent' into linux-have-mntent
2009-10-14 15:57:34 -07:00
Brian Behlendorf
aa587c8437
Merge branch 'linux-docs' into refs/top-bases/linux-zfs-branch
2009-10-14 15:57:13 -07:00
Brian Behlendorf
085ed9fe82
Merge commit 'refs/top-bases/zfs-branch' into zfs-branch
2009-10-14 15:57:10 -07:00
Brian Behlendorf
cb678c0b31
Merge branch 'gcc-branch' into refs/top-bases/zfs-branch
2009-10-14 15:57:09 -07:00
Brian Behlendorf
a8adb61c00
Merge branch 'gcc-ident-pragmas' into refs/top-bases/gcc-branch
2009-10-14 15:57:08 -07:00
Brian Behlendorf
8a905e7dcc
Update vtoc.h header and add missing mhd.h header needed by libefi.
2009-10-14 15:52:24 -07:00
Brian Behlendorf
39d85a8b94
Remove pragmas from new libefi files.
2009-10-14 15:44:22 -07:00
Brian Behlendorf
2fd5a539e9
Merge commit 'refs/top-bases/linux-have-zpl' into linux-have-zpl
2009-10-09 16:44:27 -07:00
Brian Behlendorf
2f001ab9ea
Merge commit 'refs/top-bases/linux-unused' into linux-unused
2009-10-09 16:44:19 -07:00
Brian Behlendorf
9fb47da60f
Merge commit 'refs/top-bases/linux-libspl' into linux-libspl
2009-10-09 16:44:10 -07:00
Brian Behlendorf
81ec3f8951
Merge commit 'refs/top-bases/linux-user-disk' into linux-user-disk
2009-10-09 16:43:53 -07:00
Brian Behlendorf
10cb050e20
Merge commit 'refs/top-bases/linux-legacy' into linux-legacy
2009-10-09 16:43:37 -07:00
Brian Behlendorf
7d9b89f749
Merge commit 'refs/top-bases/linux-kernel-mem' into linux-kernel-mem
2009-10-09 16:43:29 -07:00
Brian Behlendorf
bbe79ef2eb
Merge commit 'refs/top-bases/linux-have-zvol' into linux-have-zvol
2009-10-09 16:43:13 -07:00
Brian Behlendorf
3811cc77d6
Merge commit 'refs/top-bases/linux-have-sysevent' into linux-have-sysevent
2009-10-09 16:42:52 -07:00
Brian Behlendorf
97de984e0f
Merge commit 'refs/top-bases/linux-kernel-module' into linux-kernel-module
2009-10-09 16:42:51 -07:00
Brian Behlendorf
0af48bcf91
Merge commit 'refs/top-bases/linux-have-mntent' into linux-have-mntent
2009-10-09 16:42:31 -07:00
Brian Behlendorf
8b6b31f3e4
Merge branch 'linux-docs' into refs/top-bases/linux-zfs-branch
2009-10-09 16:42:09 -07:00
Brian Behlendorf
cb91bbe6ce
Additional set of build system tweaks for libefi library.
2009-10-09 16:37:32 -07:00
Brian Behlendorf
cae4a99504
Merge branch 'linux-libspl' into refs/top-bases/linux-zfs-branch
2009-10-09 16:23:13 -07:00
Brian Behlendorf
d7e242199c
Header efi_partition.h moved to lib/libefi/include/sys/
2009-10-09 16:18:39 -07:00
Brian Behlendorf
caed68da36
Merge commit 'refs/top-bases/linux-have-zpl' into linux-have-zpl
2009-10-09 16:13:11 -07:00
Brian Behlendorf
3b62dfad5c
Merge commit 'refs/top-bases/linux-unused' into linux-unused
2009-10-09 16:13:03 -07:00
Brian Behlendorf
fc2213dfac
Merge commit 'refs/top-bases/linux-libspl' into linux-libspl
...
Conflicts:
lib/Makefile.am
2009-10-09 16:12:49 -07:00
Brian Behlendorf
7c073d0a7d
Merge commit 'refs/top-bases/linux-user-disk' into linux-user-disk
2009-10-09 16:09:54 -07:00
Brian Behlendorf
2001a56428
Merge commit 'refs/top-bases/linux-legacy' into linux-legacy
2009-10-09 16:09:38 -07:00
Brian Behlendorf
040e6c020f
Merge commit 'refs/top-bases/linux-kernel-mem' into linux-kernel-mem
2009-10-09 16:09:30 -07:00
Brian Behlendorf
f0e7c21dfc
Merge commit 'refs/top-bases/linux-have-zvol' into linux-have-zvol
2009-10-09 16:09:14 -07:00
Brian Behlendorf
8ca9436915
Merge commit 'refs/top-bases/linux-have-sysevent' into linux-have-sysevent
2009-10-09 16:08:53 -07:00
Brian Behlendorf
60f818719c
Merge commit 'refs/top-bases/linux-kernel-module' into linux-kernel-module
2009-10-09 16:08:52 -07:00
Brian Behlendorf
1167bd1a6e
Merge commit 'refs/top-bases/linux-have-mntent' into linux-have-mntent
2009-10-09 16:08:32 -07:00
Brian Behlendorf
a740d2a8f7
Merge branch 'linux-docs' into refs/top-bases/linux-zfs-branch
...
Conflicts:
lib/Makefile.am
2009-10-09 16:06:51 -07:00
Brian Behlendorf
a0337cfcd8
Add libefi library in to the build system.
2009-10-09 15:58:45 -07:00
Brian Behlendorf
c3b45fe669
Merge commit 'refs/top-bases/linux-have-zpl' into linux-have-zpl
2009-10-09 15:45:55 -07:00
Brian Behlendorf
a4665e8ed8
Merge commit 'refs/top-bases/linux-unused' into linux-unused
2009-10-09 15:45:46 -07:00
Brian Behlendorf
746882c100
Merge commit 'refs/top-bases/linux-libspl' into linux-libspl
2009-10-09 15:45:38 -07:00
Brian Behlendorf
503c5eeb2d
Merge commit 'refs/top-bases/linux-user-disk' into linux-user-disk
2009-10-09 15:45:22 -07:00
Brian Behlendorf
9a76c49ee6
Merge commit 'refs/top-bases/linux-legacy' into linux-legacy
2009-10-09 15:45:06 -07:00
Brian Behlendorf
6e242e97ab
Merge commit 'refs/top-bases/linux-kernel-mem' into linux-kernel-mem
2009-10-09 15:44:58 -07:00
Brian Behlendorf
1e8929d87f
Merge commit 'refs/top-bases/linux-have-zvol' into linux-have-zvol
2009-10-09 15:44:42 -07:00
Brian Behlendorf
84c609e202
Merge commit 'refs/top-bases/linux-have-sysevent' into linux-have-sysevent
2009-10-09 15:44:20 -07:00
Brian Behlendorf
699f996fde
Merge commit 'refs/top-bases/linux-kernel-module' into linux-kernel-module
2009-10-09 15:44:19 -07:00
Brian Behlendorf
5ae21ec0c5
Merge commit 'refs/top-bases/linux-have-mntent' into linux-have-mntent
2009-10-09 15:43:59 -07:00
Brian Behlendorf
90b0761a16
Merge branch 'linux-docs' into refs/top-bases/linux-zfs-branch
2009-10-09 15:43:37 -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
7698515ec4
Merge commit 'refs/top-bases/feature-pthreads' into feature-pthreads
2009-10-09 15:43:30 -07:00
Brian Behlendorf
46fa16ed8c
Merge branch 'feature-zap-cursor-to-key' into refs/top-bases/feature-branch
2009-10-09 15:43:28 -07:00
Brian Behlendorf
e59c225cea
Merge commit 'refs/top-bases/fix-stack' into fix-stack
2009-10-09 15:43:15 -07:00
Brian Behlendorf
1af5dcae21
Merge commit 'refs/top-bases/fix-get-configs' into fix-get-configs
2009-10-09 15:43:08 -07:00
Brian Behlendorf
5fc177d934
Merge branch 'fix-clock-wrap' into refs/top-bases/fix-branch
2009-10-09 15:43:00 -07:00
Brian Behlendorf
9302f90662
Merge branch 'gcc-branch' into refs/top-bases/zfs-branch
2009-10-09 15:42:56 -07:00
Brian Behlendorf
c7b65bad15
Merge commit 'refs/top-bases/gcc-missing-braces' into gcc-missing-braces
2009-10-09 15:42:51 -07:00
Brian Behlendorf
926a2e3cc4
Merge commit 'refs/top-bases/gcc-ident-pragmas' into gcc-ident-pragmas
2009-10-09 15:42:48 -07:00
Brian Behlendorf
bbdc4a3fcc
Merge commit 'refs/top-bases/gcc-shadow' into gcc-shadow
2009-10-09 15:42:42 -07:00
Brian Behlendorf
8a9880d6fb
Merge commit 'refs/top-bases/gcc-no-parenthesis' into gcc-no-parenthesis
2009-10-09 15:42:33 -07:00
Brian Behlendorf
05aabf4bea
Merge commit 'refs/top-bases/gcc-cast' into gcc-cast
2009-10-09 15:42:18 -07:00
Brian Behlendorf
3728b6d9c1
Merge branch 'gcc-c90' into refs/top-bases/gcc-branch
2009-10-09 15:42:16 -07:00
Brian Behlendorf
1b0e5a1485
Merge commit 'refs/top-bases/gcc-c90' into gcc-c90
2009-10-09 15:42:15 -07:00
Brian Behlendorf
5c36312909
Script update-zfs.sh updated to include libefi library
2009-10-09 15:37:29 -07:00
Brian Behlendorf
6ef15db027
Merge branch 'linux-have-libefi' into refs/top-bases/linux-zfs-branch
2009-10-09 15:03:50 -07:00
Brian Behlendorf
f73cff230f
Reverting changes on linux-have-libefi topic branch.
2009-10-09 14:59:05 -07:00
Brian Behlendorf
1365576b3e
Merge commit 'refs/top-bases/linux-have-zpl' into linux-have-zpl
2009-08-18 14:22:24 -07:00
Brian Behlendorf
5784c67072
Merge commit 'refs/top-bases/linux-unused' into linux-unused
2009-08-18 14:22:11 -07:00
Brian Behlendorf
547471e842
Merge commit 'refs/top-bases/linux-libspl' into linux-libspl
2009-08-18 14:22:00 -07:00
Brian Behlendorf
060284b353
Merge commit 'refs/top-bases/linux-user-disk' into linux-user-disk
2009-08-18 14:21:35 -07:00
Brian Behlendorf
a8b8cc4801
Merge commit 'refs/top-bases/linux-legacy' into linux-legacy
2009-08-18 14:21:10 -07:00
Brian Behlendorf
1c5a67a320
Merge commit 'refs/top-bases/linux-kernel-mem' into linux-kernel-mem
2009-08-18 14:20:58 -07:00
Brian Behlendorf
bc611acf53
Merge commit 'refs/top-bases/linux-have-zvol' into linux-have-zvol
2009-08-18 14:20:35 -07:00
Brian Behlendorf
5edf1e174e
Merge commit 'refs/top-bases/linux-have-sysevent' into linux-have-sysevent
2009-08-18 14:19:58 -07:00
Brian Behlendorf
ad97c53c74
Merge commit 'refs/top-bases/linux-kernel-module' into linux-kernel-module
2009-08-18 14:19:57 -07:00
Brian Behlendorf
2d5d5fbc92
Merge commit 'refs/top-bases/linux-have-mntent' into linux-have-mntent
2009-08-18 14:19:25 -07:00
Brian Behlendorf
87bdf80fb7
Merge commit 'refs/top-bases/linux-have-libefi' into linux-have-libefi
2009-08-18 14:19:13 -07:00
Brian Behlendorf
147adbe815
Merge branch 'linux-docs' into refs/top-bases/linux-zfs-branch
2009-08-18 14:18:40 -07:00
Brian Behlendorf
e4b55cfbff
Merge commit 'refs/top-bases/zfs-branch' into zfs-branch
2009-08-18 14:18:36 -07:00
Brian Behlendorf
5d83878f46
Merge branch 'gcc-branch' into refs/top-bases/zfs-branch
2009-08-18 14:18:34 -07:00
Brian Behlendorf
e134b976b6
Merge branch 'gcc-missing-braces' into refs/top-bases/gcc-branch
2009-08-18 14:18:33 -07:00
Brian Behlendorf
b29c1f87a0
Required build 121 updates for gcc-missing-braces
2009-08-18 14:08:46 -07:00
Brian Behlendorf
6e43f5a80b
Merge commit 'refs/top-bases/linux-have-zpl' into linux-have-zpl
...
Conflicts:
module/zfs/rrwlock.c
module/zfs/zfs_ioctl.c
2009-08-18 12:59:17 -07:00
Brian Behlendorf
90e41b3d78
Merge commit 'refs/top-bases/linux-unused' into linux-unused
2009-08-18 12:35:58 -07:00
Brian Behlendorf
3e17f18dcc
Merge commit 'refs/top-bases/linux-libspl' into linux-libspl
2009-08-18 12:35:43 -07:00
Brian Behlendorf
8b02e1a43f
Merge commit 'refs/top-bases/linux-user-disk' into linux-user-disk
2009-08-18 12:35:12 -07:00
Brian Behlendorf
a1909790e4
Merge commit 'refs/top-bases/linux-legacy' into linux-legacy
2009-08-18 12:34:40 -07:00
Brian Behlendorf
5f0eb517cf
Merge commit 'refs/top-bases/linux-kernel-mem' into linux-kernel-mem
2009-08-18 12:34:24 -07:00
Brian Behlendorf
b3561355b8
Merge commit 'refs/top-bases/linux-have-zvol' into linux-have-zvol
2009-08-18 12:33:54 -07:00
Brian Behlendorf
c9519311a3
Merge commit 'refs/top-bases/linux-have-sysevent' into linux-have-sysevent
2009-08-18 12:33:10 -07:00
Brian Behlendorf
954484f75d
Merge commit 'refs/top-bases/linux-kernel-module' into linux-kernel-module
...
Conflicts:
module/zfs/dsl_dataset.c
module/zfs/spa_history.c
2009-08-18 12:32:53 -07:00
Brian Behlendorf
df5482e65d
Merge commit 'refs/top-bases/linux-have-mntent' into linux-have-mntent
2009-08-18 12:30:04 -07:00
Brian Behlendorf
2d067983d6
Merge commit 'refs/top-bases/linux-have-libefi' into linux-have-libefi
2009-08-18 12:29:48 -07:00
Brian Behlendorf
c67303e092
Merge branch 'linux-docs' into refs/top-bases/linux-zfs-branch
...
Conflicts:
lib/libzfs/libzfs_dataset.c
module/zfs/dsl_dataset.c
module/zfs/rrwlock.c
module/zfs/spa_history.c
module/zfs/zfs_ioctl.c
2009-08-18 12:26:09 -07:00
Brian Behlendorf
50c623ccef
Merge commit 'refs/top-bases/zfs-branch' into zfs-branch
2009-08-18 12:10:55 -07:00
Brian Behlendorf
8aab887b7c
Merge commit 'refs/top-bases/feature-pthreads' into feature-pthreads
2009-08-18 12:10:47 -07:00
Brian Behlendorf
bfbac5daec
Merge branch 'feature-zap-cursor-to-key' into refs/top-bases/feature-branch
2009-08-18 12:10:38 -07:00
Brian Behlendorf
f8cca2b295
Merge commit 'refs/top-bases/fix-stack' into fix-stack
2009-08-18 12:09:57 -07:00
Brian Behlendorf
b3ea816a68
Merge commit 'refs/top-bases/fix-get-configs' into fix-get-configs
2009-08-18 12:09:36 -07:00
Brian Behlendorf
d205b25a74
Merge branch 'fix-clock-wrap' into refs/top-bases/fix-branch
2009-08-18 12:09:10 -07:00
Brian Behlendorf
b99b422796
Merge branch 'gcc-branch' into refs/top-bases/zfs-branch
2009-08-18 12:08:58 -07:00
Brian Behlendorf
41b297a27f
Merge commit 'refs/top-bases/gcc-missing-braces' into gcc-missing-braces
2009-08-18 12:08:46 -07:00
Brian Behlendorf
abd8fdb94f
Merge commit 'refs/top-bases/gcc-ident-pragmas' into gcc-ident-pragmas
...
Conflicts:
module/zfs/dsl_deleg.c
module/zfs/rrwlock.c
2009-08-18 12:08:36 -07:00
Brian Behlendorf
db89339134
Merge commit 'refs/top-bases/gcc-shadow' into gcc-shadow
...
Conflicts:
module/zfs/dmu.c
2009-08-18 12:07:23 -07:00
Brian Behlendorf
481225606c
Merge commit 'refs/top-bases/gcc-no-parenthesis' into gcc-no-parenthesis
2009-08-18 12:05:39 -07:00
Brian Behlendorf
9e903015fd
Merge commit 'refs/top-bases/gcc-cast' into gcc-cast
2009-08-18 12:05:07 -07:00
Brian Behlendorf
e5e4fadc34
Merge branch 'gcc-c90' into refs/top-bases/gcc-branch
...
Conflicts:
module/zfs/dmu.c
module/zfs/dsl_deleg.c
module/zfs/rrwlock.c
module/zfs/vdev_raidz.c
2009-08-18 12:04:53 -07:00
Brian Behlendorf
0f80e41c89
Merge commit 'refs/top-bases/gcc-c90' into gcc-c90
...
Conflicts:
module/zfs/spa_misc.c
module/zfs/vdev_label.c
2009-08-18 11:55:36 -07:00
Brian Behlendorf
45d1cae3b8
Rebase master to b121
2009-08-18 11:43:27 -07:00
Brian Behlendorf
0803564cbe
Merge commit 'refs/top-bases/linux-have-zpl' into linux-have-zpl
2009-08-04 15:58:39 -07:00
Brian Behlendorf
628a3cb70d
Merge commit 'refs/top-bases/linux-unused' into linux-unused
2009-08-04 15:58:25 -07:00
Brian Behlendorf
1dd0a6bab1
Merge commit 'refs/top-bases/linux-libspl' into linux-libspl
2009-08-04 15:58:13 -07:00
Brian Behlendorf
4eae170dc5
Merge commit 'refs/top-bases/linux-user-disk' into linux-user-disk
2009-08-04 15:57:44 -07:00
Brian Behlendorf
20b364b7aa
Merge commit 'refs/top-bases/linux-legacy' into linux-legacy
2009-08-04 15:57:17 -07:00
Brian Behlendorf
4b1d370e4f
Merge commit 'refs/top-bases/linux-kernel-mem' into linux-kernel-mem
2009-08-04 15:57:03 -07:00
Brian Behlendorf
1bfe0d5177
Merge commit 'refs/top-bases/linux-have-zvol' into linux-have-zvol
2009-08-04 15:56:36 -07:00
Brian Behlendorf
a7a6539d95
Merge commit 'refs/top-bases/linux-have-sysevent' into linux-have-sysevent
2009-08-04 15:55:57 -07:00
Brian Behlendorf
56204aacac
Merge commit 'refs/top-bases/linux-kernel-module' into linux-kernel-module
2009-08-04 15:55:55 -07:00
Brian Behlendorf
295499a5b0
Merge commit 'refs/top-bases/linux-have-mntent' into linux-have-mntent
2009-08-04 15:55:18 -07:00
Brian Behlendorf
e86a0e8ad1
Merge commit 'refs/top-bases/linux-have-libefi' into linux-have-libefi
2009-08-04 15:55:06 -07:00
Brian Behlendorf
72fc3eca7e
Merge branch 'linux-docs' into refs/top-bases/linux-zfs-branch
2009-08-04 15:54:25 -07:00
Brian Behlendorf
f88cbd6535
Merge commit 'refs/top-bases/zfs-branch' into zfs-branch
2009-08-04 15:54:21 -07:00
Brian Behlendorf
8c28ed9bff
Merge branch 'feature-branch' into refs/top-bases/zfs-branch
2009-08-04 15:54:19 -07:00
Brian Behlendorf
7069d048a0
Revert kthreads based on pthread thread specific data due to failure.
...
With this patch applied I get the following failure 100% of the time,
I'd prefer to debug it and keep moving forward but I do not have the
time right now so I'm reverting the patch to the version which worked.
Ricardo please fix.
(gdb) bt
0 ztest_dmu_write_parallel (za=0x2aaaac898960) at
../../cmd/ztest/ztest.c:2566
1 0x0000000000405a79 in ztest_thread (arg=<value optimized out>)
at ../../cmd/ztest/ztest.c:3862
2 0x00002b2e6a7a841d in zk_thread_helper (arg=<value optimized out>)
at ../../lib/libzpool/kernel.c:131
3 0x000000379be06367 in start_thread (arg=<value optimized out>)
at pthread_create.c:297
4 0x000000379b2d30ad in clone () from /lib64/libc.so.6
2009-08-04 15:42:24 -07:00
Brian Behlendorf
ca59cc5c82
Merge commit 'refs/top-bases/linux-have-zpl' into linux-have-zpl
2009-08-04 14:43:29 -07:00
Brian Behlendorf
2f81fca007
Merge commit 'refs/top-bases/linux-unused' into linux-unused
2009-08-04 14:43:14 -07:00
Brian Behlendorf
5cc3f79553
Merge commit 'refs/top-bases/linux-libspl' into linux-libspl
2009-08-04 14:43:02 -07:00
Brian Behlendorf
94fd6b5326
Merge commit 'refs/top-bases/linux-user-disk' into linux-user-disk
2009-08-04 14:42:33 -07:00
Brian Behlendorf
cffdc20142
Merge commit 'refs/top-bases/linux-legacy' into linux-legacy
2009-08-04 14:42:07 -07:00
Brian Behlendorf
b324dc7fd5
Merge commit 'refs/top-bases/linux-kernel-mem' into linux-kernel-mem
2009-08-04 14:41:52 -07:00
Brian Behlendorf
d160703a9c
Merge commit 'refs/top-bases/linux-have-zvol' into linux-have-zvol
2009-08-04 14:41:26 -07:00
Brian Behlendorf
37f263f244
Merge commit 'refs/top-bases/linux-have-sysevent' into linux-have-sysevent
2009-08-04 14:40:50 -07:00
Brian Behlendorf
ed3e845798
Merge commit 'refs/top-bases/linux-kernel-module' into linux-kernel-module
2009-08-04 14:40:48 -07:00
Brian Behlendorf
65d7bfc8b3
Merge commit 'refs/top-bases/linux-have-mntent' into linux-have-mntent
2009-08-04 14:40:08 -07:00
Brian Behlendorf
4576ca6889
Merge commit 'refs/top-bases/linux-have-libefi' into linux-have-libefi
2009-08-04 14:39:53 -07:00
Brian Behlendorf
139ca4655e
Merge branch 'linux-docs' into refs/top-bases/linux-zfs-branch
2009-08-04 14:39:11 -07:00
Brian Behlendorf
3e5388907b
Merge commit 'refs/top-bases/zfs-branch' into zfs-branch
2009-08-04 14:39:07 -07:00
Brian Behlendorf
9aedfd95f6
Merge branch 'feature-branch' into refs/top-bases/zfs-branch
2009-08-04 14:39:06 -07:00
Ricardo M. Correia
c0ce3b40f2
Reimplement user kthreads based on pthread thread specific data.
...
This resolves previous scalabily concerns about the cost of calling
curthread which previously required a list walk. The kthread address
is now tracked as thread specific data which can be quickly returned.
Signed-off-by: Brian Behlendorf <behlendorf1@llnl.gov>
2009-08-04 13:55:15 -07:00
Brian Behlendorf
9dec42d15d
Merge commit 'refs/top-bases/linux-have-zpl' into linux-have-zpl
2009-07-31 14:06:28 -07:00
Brian Behlendorf
5dabe4705a
Merge commit 'refs/top-bases/linux-unused' into linux-unused
2009-07-31 14:06:16 -07:00
Brian Behlendorf
0c20001d27
Merge commit 'refs/top-bases/linux-libspl' into linux-libspl
2009-07-31 14:06:05 -07:00
Brian Behlendorf
21dee98331
Merge commit 'refs/top-bases/linux-user-disk' into linux-user-disk
2009-07-31 14:05:42 -07:00
Brian Behlendorf
2c5abffc5f
Merge commit 'refs/top-bases/linux-legacy' into linux-legacy
2009-07-31 14:05:19 -07:00
Brian Behlendorf
fbbffb3a8e
Merge commit 'refs/top-bases/linux-kernel-mem' into linux-kernel-mem
2009-07-31 14:05:08 -07:00
Brian Behlendorf
e03d56f19c
Merge commit 'refs/top-bases/linux-have-zvol' into linux-have-zvol
2009-07-31 14:04:46 -07:00
Brian Behlendorf
7e865a3fb0
Merge commit 'refs/top-bases/linux-have-sysevent' into linux-have-sysevent
2009-07-31 14:04:16 -07:00
Brian Behlendorf
8539aeef21
Merge commit 'refs/top-bases/linux-kernel-module' into linux-kernel-module
2009-07-31 14:04:15 -07:00
Brian Behlendorf
3f4eb7aad6
Merge commit 'refs/top-bases/linux-have-mntent' into linux-have-mntent
2009-07-31 14:03:44 -07:00
Brian Behlendorf
744f29654f
Merge commit 'refs/top-bases/linux-have-libefi' into linux-have-libefi
2009-07-31 14:03:32 -07:00
Brian Behlendorf
4880532956
Merge branch 'linux-docs' into refs/top-bases/linux-zfs-branch
2009-07-31 14:02:54 -07:00
Brian Behlendorf
9f5e45ef4d
Merge commit 'refs/top-bases/zfs-branch' into zfs-branch
2009-07-31 14:02:49 -07:00
Brian Behlendorf
cf44f97b96
Merge branch 'gcc-branch' into refs/top-bases/zfs-branch
2009-07-31 14:02:48 -07:00
Brian Behlendorf
252846a145
Merge branch 'gcc-shadow' into refs/top-bases/gcc-branch
2009-07-31 14:02:46 -07:00
Brian Behlendorf
cfd9e9936f
Fix an accidentally introduced formatting issue in zfs output.
...
Because the local 'index' variable shadows the index() function
it was replaced by 'i'. Unfortunately when I made this change
I accidentally replaced one instance with 'j' resulting in the
short decimal values being printed incorrectly.
2009-07-31 13:50:21 -07:00
Brian Behlendorf
dbee607bbd
Merge commit 'refs/top-bases/linux-have-zpl' into linux-have-zpl
2009-07-29 21:31:26 -07:00
Brian Behlendorf
2dba5ffe69
Merge commit 'refs/top-bases/linux-unused' into linux-unused
2009-07-29 21:31:13 -07:00
Brian Behlendorf
d6bde0ec4f
Merge commit 'refs/top-bases/linux-libspl' into linux-libspl
2009-07-29 21:31:02 -07:00
Brian Behlendorf
54f3881f7a
Merge commit 'refs/top-bases/linux-user-disk' into linux-user-disk
2009-07-29 21:30:36 -07:00
Brian Behlendorf
3decd9c0ee
Merge commit 'refs/top-bases/linux-legacy' into linux-legacy
2009-07-29 21:30:06 -07:00
Brian Behlendorf
0c78bb26e7
Merge commit 'refs/top-bases/linux-kernel-mem' into linux-kernel-mem
2009-07-29 21:29:53 -07:00
Brian Behlendorf
9cdb618921
Merge commit 'refs/top-bases/linux-have-zvol' into linux-have-zvol
2009-07-29 21:29:28 -07:00
Brian Behlendorf
7abfa06507
Merge commit 'refs/top-bases/linux-have-sysevent' into linux-have-sysevent
2009-07-29 21:28:55 -07:00
Brian Behlendorf
4f6e1daa09
Merge commit 'refs/top-bases/linux-kernel-module' into linux-kernel-module
2009-07-29 21:28:53 -07:00
Brian Behlendorf
402d41bc4a
Merge commit 'refs/top-bases/linux-have-mntent' into linux-have-mntent
2009-07-29 21:28:19 -07:00
Brian Behlendorf
d29bbc0642
Merge commit 'refs/top-bases/linux-have-libefi' into linux-have-libefi
2009-07-29 21:28:05 -07:00
Brian Behlendorf
640e02d051
Merge branch 'linux-arc' into refs/top-bases/linux-zfs-branch
2009-07-29 21:27:17 -07:00
Brian Behlendorf
2d86fb2788
Merge commit 'refs/top-bases/zfs-branch' into zfs-branch
2009-07-29 21:27:13 -07:00
Brian Behlendorf
e2bbeb5e61
Merge branch 'gcc-branch' into refs/top-bases/zfs-branch
2009-07-29 21:27:06 -07:00
Brian Behlendorf
f80c505f4d
Merge branch 'gcc-uninit' into refs/top-bases/gcc-branch
2009-07-29 21:27:04 -07:00
Brian Behlendorf
72d2035ed3
Updated gcc in fc11 flagged a new uninitialized variable.
2009-07-29 21:17:47 -07:00
Brian Behlendorf
484b3af49f
Merge commit 'refs/top-bases/linux-have-zpl' into linux-have-zpl
2009-07-24 11:17:33 -07:00
Brian Behlendorf
cab31f3317
Merge commit 'refs/top-bases/linux-unused' into linux-unused
2009-07-24 11:17:19 -07:00
Brian Behlendorf
f86aa17c6c
Merge commit 'refs/top-bases/linux-libspl' into linux-libspl
2009-07-24 11:17:09 -07:00
Brian Behlendorf
278a36455f
Merge commit 'refs/top-bases/linux-user-disk' into linux-user-disk
2009-07-24 11:15:55 -07:00
Brian Behlendorf
bcaad6c266
Merge commit 'refs/top-bases/linux-legacy' into linux-legacy
2009-07-24 11:15:29 -07:00
Brian Behlendorf
5d9870a0e9
Merge commit 'refs/top-bases/linux-kernel-mem' into linux-kernel-mem
2009-07-24 11:15:19 -07:00
Brian Behlendorf
a9ffd4b53b
Merge commit 'refs/top-bases/linux-have-zvol' into linux-have-zvol
2009-07-24 11:14:53 -07:00
Brian Behlendorf
03eba682e0
Merge commit 'refs/top-bases/linux-have-sysevent' into linux-have-sysevent
2009-07-24 11:14:24 -07:00
Brian Behlendorf
35cd8cd997
Merge commit 'refs/top-bases/linux-kernel-module' into linux-kernel-module
2009-07-24 11:14:23 -07:00
Brian Behlendorf
9f0d45a1fa
Merge commit 'refs/top-bases/linux-have-mntent' into linux-have-mntent
2009-07-24 11:13:53 -07:00
Brian Behlendorf
937dfea552
Merge commit 'refs/top-bases/linux-have-libefi' into linux-have-libefi
2009-07-24 11:13:42 -07:00
Brian Behlendorf
430d6004e5
Merge branch 'linux-arc' into refs/top-bases/linux-zfs-branch
...
Conflicts:
scripts/Makefile.am
2009-07-24 11:10:21 -07:00
Brian Behlendorf
db3967ba86
Merge commit 'refs/top-bases/zfs-branch' into zfs-branch
2009-07-24 11:08:43 -07:00
Brian Behlendorf
9a2275c1c5
Merge branch 'feature-branch' into refs/top-bases/zfs-branch
2009-07-24 11:08:42 -07:00
Ricardo M. Correia
51760e3c7e
Change VERIFY() into VERIFY3U() when creating threads in ztest, so that we can see the return code when it fails.
...
Signed-off-by: Brian Behlendorf <behlendorf1@llnl.gov>
2009-07-24 11:00:23 -07:00
Brian Behlendorf
cbb3788214
Merge commit 'refs/top-bases/linux-have-zpl' into linux-have-zpl
2009-07-24 09:19:34 -07:00
Brian Behlendorf
c24f3b11a2
Merge commit 'refs/top-bases/linux-unused' into linux-unused
2009-07-24 09:19:24 -07:00
Brian Behlendorf
a65ba1acc5
Merge commit 'refs/top-bases/linux-libspl' into linux-libspl
2009-07-24 09:19:12 -07:00
Brian Behlendorf
8f1db6316f
Merge commit 'refs/top-bases/linux-user-disk' into linux-user-disk
2009-07-24 09:18:50 -07:00
Brian Behlendorf
35b101b8d1
Merge commit 'refs/top-bases/linux-legacy' into linux-legacy
2009-07-24 09:18:29 -07:00
Brian Behlendorf
c9dea01500
Merge commit 'refs/top-bases/linux-kernel-mem' into linux-kernel-mem
2009-07-24 09:18:15 -07:00
Brian Behlendorf
9b7658ca98
Merge commit 'refs/top-bases/linux-have-zvol' into linux-have-zvol
2009-07-24 09:17:54 -07:00
Brian Behlendorf
a7d40f9809
Merge commit 'refs/top-bases/linux-have-sysevent' into linux-have-sysevent
2009-07-24 09:17:22 -07:00
Brian Behlendorf
be0b3f923e
Merge commit 'refs/top-bases/linux-kernel-module' into linux-kernel-module
2009-07-24 09:17:21 -07:00
Brian Behlendorf
6216ca6cfd
Merge commit 'refs/top-bases/linux-have-mntent' into linux-have-mntent
2009-07-24 09:16:52 -07:00
Brian Behlendorf
fe9f4bdd27
Merge commit 'refs/top-bases/linux-have-libefi' into linux-have-libefi
2009-07-24 09:16:41 -07:00
Brian Behlendorf
4edfcf44ec
Merge branch 'linux-arc' into refs/top-bases/linux-zfs-branch
2009-07-24 09:15:59 -07:00
Brian Behlendorf
82ca18caae
Merge commit 'refs/top-bases/zfs-branch' into zfs-branch
2009-07-24 09:15:56 -07:00
Brian Behlendorf
825c086a4e
Merge branch 'fix-branch' into refs/top-bases/zfs-branch
2009-07-24 09:15:55 -07:00
Brian Behlendorf
e4610d7991
Merge branch 'fix-get-configs' into refs/top-bases/fix-branch
2009-07-24 09:15:53 -07:00
Brian Behlendorf
1b4dfb80fb
Increase buffer size for nvlist for large configurations
...
It's still not clear to me why the default value here is large
enough Solaris. I hit this limit again when setting up 120 SATA
drives configured as 15 raidz2 groups each containing 8 drives.
We expect to go bigger so we may just want to spend a little
time and figure out how to make this all dynamic.
2009-07-24 08:53:18 -07:00
Brian Behlendorf
b3dab369eb
Merge branch 'linux-libspl' into refs/top-bases/linux-zfs-branch
2009-07-20 13:26:05 -07:00
Brian Behlendorf
2b1eaf77d4
Remove zfs_debug.h which is a duplicate of the version in the
...
modules directory. Having two copies is just asking for trouble.
2009-07-20 13:18:24 -07:00
Brian Behlendorf
65e81abfed
Merge branch 'linux-libspl' into refs/top-bases/linux-zfs-branch
2009-07-17 09:46:23 -07:00
Brian Behlendorf
3a63d17619
Add option -fPIC (Position Independent Code) needed for x86_64.
...
While the generic atomic implementation is not used by default
for x86_64 or x86 builds, we still need to always build it with
-fPIC if we ever want to use it on these platforms.
2009-07-17 09:36:01 -07:00
Brian Behlendorf
35e7382fd2
Merge branch 'linux-libspl' into refs/top-bases/linux-zfs-branch
2009-07-16 13:46:15 -07:00
Brian Behlendorf
18b7a966e4
Minor build fixes from asm-generic change.
...
- Drop _NOTE(CONSTCOND) usage in libspl this is Solaris specific.
- Resolve conflicting OR and AND long prototypes.
2009-07-16 13:37:59 -07:00
Brian Behlendorf
ac81bc8094
Merge branch 'linux-libspl' into refs/top-bases/linux-zfs-branch
2009-07-16 10:28:14 -07:00
Brian Behlendorf
3ae0e369f3
Add generic user space atomic support.
...
Futher testing on my powerpc system revealed that the powerpc
specific atomic implemetation was flawed. Rather than spending
a lot of time correctly reimplementing it in assembly I have
reworked it in to a 100% generic version. The generic version
will not perform well but it does provide correct sematics. It
will be used only when there is no architecture specific version
available. These changes do not impact x86_64 and x86 which have
have correct native implementations.
2009-07-16 09:59:44 -07:00
Brian Behlendorf
f7ea79b354
Merge commit 'refs/top-bases/linux-have-zpl' into linux-have-zpl
2009-07-14 16:56:00 -07:00
Brian Behlendorf
ee2dddb6a4
Merge commit 'refs/top-bases/linux-unused' into linux-unused
2009-07-14 16:55:41 -07:00
Brian Behlendorf
1c396c4600
Merge commit 'refs/top-bases/linux-libspl' into linux-libspl
2009-07-14 16:55:21 -07:00
Brian Behlendorf
46ffc6bfd1
Merge commit 'refs/top-bases/linux-user-disk' into linux-user-disk
2009-07-14 16:54:39 -07:00
Brian Behlendorf
9da48a9e80
Merge commit 'refs/top-bases/linux-legacy' into linux-legacy
2009-07-14 16:54:02 -07:00
Brian Behlendorf
f8103c5514
Merge commit 'refs/top-bases/linux-kernel-mem' into linux-kernel-mem
2009-07-14 16:53:42 -07:00
Brian Behlendorf
c22614ed12
Merge commit 'refs/top-bases/linux-have-zvol' into linux-have-zvol
2009-07-14 16:52:59 -07:00
Brian Behlendorf
1fab39d126
Merge commit 'refs/top-bases/linux-have-sysevent' into linux-have-sysevent
2009-07-14 16:52:04 -07:00
Brian Behlendorf
bd428bf511
Merge commit 'refs/top-bases/linux-kernel-module' into linux-kernel-module
2009-07-14 16:52:02 -07:00
Brian Behlendorf
d3cc17b4ed
Merge commit 'refs/top-bases/linux-have-mntent' into linux-have-mntent
2009-07-14 16:51:11 -07:00
Brian Behlendorf
56045106bd
Merge commit 'refs/top-bases/linux-have-libefi' into linux-have-libefi
2009-07-14 16:50:54 -07:00
Brian Behlendorf
5b0851cbdb
Merge branch 'linux-arc' into refs/top-bases/linux-zfs-branch
2009-07-14 16:49:36 -07:00
Brian Behlendorf
5753d78dcd
Merge commit 'refs/top-bases/zfs-branch' into zfs-branch
2009-07-14 16:49:29 -07:00
Brian Behlendorf
e9d7526fb3
Merge branch 'feature-branch' into refs/top-bases/zfs-branch
2009-07-14 16:49:27 -07:00
Brian Behlendorf
a13cdecdd2
Remove debug printf
2009-07-14 16:35:13 -07:00
Brian Behlendorf
5a3e63ff19
Merge branch 'linux-libspl' into refs/top-bases/linux-zfs-branch
2009-07-14 15:38:46 -07:00
Ricardo M. Correia
4279777f47
Fixed the zpool and zfs commands returning 'internal error: Out of memory.' due to a failure in nvlist_common().
...
The failure turned out to be missing macro definitions for little
endian and big endian.
Signed-off-by: Brian Behlendorf <behlendorf1@llnl.gov>
2009-07-14 15:31:03 -07:00
Brian Behlendorf
3b65f6fab8
Merge commit 'refs/top-bases/linux-have-zpl' into linux-have-zpl
2009-07-14 14:39:38 -07:00
Brian Behlendorf
426661d59e
Merge commit 'refs/top-bases/linux-unused' into linux-unused
2009-07-14 14:39:23 -07:00
Brian Behlendorf
5427e1eec2
Merge commit 'refs/top-bases/linux-libspl' into linux-libspl
2009-07-14 14:39:09 -07:00
Brian Behlendorf
2807f723c1
Merge commit 'refs/top-bases/linux-user-disk' into linux-user-disk
2009-07-14 14:38:39 -07:00
Brian Behlendorf
01ccdae29c
Merge commit 'refs/top-bases/linux-legacy' into linux-legacy
2009-07-14 14:38:09 -07:00
Brian Behlendorf
a53cbbfb0e
Merge commit 'refs/top-bases/linux-kernel-mem' into linux-kernel-mem
2009-07-14 14:37:55 -07:00
Brian Behlendorf
477c7a7281
Merge commit 'refs/top-bases/linux-have-zvol' into linux-have-zvol
2009-07-14 14:37:21 -07:00
Brian Behlendorf
3574c3ff42
Merge commit 'refs/top-bases/linux-have-sysevent' into linux-have-sysevent
2009-07-14 14:36:38 -07:00
Brian Behlendorf
4727a58497
Merge commit 'refs/top-bases/linux-kernel-module' into linux-kernel-module
2009-07-14 14:36:36 -07:00
Brian Behlendorf
c1f0fefdc1
Merge commit 'refs/top-bases/linux-have-mntent' into linux-have-mntent
2009-07-14 14:35:57 -07:00
Brian Behlendorf
563dcb7a96
Merge commit 'refs/top-bases/linux-have-libefi' into linux-have-libefi
2009-07-14 14:35:41 -07:00
Brian Behlendorf
8121895a61
Merge branch 'linux-arc' into refs/top-bases/linux-zfs-branch
2009-07-14 14:34:44 -07:00
Brian Behlendorf
fef9a2c571
Merge commit 'refs/top-bases/zfs-branch' into zfs-branch
2009-07-14 14:34:39 -07:00
Brian Behlendorf
9b9f17a585
Merge branch 'feature-branch' into refs/top-bases/zfs-branch
2009-07-14 14:34:37 -07:00
Brian Behlendorf
864e44e7e0
Provide correct kthread API semantics using pthreads.
...
The intent here is to fully remove the previous Solaris thread
implementation so we don't need to simulate both Solaris kernel
and user space thread APIs. The few user space consumers of the
thread API have been updated to use the kthread API. In order
to support this we needed to more fully support the kthread API
and that means not doing crazy things like casting a thread id
to a pointer and using that as was done before. This first
implementation is not effecient but it does provide all the
corrent semantics. If/when performance becomes and issue we
can and should just natively adopt pthreads which is portable.
Let me finish by saying I'm not proud of any of this and I would
love to see it improved. However, this slow implementation does
at least provide all the correct kthread API semantics whereas
the previous method of casting the thread ID to a pointer was
dodgy at best.
2009-07-14 14:16:26 -07:00
Brian Behlendorf
7e720d98a3
Merge branch 'linux-libspl' into refs/top-bases/linux-zfs-branch
2009-07-09 12:28:04 -07:00
Brian Behlendorf
9cf1451c53
Add ASSERTV macro to simplify removing variables (the V in ASSERTV)
...
when they are only used in ASSERTs which will be compiled out.
2009-07-09 12:08:40 -07:00
Brian Behlendorf
7669102a92
Merge branch 'linux-libspl' into refs/top-bases/linux-zfs-branch
2009-07-08 16:26:27 -07:00
Brian Behlendorf
a3d336e1ae
Drop support for the Solaris user space thread_t API. This was just
...
too confusing. The two consumers of this (ztest.c and taskq.c) have
been updated to use the Solaris kernel space kthread_t API which is
provided by zfs_context.h.
2009-07-08 16:15:42 -07:00
Brian Behlendorf
20635eaf51
Merge commit 'refs/top-bases/linux-have-zpl' into linux-have-zpl
2009-07-08 15:05:19 -07:00
Brian Behlendorf
90b4752aa3
Merge commit 'refs/top-bases/linux-unused' into linux-unused
2009-07-08 15:05:04 -07:00
Brian Behlendorf
fd94a958ff
Merge commit 'refs/top-bases/linux-libspl' into linux-libspl
2009-07-08 15:04:51 -07:00
Brian Behlendorf
133f5a2bdd
Merge commit 'refs/top-bases/linux-user-disk' into linux-user-disk
2009-07-08 15:04:23 -07:00
Brian Behlendorf
c764685bff
Merge commit 'refs/top-bases/linux-legacy' into linux-legacy
2009-07-08 15:03:54 -07:00
Brian Behlendorf
c077c7dda7
Merge commit 'refs/top-bases/linux-kernel-mem' into linux-kernel-mem
2009-07-08 15:03:40 -07:00
Brian Behlendorf
47701d2c24
Merge commit 'refs/top-bases/linux-have-zvol' into linux-have-zvol
2009-07-08 15:03:11 -07:00
Brian Behlendorf
be5ff6fcdd
Merge commit 'refs/top-bases/linux-have-sysevent' into linux-have-sysevent
2009-07-08 15:02:33 -07:00
Brian Behlendorf
d95ee13c20
Merge commit 'refs/top-bases/linux-kernel-module' into linux-kernel-module
2009-07-08 15:02:31 -07:00
Brian Behlendorf
ed0963b770
Merge commit 'refs/top-bases/linux-have-mntent' into linux-have-mntent
2009-07-08 15:01:54 -07:00
Brian Behlendorf
28dcf07ed5
Merge commit 'refs/top-bases/linux-have-libefi' into linux-have-libefi
2009-07-08 15:01:40 -07:00
Brian Behlendorf
c821af8f89
Merge branch 'linux-arc' into refs/top-bases/linux-zfs-branch
2009-07-08 15:00:48 -07:00
Brian Behlendorf
058a25a017
Merge commit 'refs/top-bases/zfs-branch' into zfs-branch
2009-07-08 15:00:43 -07:00
Brian Behlendorf
275d66171b
Merge branch 'feature-branch' into refs/top-bases/zfs-branch
2009-07-08 15:00:41 -07:00
Brian Behlendorf
1ab1b8502b
Stop the kthread/thread/pthread mixing and matching insanity. Update all
...
code to only use the kthread API regardless of if it is compiled in the
kernel or user space. The kthread API will be layered on top of pthreads
as best as possible in zfs_context, this is non optimal but much clearer.
2009-07-08 14:47:23 -07:00
Brian Behlendorf
15c4a8be0c
Merge branch 'linux-have-libefi' into refs/top-bases/linux-zfs-branch
2009-07-07 15:35:07 -07:00
Brian Behlendorf
31157f3a90
Disable zpool_relabel_disk() which requires libefi until we have it.
2009-07-07 15:26:39 -07:00
Brian Behlendorf
23e01e6cde
Merge branch 'linux-user-disk' into refs/top-bases/linux-zfs-branch
2009-07-07 15:07:37 -07:00
Brian Behlendorf
24402e5c15
Drop duplicate defines
2009-07-07 14:58:56 -07:00
Brian Behlendorf
c35e61eea2
Merge branch 'linux-have-idmap' into refs/top-bases/linux-zfs-branch
2009-07-07 14:50:41 -07:00
Brian Behlendorf
04aa3d5ef9
Header aclutils.h only needed by idmap.
2009-07-07 14:41:19 -07:00
Brian Behlendorf
678b02cd8e
Merge commit 'refs/top-bases/linux-have-idmap' into linux-have-idmap
2009-07-07 14:32:59 -07:00
Brian Behlendorf
78d7c67598
Merge commit 'refs/top-bases/linux-have-zpl' into linux-have-zpl
2009-07-07 14:32:34 -07:00
Brian Behlendorf
a0659062f1
Merge commit 'refs/top-bases/linux-unused' into linux-unused
2009-07-07 14:32:21 -07:00
Brian Behlendorf
c3efeee12a
Merge commit 'refs/top-bases/linux-libspl' into linux-libspl
2009-07-07 14:32:08 -07:00
Brian Behlendorf
daebbab116
Merge commit 'refs/top-bases/linux-user-disk' into linux-user-disk
2009-07-07 14:31:41 -07:00
Brian Behlendorf
aa8600a1c2
Merge commit 'refs/top-bases/linux-legacy' into linux-legacy
2009-07-07 14:31:15 -07:00
Brian Behlendorf
869867f69d
Merge commit 'refs/top-bases/linux-kernel-mem' into linux-kernel-mem
2009-07-07 14:31:00 -07:00
Brian Behlendorf
acd26f0d75
Merge commit 'refs/top-bases/linux-have-zvol' into linux-have-zvol
2009-07-07 14:30:34 -07:00
Brian Behlendorf
7c02e8ae1f
Merge commit 'refs/top-bases/linux-have-sysevent' into linux-have-sysevent
2009-07-07 14:29:58 -07:00
Brian Behlendorf
315f906678
Merge commit 'refs/top-bases/linux-kernel-module' into linux-kernel-module
2009-07-07 14:29:57 -07:00
Brian Behlendorf
46f41441da
Merge commit 'refs/top-bases/linux-have-mntent' into linux-have-mntent
2009-07-07 14:29:21 -07:00
Brian Behlendorf
33804ec976
Merge commit 'refs/top-bases/linux-have-libefi' into linux-have-libefi
2009-07-07 14:29:09 -07:00
Brian Behlendorf
7c76f3ce22
Merge branch 'linux-arc' into refs/top-bases/linux-zfs-branch
2009-07-07 14:28:18 -07:00
Brian Behlendorf
3ad5361df2
Merge commit 'refs/top-bases/zfs-branch' into zfs-branch
2009-07-07 14:28:14 -07:00
Brian Behlendorf
ba97ae2628
Merge branch 'fix-branch' into refs/top-bases/zfs-branch
2009-07-07 14:28:13 -07:00
Brian Behlendorf
ed3bd6f446
Merge branch 'fix-acl' into refs/top-bases/fix-branch
2009-07-07 14:19:35 -07:00
Brian Behlendorf
798cf63309
New topic branch for minor acl related fixes
2009-07-07 14:18:47 -07:00
Brian Behlendorf
81729c2c73
Merge commit 'refs/top-bases/linux-have-idmap' into linux-have-idmap
2009-07-07 14:14:24 -07:00
Brian Behlendorf
dd3f9c1ed4
Merge commit 'refs/top-bases/linux-have-zpl' into linux-have-zpl
2009-07-07 14:13:57 -07:00
Brian Behlendorf
f75b8648e2
Merge commit 'refs/top-bases/linux-unused' into linux-unused
2009-07-07 14:13:43 -07:00
Brian Behlendorf
acf9b98673
Merge commit 'refs/top-bases/linux-libspl' into linux-libspl
2009-07-07 14:13:30 -07:00
Brian Behlendorf
e945eb4fe1
Merge commit 'refs/top-bases/linux-user-disk' into linux-user-disk
2009-07-07 14:13:02 -07:00
Brian Behlendorf
46041d7761
Merge commit 'refs/top-bases/linux-legacy' into linux-legacy
2009-07-07 14:12:35 -07:00
Brian Behlendorf
c62815ec2a
Merge commit 'refs/top-bases/linux-kernel-mem' into linux-kernel-mem
2009-07-07 14:12:22 -07:00
Brian Behlendorf
8e7e41cfb0
Merge commit 'refs/top-bases/linux-have-zvol' into linux-have-zvol
...
Conflicts:
lib/libzfs/libzfs_dataset.c
2009-07-07 14:11:46 -07:00
Brian Behlendorf
c911b60c46
Merge commit 'refs/top-bases/linux-have-sysevent' into linux-have-sysevent
2009-07-07 14:09:12 -07:00
Brian Behlendorf
23f5686f20
Merge commit 'refs/top-bases/linux-kernel-module' into linux-kernel-module
2009-07-07 14:09:10 -07:00
Brian Behlendorf
96ddc12975
Merge commit 'refs/top-bases/linux-have-mntent' into linux-have-mntent
2009-07-07 14:08:35 -07:00
Brian Behlendorf
02bc7929d4
Merge commit 'refs/top-bases/linux-have-libefi' into linux-have-libefi
2009-07-07 14:08:22 -07:00
Brian Behlendorf
1ff9c70da3
Merge branch 'linux-arc' into refs/top-bases/linux-zfs-branch
...
Conflicts:
lib/libzfs/libzfs_dataset.c
2009-07-07 14:04:47 -07:00
Brian Behlendorf
34422f0ffa
Merge commit 'refs/top-bases/zfs-branch' into zfs-branch
2009-07-07 13:50:32 -07:00
Brian Behlendorf
47502cd94b
Merge branch 'gcc-branch' into refs/top-bases/zfs-branch
2009-07-07 13:50:31 -07:00
Brian Behlendorf
fb26df15c8
Merge branch 'gcc-missing-braces' into refs/top-bases/gcc-branch
2009-07-07 13:50:30 -07:00
Brian Behlendorf
cad9fa40e1
Merge branch 'gcc-cast' into refs/top-bases/gcc-branch
2009-07-07 13:50:29 -07:00
Brian Behlendorf
a2423197e1
Resolve missing cast warning
2009-07-07 13:41:51 -07:00
Brian Behlendorf
361e0e7685
Fix newly introduced missing braces warnings for gcc.
2009-07-07 13:40:16 -07:00
Brian Behlendorf
ee92267c38
Merge branch 'linux-have-idmap' into refs/top-bases/linux-zfs-branch
2009-07-07 13:20:40 -07:00
Brian Behlendorf
9661d38088
Add topic branch to conditionally remove idmap support. The
...
only things currently like this on linux appears in the nfs v4
implementation of idmap. For now we can do with out.
2009-07-07 13:16:24 -07:00
Brian Behlendorf
70804727b1
Merge branch 'linux-have-sysevent' into refs/top-bases/linux-zfs-branch
2009-07-07 10:15:04 -07:00
Brian Behlendorf
5ae3e75ace
Wrap new sysevent includes in HAVE_SYSEVENT ifdef
2009-07-07 10:07:23 -07:00
Brian Behlendorf
a6b1465e30
Merge commit 'refs/top-bases/linux-have-zpl' into linux-have-zpl
...
Conflicts:
module/zfs/include/sys/zfs_fuid.h
module/zfs/zfs_fuid.c
module/zfs/zfs_ioctl.c
module/zfs/zfs_vfsops.c
module/zfs/zfs_znode.c
2009-07-06 15:16:54 -07:00
Brian Behlendorf
6e96712c9a
Merge commit 'refs/top-bases/linux-unused' into linux-unused
2009-07-06 15:09:25 -07:00
Brian Behlendorf
ab16fdc9ad
Merge commit 'refs/top-bases/linux-libspl' into linux-libspl
2009-07-06 15:09:10 -07:00
Brian Behlendorf
409cfe5051
Merge commit 'refs/top-bases/linux-user-disk' into linux-user-disk
...
Conflicts:
lib/libzfs/libzfs_pool.c
2009-07-06 15:05:47 -07:00
Brian Behlendorf
beac3749a1
Merge commit 'refs/top-bases/linux-legacy' into linux-legacy
2009-07-06 15:04:17 -07:00
Brian Behlendorf
2b582c34cb
Merge commit 'refs/top-bases/linux-kernel-mem' into linux-kernel-mem
...
Conflicts:
module/zfs/zfs_ioctl.c
2009-07-06 15:03:54 -07:00
Brian Behlendorf
b56250900b
Merge commit 'refs/top-bases/linux-have-zvol' into linux-have-zvol
2009-07-06 15:02:55 -07:00
Brian Behlendorf
266a7d8cd7
Merge commit 'refs/top-bases/linux-kernel-module' into linux-kernel-module
...
Conflicts:
module/zcommon/zfs_namecheck.c
module/zfs/spa.c
module/zfs/vdev.c
module/zfs/zap_micro.c
2009-07-06 13:47:04 -07:00
Brian Behlendorf
6c3580cc05
Merge commit 'refs/top-bases/linux-have-mntent' into linux-have-mntent
2009-07-06 13:44:42 -07:00
Brian Behlendorf
053043b2d0
Merge commit 'refs/top-bases/linux-have-libefi' into linux-have-libefi
...
Conflicts:
lib/libzfs/libzfs_pool.c
2009-07-06 13:44:19 -07:00
Brian Behlendorf
149c4b2731
Merge branch 'linux-arc' into refs/top-bases/linux-zfs-branch
...
Conflicts:
cmd/ztest/ztest.c
lib/libzfs/libzfs_pool.c
module/zcommon/zfs_namecheck.c
module/zfs/dmu.c
module/zfs/include/sys/dmu.h
module/zfs/include/sys/zfs_fuid.h
module/zfs/spa.c
module/zfs/vdev.c
module/zfs/zap_micro.c
module/zfs/zfs_fuid.c
module/zfs/zfs_ioctl.c
module/zfs/zfs_vfsops.c
module/zfs/zfs_znode.c
2009-07-06 13:40:29 -07:00
Brian Behlendorf
658459249e
Merge commit 'refs/top-bases/zfs-branch' into zfs-branch
2009-07-06 13:17:28 -07:00
Brian Behlendorf
cd098f87c8
Merge commit 'refs/top-bases/feature-pthreads' into feature-pthreads
...
Conflicts:
cmd/ztest/ztest.c
2009-07-06 13:16:29 -07:00
Brian Behlendorf
326bb586bd
Merge commit 'refs/top-bases/fix-stack' into fix-stack
2009-07-06 13:13:20 -07:00
Brian Behlendorf
e320858042
Merge commit 'refs/top-bases/fix-get-configs' into fix-get-configs
2009-07-06 13:12:54 -07:00
Brian Behlendorf
01c3cfc58f
Merge branch 'fix-clock-wrap' into refs/top-bases/fix-branch
...
Conflicts:
module/zfs/zil.c
2009-07-06 13:12:23 -07:00
Brian Behlendorf
a1ccb00b7e
Merge branch 'gcc-branch' into refs/top-bases/zfs-branch
...
Conflicts:
cmd/ztest/ztest.c
module/zfs/zil.c
2009-07-06 13:11:34 -07:00
Brian Behlendorf
480b03791d
Merge commit 'refs/top-bases/gcc-missing-braces' into gcc-missing-braces
...
Conflicts:
lib/libzfs/libzfs_dataset.c
2009-07-02 17:07:52 -07:00
Brian Behlendorf
a06a428e15
Merge commit 'refs/top-bases/gcc-ident-pragmas' into gcc-ident-pragmas
...
Conflicts:
cmd/zdb/zdb_il.c
cmd/zinject/zinject.c
lib/libzfs/libzfs_graph.c
module/zcommon/include/sys/fm/fs/zfs.h
module/zcommon/include/zfs_deleg.h
module/zcommon/include/zfs_namecheck.h
module/zcommon/zfs_deleg.c
module/zcommon/zfs_namecheck.c
module/zcommon/zprop_common.c
module/zfs/dmu_object.c
module/zfs/dsl_prop.c
module/zfs/fletcher.c
module/zfs/include/sys/dsl_deleg.h
module/zfs/include/sys/dsl_prop.h
module/zfs/include/sys/metaslab_impl.h
module/zfs/include/sys/spa_boot.h
module/zfs/include/sys/zap.h
module/zfs/include/sys/zap_impl.h
module/zfs/include/sys/zfs_context.h
module/zfs/include/sys/zfs_ctldir.h
module/zfs/include/sys/zfs_dir.h
module/zfs/include/sys/zfs_fuid.h
module/zfs/include/sys/zfs_ioctl.h
module/zfs/spa_errlog.c
module/zfs/spa_history.c
module/zfs/zap.c
module/zfs/zap_leaf.c
module/zfs/zap_micro.c
2009-07-02 17:06:20 -07:00
Brian Behlendorf
244d656e28
Merge commit 'refs/top-bases/gcc-shadow' into gcc-shadow
...
Conflicts:
module/zfs/dmu.c
2009-07-02 16:59:39 -07:00
Brian Behlendorf
44703f0029
Merge commit 'refs/top-bases/gcc-uninit' into gcc-uninit
...
Conflicts:
lib/libzfs/libzfs_dataset.c
module/zfs/arc.c
module/zfs/spa.c
2009-07-02 16:57:09 -07:00
Brian Behlendorf
eb0137f395
Merge commit 'refs/top-bases/gcc-no-parenthesis' into gcc-no-parenthesis
...
Conflicts:
lib/libzfs/libzfs_dataset.c
module/zfs/arc.c
module/zfs/dmu_objset.c
module/zfs/dsl_pool.c
module/zfs/spa.c
module/zfs/zfs_ioctl.c
2009-07-02 16:55:22 -07:00
Brian Behlendorf
b095bf444a
Merge commit 'refs/top-bases/gcc-cast' into gcc-cast
...
Conflicts:
cmd/zfs/zfs_main.c
lib/libzfs/libzfs_dataset.c
2009-07-02 16:50:53 -07:00
Brian Behlendorf
e2b2597751
Merge branch 'gcc-c90' into refs/top-bases/gcc-branch
...
Conflicts:
cmd/zdb/zdb_il.c
cmd/zfs/zfs_main.c
cmd/zinject/zinject.c
cmd/ztest/ztest.c
lib/libzfs/libzfs_dataset.c
lib/libzfs/libzfs_graph.c
module/zcommon/include/sys/fm/fs/zfs.h
module/zcommon/include/zfs_deleg.h
module/zcommon/include/zfs_namecheck.h
module/zcommon/zfs_deleg.c
module/zcommon/zfs_namecheck.c
module/zcommon/zprop_common.c
module/zfs/arc.c
module/zfs/dmu.c
module/zfs/dmu_object.c
module/zfs/dmu_objset.c
module/zfs/dsl_pool.c
module/zfs/dsl_prop.c
module/zfs/fletcher.c
module/zfs/include/sys/dsl_deleg.h
module/zfs/include/sys/dsl_prop.h
module/zfs/include/sys/metaslab_impl.h
module/zfs/include/sys/spa_boot.h
module/zfs/include/sys/zap.h
module/zfs/include/sys/zap_impl.h
module/zfs/include/sys/zfs_context.h
module/zfs/include/sys/zfs_ctldir.h
module/zfs/include/sys/zfs_dir.h
module/zfs/include/sys/zfs_fuid.h
module/zfs/include/sys/zfs_ioctl.h
module/zfs/spa.c
module/zfs/spa_errlog.c
module/zfs/spa_history.c
module/zfs/zap.c
module/zfs/zap_leaf.c
module/zfs/zap_micro.c
module/zfs/zfs_ioctl.c
module/zfs/zio.c
2009-07-02 16:49:11 -07:00
Brian Behlendorf
e9f14862a5
Merge commit 'refs/top-bases/gcc-c90' into gcc-c90
...
Conflicts:
module/zfs/dmu_objset.c
module/zfs/spa.c
module/zfs/vdev.c
module/zfs/vdev_label.c
module/zfs/zio.c
2009-07-02 16:18:03 -07:00
Brian Behlendorf
9babb37438
Rebase master to b117
2009-07-02 15:44:48 -07:00