Re: RFC - new raid superblock layout for md driver
From: Neil Brown <hidden>
Date: 2002-11-20 23:41:49
Also in:
lkml
On Wednesday November 20, sdake@mvista.com wrote:
Neil, I would suggest adding a 64 bit field called "unique_identifier" to the per-device structure. This would allow a RAID volume to be locked to a specific host, allowing the ability for true multihost operation.
You seem to want a uniq id in 'per device' which will identify the 'volume'. That doesn't make sense to me so maybe I am missing something. If you want to identify the 'volume', you put some sort of id in the 'per-volume' data structure. This is what the 'name' field is for.
For FibreChannel, we have a patch which places the host's FC WWN into the superblock structure, and only allows importing an array disk (via ioctl or autostart) if the superblock's WWN matches the target dev_t's host fibrechannel WWN. We also use this for environments where slots are used to house either CPU or disks and lock a RAID array to a specific cpu slot. WWNs are 64 bit, which is why I suggest such a large bitsize for this field. This really helps in hotswap environments where a CPU blade is replaced and should use the same disk, but the disk naming may have changed between reboots. This could be done without this field, but then the RAID arrays could be started unintentionally by the wrong host. Imagine a host starting the wrong RAID array while it has been already started by some other party (forcing a rebuild) ugh!
Put your 64 bit WWN in the 'name' field, and teach user-space to match 'name' to FC adapter. Does that work for you? NeilBrown