Subject: Re: Multi-path SCSI
To: Bill Studenmund <wrstuden@netbsd.org>
From: Bill Sommerfeld <sommerfeld@netbsd.org>
List: tech-kern
Date: 09/20/2004 20:35:44
> SCSI has a way to notice this. The INQUIRY command has a facility called=20
> VPD ("Vital Product Details"), which includes a world-unique serial=20
> number. So if we find a SCSI disk, we can ask for this VPD page, and see=20
> if it matches the serial number of a matching drive.
> 
> The question is what do we do if we find a match?

Solaris copes with this by optionally reparenting fiber channel disks
to a "virtual host controller" known as "scsi_vhci"; it also changes
the device names from the merely unwieldy cNtNdN format to one where
the "target" part of the device name is the world-unique value.

IMHO, the former is one reasonable way to avoid having to turn the
device tree into a less-constrained graph; the latter is a pain.

a couple other pieces of mechanism:

  - a subsystem (with both kernel and userland components) which
provides "open by device id", which is used by the volume manager and
by ZFS to cope with disks being moved around from controller to
controller.

 - the "path_to_inst" mechanism which provides a stable minor numbers
in the presence of varying probe orders.

							- Bill