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
3d24809465
Merge commit 'refs/top-bases/linux-user-disk' into linux-user-disk
2009-10-15 16:45:11 -07:00
Brian Behlendorf
c1b4a1ef92
Merge branch 'linux-docs' into refs/top-bases/linux-zfs-branch
2009-10-15 16:43:40 -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
a09d33e929
Update build system for libblkid integration
2009-10-15 16:25:18 -07:00
Brian Behlendorf
d5c9d50ffd
Merge commit 'refs/top-bases/linux-configure-branch' into linux-configure-branch
2009-10-15 09:38:54 -07:00
Brian Behlendorf
702a78ed33
Merge branch 'linux-have-libdiskmgt' into refs/top-bases/linux-zfs-branch
2009-10-15 09:38:51 -07:00
Brian Behlendorf
172ca0a7f1
Remove topic branch linux-have-libdiskmgt
2009-10-15 09:34:17 -07:00
Brian Behlendorf
4a704a81ac
Merge commit 'refs/top-bases/linux-configure-branch' into linux-configure-branch
2009-10-14 16:32:19 -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
d1e18d0e3b
Refresh autogen products
2009-10-14 16:00:33 -07:00
Brian Behlendorf
81609e1773
Merge commit 'refs/top-bases/linux-configure-branch' into linux-configure-branch
2009-10-14 15:59:46 -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
245e7692f7
Merge commit 'refs/top-bases/linux-user-disk' into linux-user-disk
2009-10-14 15:58:55 -07:00
Brian Behlendorf
293fe80262
Merge commit 'refs/top-bases/linux-have-libdiskmgt' into linux-have-libdiskmgt
2009-10-14 15:57:27 -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
09a8c99097
Additional build system update for libefi library.
...
This include updating all the Makefile.am to have the correct
include paths and libraries. In addition, the zlib m4 macro was
updated to more correctly integrate with the Makefiles. And I
added two new macros libblkid and libuuid which will be needed by
subsequent commits for blkid and uuid support respectively. The
blkid support is optional, the uuid support is mandatory for libefi.
2009-10-14 15:47:41 -07:00
Brian Behlendorf
00c6a706a5
Refresh autogen products
2009-10-09 16:46:19 -07:00
Brian Behlendorf
8dc5609e72
Merge commit 'refs/top-bases/linux-configure-branch' into linux-configure-branch
2009-10-09 16:44:47 -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
81ec3f8951
Merge commit 'refs/top-bases/linux-user-disk' into linux-user-disk
2009-10-09 16:43:53 -07:00
Brian Behlendorf
c4dff3c807
Merge commit 'refs/top-bases/linux-have-libdiskmgt' into linux-have-libdiskmgt
2009-10-09 16:42:23 -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
28cdfd90ef
Merge commit 'refs/top-bases/linux-configure-branch' into linux-configure-branch
2009-10-09 16:13:31 -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
7c073d0a7d
Merge commit 'refs/top-bases/linux-user-disk' into linux-user-disk
2009-10-09 16:09:54 -07:00
Brian Behlendorf
2fbcf94bce
Merge commit 'refs/top-bases/linux-have-libdiskmgt' into linux-have-libdiskmgt
2009-10-09 16:08:24 -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
0d8bb46b58
Merge commit 'refs/top-bases/linux-configure-branch' into linux-configure-branch
2009-10-09 15:03:53 -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
ae556c9174
Merge commit 'refs/top-bases/linux-configure-branch' into linux-configure-branch
2009-08-18 13:01:34 -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
8b02e1a43f
Merge commit 'refs/top-bases/linux-user-disk' into linux-user-disk
2009-08-18 12:35:12 -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
f301459f0e
Merge commit 'refs/top-bases/linux-have-libdiskmgt' into linux-have-libdiskmgt
2009-08-18 12:29:32 -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
b99b422796
Merge branch 'gcc-branch' into refs/top-bases/zfs-branch
2009-08-18 12:08:58 -07:00
Brian Behlendorf
c5b5d32d69
Merge commit 'refs/top-bases/gcc-uninit' into gcc-uninit
...
Conflicts:
module/zfs/vdev_raidz.c
2009-08-18 12:06:21 -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
45d1cae3b8
Rebase master to b121
2009-08-18 11:43:27 -07:00
Brian Behlendorf
1f8a43f7a2
Refresh autogen products
2009-08-17 21:58:33 -07:00
Brian Behlendorf
535dab57d2
Refresh autogen products.
2009-07-29 17:54:49 -07:00
Brian Behlendorf
8feebe7d65
Refresh autogen products
2009-07-16 10:29:59 -07:00
Brian Behlendorf
c58b9ed603
Merge commit 'refs/top-bases/linux-configure-branch' into linux-configure-branch
2009-07-06 15:21:26 -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
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
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
a33c6c25d2
Merge commit 'refs/top-bases/linux-have-libdiskmgt' into linux-have-libdiskmgt
2009-07-06 13:43:22 -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
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
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
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
9babb37438
Rebase master to b117
2009-07-02 15:44:48 -07:00
Brian Behlendorf
e3d5b2a900
Refresh autogen products
2009-07-01 11:37:26 -07:00
Brian Behlendorf
80cfd98d8e
Refresh autogen products
2009-06-09 16:46:26 -07:00
Brian Behlendorf
26f70525ee
Refresh autogen products
2009-06-08 16:33:33 -07:00
Brian Behlendorf
15ae49cfcc
Merge commit 'refs/top-bases/linux-configure-branch' into linux-configure-branch
2009-03-16 10:43:42 -07:00
Brian Behlendorf
cddaf29902
Merge commit 'refs/top-bases/linux-have-zpl' into linux-have-zpl
2009-03-16 10:43:19 -07:00
Brian Behlendorf
10e245f03f
Merge commit 'refs/top-bases/linux-user-disk' into linux-user-disk
...
Conflicts:
cmd/zpool/zpool_main.c
2009-03-16 10:42:20 -07:00
Brian Behlendorf
e98228ab73
Merge commit 'refs/top-bases/linux-have-libefi' into linux-have-libefi
2009-03-16 10:39:08 -07:00
Brian Behlendorf
dbbb5c2e4e
Merge commit 'refs/top-bases/linux-have-libdiskmgt' into linux-have-libdiskmgt
2009-03-16 10:38:52 -07:00
Brian Behlendorf
c9cff73d9e
Merge branch 'linux-arc' into refs/top-bases/linux-zfs-branch
...
Conflicts:
cmd/zpool/zpool_main.c
2009-03-16 10:32:12 -07:00
Brian Behlendorf
be112b3f57
Merge commit 'refs/top-bases/zfs-branch' into zfs-branch
2009-03-16 10:30:31 -07:00
Brian Behlendorf
5ee8a85ba6
Merge branch 'fix-branch' into refs/top-bases/zfs-branch
2009-03-16 10:30:27 -07:00
Brian Behlendorf
2924858552
Remove two self referential functions.
...
Newer versions of gcc (4.3.0) detected the following unused
code segments.
2009-03-16 10:02:06 -07:00
Brian Behlendorf
7fa1ced508
Refresh autogen products, remove stray zdump Makefile.in
2009-03-12 16:48:12 -07:00
Brian Behlendorf
0fe418c548
Refresh autogen products
2009-03-12 15:55:23 -07:00
Brian Behlendorf
808e542240
Refresh autogen products
2009-03-12 11:06:21 -07:00
Brian Behlendorf
635e9ba8a0
Merge commit 'refs/top-bases/linux-configure-branch' into linux-configure-branch
2009-03-12 10:41:10 -07:00
Brian Behlendorf
bb06faa046
Merge commit 'refs/top-bases/linux-have-zpl' into linux-have-zpl
2009-03-12 10:40:54 -07:00
Brian Behlendorf
fbbb5fe669
Merge commit 'refs/top-bases/linux-user-disk' into linux-user-disk
2009-03-12 10:40:09 -07:00
Brian Behlendorf
45f3d2a2a4
Merge commit 'refs/top-bases/linux-have-libefi' into linux-have-libefi
2009-03-12 10:38:05 -07:00
Brian Behlendorf
5f9ae91a8a
Merge commit 'refs/top-bases/linux-have-libdiskmgt' into linux-have-libdiskmgt
2009-03-12 10:37:50 -07:00
Brian Behlendorf
9bdbd7c8f7
Merge branch 'linux-arc' into refs/top-bases/linux-zfs-branch
2009-03-12 10:37:18 -07:00
Brian Behlendorf
b9b399bf04
Merge commit 'refs/top-bases/zfs-branch' into zfs-branch
2009-03-12 10:37:14 -07:00
Brian Behlendorf
f8fe8a76f4
Merge branch 'gcc-uninit' into refs/top-bases/gcc-branch
2009-03-12 10:37:11 -07:00
Brian Behlendorf
cabd4a69c4
Resolve remaining uninitialized variables
...
Most of these fixes appear to be harmless and should never occur.
However, there were a few cases in this patch which do concern me,
I doubt we're seeing them but they look possible... mainly in the
user tools.
2009-03-12 10:30:41 -07:00
Brian Behlendorf
dd82a3b6bc
Merge commit 'refs/top-bases/linux-configure-branch' into linux-configure-branch
2009-03-11 23:10:09 -07:00
Brian Behlendorf
da4d2eea9d
Merge branch 'linux-have-libdiskmgt' into refs/top-bases/linux-zfs-branch
2009-03-11 23:10:06 -07:00
Brian Behlendorf
73db9f622c
Pull unused err variable under HAVE_DM_INUSE_SWAP ifdef.
2009-03-11 23:05:42 -07:00
Brian Behlendorf
77a1188aee
Merge commit 'refs/top-bases/linux-configure-branch' into linux-configure-branch
2009-03-11 22:50:42 -07:00
Brian Behlendorf
0d19b2613b
Merge branch 'linux-have-zpl' into refs/top-bases/linux-zfs-branch
2009-03-11 22:50:31 -07:00
Brian Behlendorf
1c0279a08f
Resolve newly revealed unused vars and symbols caused by topic branch.
2009-03-11 22:43:09 -07:00
Brian Behlendorf
0b5ddcfdca
Refresh autogen products
2009-03-11 22:31:29 -07:00
Brian Behlendorf
8cb718a76c
Refresh autogen products
2009-03-11 14:25:09 -07:00
Brian Behlendorf
3f8174047a
Merge commit 'refs/top-bases/linux-configure-branch' into linux-configure-branch
2009-03-11 14:13:57 -07:00
Brian Behlendorf
b2041bc8ef
Merge commit 'refs/top-bases/linux-have-zpl' into linux-have-zpl
2009-03-11 14:13:33 -07:00
Brian Behlendorf
330dbde81a
Merge commit 'refs/top-bases/linux-user-disk' into linux-user-disk
2009-03-11 14:12:39 -07:00
Brian Behlendorf
cac68bc478
Merge commit 'refs/top-bases/linux-have-libefi' into linux-have-libefi
2009-03-11 14:09:49 -07:00
Brian Behlendorf
0f0abc8d58
Merge commit 'refs/top-bases/linux-have-libdiskmgt' into linux-have-libdiskmgt
2009-03-11 14:09:36 -07:00
Brian Behlendorf
5afc3db3ce
Merge branch 'linux-arc' into refs/top-bases/linux-zfs-branch
2009-03-11 14:08:57 -07:00
Brian Behlendorf
1ca6578ebc
Merge commit 'refs/top-bases/zfs-branch' into zfs-branch
2009-03-11 14:08:51 -07:00
Brian Behlendorf
e5011401cd
Merge branch 'gcc-no-parenthesis' into refs/top-bases/gcc-branch
2009-03-11 14:08:48 -07:00
Brian Behlendorf
3226eea157
Resolve additional cases where gcc wants extra parenthesis.
...
These were introduced by the rebase to b108.
2009-03-11 13:57:47 -07:00