From: CRDGW2::CRDGW2::MRGATE::"SMTP::CRVAX.SRI.COM::RELAY-INFO-VAX" 11-DEC-1989 15:52 To: MRGATE::"ARISIA::EVERHART" Subj: Re: SPAWNing disk mounts in SYSTARTUP !!! BINGO !!! Received: From UCBVAX.BERKELEY.EDU by GIZMO.SRI.COM with TCP; Mon, 11 DEC 89 10:27:19 PDT Received: by ucbvax.Berkeley.EDU (5.61/1.40) id AA08836; Mon, 11 Dec 89 10:11:14 -0800 Received: from USENET by ucbvax.Berkeley.EDU with netnews for info-vax@kl.sri.com (info-vax@kl.sri.com) (contact usenet@ucbvax.Berkeley.EDU if you have questions) Date: 11 Dec 89 16:19:33 GMT From: cs.utexas.edu!jarvis.csri.toronto.edu!utgpu!watserv1!watmath!ria!uwovax!brent@tut.cis.ohio-state.edu (Brent Sterner) Organization: CCS, U. of Western Ontario Subject: Re: SPAWNing disk mounts in SYSTARTUP !!! BINGO !!! Message-Id: <4505.25838d45@uwovax.uwo.ca> References: <4487.257fc254@uwovax.uwo.ca> Sender: info-vax-request@kl.sri.com To: info-vax@kl.sri.com In article <4487.257fc254@uwovax.uwo.ca>, brent@uwovax.uwo.ca (Brent Sterner) writes: > Our site has a 6330, soon to be a 6430. At boot time after an unscheduled > system outage, our 7 non-system disks are mounted sequentially, and of course > each volume is rebuilt. (I'm aware that we could bypass this and rebuild > later, but for various reasons we have elected not to do so.) > > < incredibly good description (if I do say so myself :-)of details deleted > 1st, thanks to everyone who replied (there were a bunch, and most of you got a form letter reply). I did receive what appears to be a solution from Dave Jones at Ohio State University. The reply is brief enough, and IMHO potentially useful enough that it deserves publicity. Our site has *not* yet tried this method, but from Dave's description, it seems like it should work. Special thanks to you, Dave. ============ PARALLEL DISK MOUNTING TECHNIQUE FOLLOWS ============ Date: Sat, 9 Dec 89 03:13 EDT From: Dave Jones Subject: Re: SPAWNING disk mounts in SYSTARTUP ? To: brent@uwovax.uwo.ca I rigged my site's startup to do spawned mounts by taking advantage of the new SYSMAN startup features. I added several spawned startup files to the BASEENVIRON phase, which is the phase executed just before the phase that invokes SYSTARTUP_V5.COM. I let SYSMAN worry about stalling until all the spawned processes complete. Even on a uniprocessor 8550, concurrent rebuilds of 5 disks goes about as fast as a single disk rebuild (overlapped I/O). The SYSMAN startup files reside in SYS$MANAGER and have names of the form "MOUNT_disk-label.COM". Each one of these files is identical and contains a single line to invoke a common mount procedure, MOUNT_DISK.COM: $ @SYS$MANAGER:MOUNT_DISK 'F$ENVIRONMENT("PROCEDURE")' 'P1' The common procedure, included at the end of this file, parses the file specification it gets as P1 to get the disk name and label to mount. SYSMAN lets you pass in additional parameters to the startup file, which I do in order to handle the a disk we mount /NOWRITE. The MOUNT_DISK procedure does a special test and issues a MOUNT/REBUILD if executing on the 8550 and a MOUNT/NOREBUILD if executing from a sattelite node in the cluster. As a failsafe, I also have SYSTARTUP_V5 check if the disks are mounted and issue a mount command if not. David L. Jones | Phone: (614) 292-6929 Ohio State Unviversity | Internet: 1971 Neil Ave. Rm. 406 | jonesd@kcgl1.eng.ohio-state.edu Columbus, OH 43210 | jones-d@eng.ohio-state.edu ------------------------------------------------------------------------------ MOUNT_DISK.COM $! Generic routine for mounting disks. SYSMAN startup file invokes file $! whose name indicates the device and label to mount. Format: $! $! MOUNT_device-label.COM $! $! That file merely invokes this file with the procedure name and the first $! parameter. Parse the filename to determin the device and label. $! $ FNAME = F$PARSE(P1,,,"NAME","SYNTAX_ONLY") $ IF F$EXTRACT(0,6,FNAME) .NES. "MOUNT_" THEN EXIT 20 ! invalid $ FNAME = F$EXTRACT(6,64,FNAME) $ DEVICE = F$ELEMENT(0,"-",FNAME) $ LABEL = F$EXTRACT(F$LEN(DEVICE)+1,32,FNAME) $! $ IF F$TRNLNM("SYS$TOPSYS") .NES. "SYS0" THEN MOUNT = "MOUNT/NOREBUILD" $ IF .NOT.F$GETDVI(DEVICE,"MNT") THEN MOUNT/NOASSIST/SYS 'DEVICE' 'LABEL' 'P2' $EXIT ============ PARALLEL DISK MOUNTING TECHNIQUE PRECEEDS ============ -- Brent Sterner Technical Support Manager, Academic Systems Network <129.100.2.13> Telephone (519)661-2151 x6036 Last Gasp Computing & Communications Services, Natural Sciences Building The University of Western Ontario, London, Ontario, Canada N6A 5B7