Date: Sun, 03 Feb 2013 19:03:56 +0200 From: "Jukka A. Ukkonen" <jau@oxit.fi> To: freebsd-scsi@FreeBSD.org Cc: Joerg Wunsch <j@uriah.heep.sax.de> Subject: Re: Multiple FreeBSD SCSI Hosts Message-ID: <510E987C.4090509@oxit.fi>
next in thread | raw e-mail | index | archive | help
Hello all, I have been browsing through these old messages about the SCSI RESERVE/RELEASE operations in FreeBSD. What nobody seems to have quite realized at the time is that a multiply attached SCSI device can be used as the trusted 3rd party for a "cluster group" or for anything which should be active only at one node at any particular time. E.g. Solaris cluster groups do exactly that. If one node gets the reservation through, no other node will until the first successful one either releases the device or crashes. The reserved LUN can be either an otherwise unused small storage unit or one that is going to be anyhow mounted and unmounted as the cluster group dictates. The same method would work also for selecting the leader among Shared QFS metadata servers and for other similar purposes. The reservation should definitely not be only bundled inside the mount operations. Instead it should be possible to trigger reserve and release through ioctl() or through a separate system call. This is because sometimes the feature might be used for unmounted raw devices or for devices which could be logically mounted to multiple systems while anyhow busy for all other systems but one. E.g. something in the style of Shared QFS could use a SCSI reservation to its metadata volumes, which need not visible to the users as separate file systems at all. Anyhow I could see seriously more use for this particular SCSI feature than just locking a mounted tape drive were it implemented for other devices than sa only and somehow exported to the user space. Obviously it should be available for root only, though. Cheers, --jau
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?510E987C.4090509>