e770bc6bf5
arrangement that has no intrinsic internal knowledge of whether devices it is given are truly multipath devices. As such, this is a simplistic approach, but still a useful one. The basic approach is to (at present- this will change soon) use camcontrol to find likely identical devices and and label the trailing sector of the first one. This label contains both a full UUID and a name. The name is what is presented in /dev/multipath, but the UUID is used as a true distinguishor at g_taste time, thus making sure we don't have chaos on a shared SAN where everyone names their data multipath as "Fred". The first of N identical devices (and N *may* be 1!) becomes the active path until a BIO request is failed with EIO or ENXIO. When this occurs, the active disk is ripped away and the next in a list is picked to (retry and) continue with. During g_taste events new disks that meet the match criteria for existing multipath geoms get added to the tail end of the list. Thus, this active/passive setup actually does work for devices which go away and come back, as do (now) mpt(4) and isp(4) SAN based disks. There is still a lot to do to improve this- like about 5 of the 12 recommendations I've received about it, but it's been functional enough for a while that it deserves a broader test base. Reviewed by: pjd Sponsored by: IronPort Systems MFC: 2 months
247 lines
2.8 KiB
Plaintext
247 lines
2.8 KiB
Plaintext
# $FreeBSD$
|
|
#
|
|
# Please see the file src/etc/mtree/README before making changes to this file.
|
|
#
|
|
|
|
/set type=dir uname=root gname=wheel mode=0755
|
|
.
|
|
altq
|
|
..
|
|
arpa
|
|
..
|
|
bsm
|
|
..
|
|
bsnmp
|
|
..
|
|
c++
|
|
3.4
|
|
backward
|
|
..
|
|
bits
|
|
..
|
|
debug
|
|
..
|
|
ext
|
|
..
|
|
..
|
|
..
|
|
cam
|
|
scsi
|
|
..
|
|
..
|
|
crypto
|
|
..
|
|
dev
|
|
acpica
|
|
..
|
|
an
|
|
..
|
|
bktr
|
|
..
|
|
firewire
|
|
..
|
|
hwpmc
|
|
..
|
|
ic
|
|
..
|
|
ieee488
|
|
..
|
|
iicbus
|
|
..
|
|
lmc
|
|
..
|
|
ofw
|
|
..
|
|
pbio
|
|
..
|
|
ppbus
|
|
..
|
|
powermac_nvram
|
|
..
|
|
smbus
|
|
..
|
|
speaker
|
|
..
|
|
usb
|
|
..
|
|
utopia
|
|
..
|
|
vkbd
|
|
..
|
|
wi
|
|
..
|
|
..
|
|
fs
|
|
devfs
|
|
..
|
|
fdescfs
|
|
..
|
|
fifofs
|
|
..
|
|
msdosfs
|
|
..
|
|
ntfs
|
|
..
|
|
nullfs
|
|
..
|
|
nwfs
|
|
..
|
|
portalfs
|
|
..
|
|
procfs
|
|
..
|
|
smbfs
|
|
..
|
|
udf
|
|
..
|
|
umapfs
|
|
..
|
|
unionfs
|
|
..
|
|
..
|
|
geom
|
|
cache
|
|
..
|
|
concat
|
|
..
|
|
eli
|
|
..
|
|
gate
|
|
..
|
|
journal
|
|
..
|
|
label
|
|
..
|
|
mirror
|
|
..
|
|
multipath
|
|
..
|
|
nop
|
|
..
|
|
raid3
|
|
..
|
|
shsec
|
|
..
|
|
stripe
|
|
..
|
|
..
|
|
gnu
|
|
posix
|
|
..
|
|
..
|
|
gpib
|
|
..
|
|
gssapi
|
|
..
|
|
isofs
|
|
cd9660
|
|
..
|
|
..
|
|
kadm5
|
|
..
|
|
libmilter
|
|
..
|
|
lwres
|
|
..
|
|
machine
|
|
pc
|
|
..
|
|
..
|
|
net
|
|
..
|
|
net80211
|
|
..
|
|
netatalk
|
|
..
|
|
netatm
|
|
ipatm
|
|
..
|
|
sigpvc
|
|
..
|
|
spans
|
|
..
|
|
uni
|
|
..
|
|
..
|
|
netgraph
|
|
atm
|
|
..
|
|
bluetooth
|
|
include
|
|
..
|
|
..
|
|
netflow
|
|
..
|
|
..
|
|
netinet
|
|
..
|
|
netinet6
|
|
..
|
|
netipsec
|
|
..
|
|
netipx
|
|
..
|
|
netkey
|
|
..
|
|
netnatm
|
|
api
|
|
..
|
|
msg
|
|
..
|
|
saal
|
|
..
|
|
sig
|
|
..
|
|
..
|
|
netncp
|
|
..
|
|
netsmb
|
|
..
|
|
nfs
|
|
..
|
|
nfsclient
|
|
..
|
|
nfsserver
|
|
..
|
|
objc
|
|
..
|
|
openssl
|
|
..
|
|
pccard
|
|
..
|
|
posix4
|
|
..
|
|
protocols
|
|
..
|
|
readline
|
|
..
|
|
rpc
|
|
..
|
|
rpcsvc
|
|
..
|
|
security
|
|
audit
|
|
..
|
|
mac_biba
|
|
..
|
|
mac_bsdextended
|
|
..
|
|
mac_lomac
|
|
..
|
|
mac_mls
|
|
..
|
|
mac_partition
|
|
..
|
|
..
|
|
sys
|
|
..
|
|
ufs
|
|
ffs
|
|
..
|
|
ufs
|
|
..
|
|
..
|
|
vm
|
|
..
|
|
..
|