freebsd-dev/sys
Alan Somers 62ac7dd2bf During vdev_geom_open, require that the vdev guids match the device's label
except during split, add, or create operations. This fixes a bug where the
wrong disk could be returned, and higher layers of ZFS would immediately
eject it again.

sys/cddl/contrib/opensolaris/uts/common/fs/zfs/vdev_geom.c:
	o When opening by GUID, require both the pool and vdev GUIDs to
	  match.  While it is highly unlikely for two vdevs to have the same
	  vdev GUIDs, the ZFS storage pool allocator only guarantees they
	  are unique within a pool.

	o Modify the open behavior to:
	  - If we are opening a vdev that hasn't previously been opened,
	    open by path without checking GUIDs.
	  - Otherwise, open by path and verify GUIDs.
	  - If that fails, search all geom providers for a device with
	    matching GUIDs.
	  - If that fails, return ENOENT.

Submitted by:	gibbs, asomers
Reviewed by:	smh
MFC after:	4 weeks
Sponsored by:	Spectra Logic Corp
Differential Revision:	https://reviews.freebsd.org/D4486
2015-12-10 21:46:21 +00:00
..
amd64 Merge common parts of i386 and amd64 md_var.h and smp.h into 2015-12-07 17:41:20 +00:00
arm Add helper functions proc_readmem() and proc_writemem(). 2015-12-07 21:33:15 +00:00
arm64 Add support for the GICv2M extension to the GICv2 interrupt controller. 2015-12-10 16:40:38 +00:00
boot Make detection of GPT a bit more reliable. 2015-12-10 10:35:07 +00:00
bsm
cam The ccb_xflags enumeration was removed from FreeBSD/head in 2015-12-07 21:04:27 +00:00
cddl During vdev_geom_open, require that the vdev guids match the device's label 2015-12-10 21:46:21 +00:00
compat Add some structures and defines which will be used when decoding small 2015-12-03 12:51:54 +00:00
conf Merge helper fib* functions used for basic lookups. 2015-12-08 10:50:03 +00:00
contrib Add initial ar9300 HAL support for the spectral scan mode. 2015-12-02 05:36:45 +00:00
crypto
ddb Add helper to catch single step debug event and distinguish it from bkpt 2015-11-27 19:03:59 +00:00
dev All 2-endpoints configs have high and normal pariority queues. 2015-12-10 07:45:58 +00:00
fs The cdevpriv_dtr_t typedef was not able to be used in a function prototype 2015-12-02 18:27:30 +00:00
gdb
geom Make detection of GPT a bit more reliable. 2015-12-10 10:35:07 +00:00
gnu
i386 Merge common parts of i386 and amd64 md_var.h and smp.h into 2015-12-07 17:41:20 +00:00
isa
kern Don't use 0 for pointer comparison 2015-12-08 18:38:33 +00:00
kgssapi
libkern libkern: ffs, fls: s/4/3/ the 3rd BSD clause 2015-10-22 21:04:47 +00:00
mips Add helper functions proc_readmem() and proc_writemem(). 2015-12-07 21:33:15 +00:00
modules ahci_generic.c needs ofw_bus_if.h, add it to the module. 2015-12-08 20:05:27 +00:00
net Merge helper fib* functions used for basic lookups. 2015-12-08 10:50:03 +00:00
net80211 [net80211] decode WPA cipher config '0' as "clear cipher config". 2015-11-26 01:54:58 +00:00
netgraph Move iflladdr_event eventhandler invocation to if_setlladdr. 2015-11-14 13:34:03 +00:00
netinet Retire sctp_validate_no_locks(). 2015-12-10 11:49:32 +00:00
netinet6 Use correct lookup key for gif route lookups. 2015-12-09 22:09:33 +00:00
netipsec Overhaul if_enc(4) and make it loadable in run-time. 2015-11-25 07:31:59 +00:00
netnatm
netpfil Merge helper fib* functions used for basic lookups. 2015-12-08 10:50:03 +00:00
netsmb The problem report was for a crash that happened when smbfs was 2015-11-18 23:04:01 +00:00
nfs Add kernel support to the NFS server for the "-manage-gids" 2015-11-30 21:54:27 +00:00
nfsclient
nfsserver
nlm
ofed Fix i386 build WITH_OFED=YES. Remove some redundant KASSERTs. 2015-12-04 18:20:55 +00:00
opencrypto Remove unneeded includes of opt_kdtrace.h. 2015-11-22 02:01:01 +00:00
pc98 Add asynchronous command support to the pass(4) driver, and the new 2015-12-03 20:54:55 +00:00
powerpc Bump MAXCPU. We already run on hardware with 32 threads and the same hardware 2015-12-03 16:24:55 +00:00
rpc Improve locking of sg_threadcount. 2015-11-19 08:04:05 +00:00
security
sparc64 Remove sv_prepsyscall, sv_sigsize and sv_sigtbl members of the struct 2015-11-28 08:49:07 +00:00
sys Add helper functions proc_readmem() and proc_writemem(). 2015-12-07 21:33:15 +00:00
teken
tests Style 9 changes. 2015-11-12 10:31:14 +00:00
tools Rename the /usr/share/doc/legal files to driver.LICENSE to work around 2015-10-16 00:38:05 +00:00
ufs Update ctime when atime or birthtime are updated. 2015-12-07 12:09:04 +00:00
vm vm_fault_hold: handle vm_page_rename failure 2015-12-06 17:46:12 +00:00
x86 Merge common parts of i386 and amd64 md_var.h and smp.h into 2015-12-07 17:41:20 +00:00
xdr
xen xen/intr: fix the event channel enabled per-cpu mask 2015-11-05 14:33:46 +00:00
Makefile