Problems installing a CDC WREN V on a SUN.

Christopher Provenzano proven at eng.umd.edu
Sat Jul 14 08:26:17 AEST 1990


If you don't want to read a length article hit n.



I'm not an expert, so anything I say could be completely wrong...

In article <23871 at adm.BRL.MIL> MIKEMAC%UNB.bitnet at ugw.utcs.utoronto.ca (Michael J. MacDonald I.S.P.) writes:
>
>  We are trying to install a CDC WREN V 94181-702 on our SUN4 running
> SUNOS 4.0.3.
>
>  I am trying to figure out the disk geometery to make sure that we do
>  not have overlapping partitions on the disk.
>
>  The spec sheet on the drive states
>   Model       Number of cyls  number of data heads
> 94181-702         1546              15
>
This is correct but the SCSI Wren V has a variable number of sectors
per track so these numbers are basically useless. SCSI and the device
driver in general doesn't care about geometry, it reads/writes/seeks to
a specific sector. As far as they're concerned there is
a disk with X number of sectors out there, and as long as you don't try to
access a sector out of range they don't care. So assume your disk has 1000
sectors, a geometry of 1000 cyls 1 head and 1 sector/track is just as valid
as 10 cyl., 10 heads, and 10 sectors/track.

If the disk had a constant number of sectors per track then we use the
cyl, head, and number of sectors/track info to start partitions on new 
cylinders. (This is a performace issue though not a carved in stone rule.)

> The description of the drive that comes from sun is
>#
># @(#)format.dat 1.15 90/02/02 SMI
>#
># Copyright (c) 1987 by Sun Microsystems, Inc.
> (stuff deleted )
>disk_type = "CDC Wren V 94181-702" \
> 	: ctlr = MD21 : fmt_time = 4 \
> 	: cache = 0x11 : trks_zone = 15 : asect = 2 \
> 	: ncyl = 1543 : acyl = 2 : pcyl = 1545 : nhead = 15 : nsect = 48 \
> 	: rpm = 3592 : bpt = 33408
> (stuff deleted )
>     Question 1: Any guesses as to how many real cylinders are on the disk?
>     or any guesses as to how many real sectors per track on the disk?

(Read above. :-)

What we really want is the number of total sectors available. Unfortunatly
SUNOS took out the their simple format program when they went to 4.0. :-(
which did the following, but other operating systems still have it.
SCSI has a built in format command for disks. By letting SCSI format the 
disk and then interagating the disk we can get the actual number of available
sectors. For the Wren V it's 1173930 sectors.

A quick calculation of SUNs disk paramaters gives us 1112400 sectors,
a difference of 61530 sectors or 30 MB's.

>
>     Question 2: Is there always the same number of sectors per track
>     regardless of the cylinder of the track. Does cyl 0 have the
>     same number of sectors as cyl 1500? I always thought it was constant
>     but I was assured by an EE that there were more sectors on cyl 0 than cyl
>     1500.

I believe the Wren III was the first disk to come out with variable sector
per track numbers, but the Wren V definitely does.
 
>     If I use format to print the partition table I get the following
>
>      sd4:(the ``old'' drive)
>       partition a - starting cyl    0, #blocks  580125 (773/7/25)
>       partition b - starting cyl  773, #blocks  580125 (773/7/25)
>       partition c - starting cyl    0, #blocks 1160250 (1547/0/0)
>       (all others 0).
>     This drive appears to have  sd4a and sd4b overlapped.
>
>           step 1: sd4a ok, sd4b bad filesystem
>                   fsck sd4b
>           step 2: sd4a bad filesystem, sd4b ok
>                   fsck sd4a  (go to step 1)
>
>   Question 3: if partition b starts at cyl 773 is that the very beginning
>               of cyl 773.

Yes.

>               If the 773/7/25 means that the first 7 tracks and 25 sectors
>               are used by partion a. I take it this means part a and part b
>               are overlapped on one another.

Yes.

>
>    Does anyone have a correct format.dat entry for this disk?

There isn't a correct entry. The entry I use, uses all available sectors. 
Others may be more appropriate, but be sure never to make an entry which
assumes more than the total number of available sectors.

disk_type = "CDC Wren V 94181-702" \
 	: ctlr = MD21 : fmt_time = 4 \
 	: cache = 0x11 : trks_zone = 15 : asect = 2 \
 	: ncyl = 716 : acyl = 2 : pcyl = 718 : nhead = 15 : nsect = 109 \
 	: rpm = 3592 : bpt = 33408

This makes for large cylinder groups with few inodes. (Gives me a little
extra room). I haven't had any trouble with this, (Yet) but don't use this
for a news partion.

>    What about an example or two of valid partition tables?

Here's one I used
        partition a - starting cyl      0, # blocks    52320 (32/0/0)
        partition b - starting cyl     32, # blocks    71940 (44/0/0)
        partition c - starting cyl      0, # blocks  1170660 (716/0/0)
        partition d - starting cyl     76, # blocks    26160 (16/0/0)
        partition e - starting cyl     92, # blocks   470880 (288/0/0)
        partition f - starting cyl      0, # blocks        0 (0/0/0)
        partition g - starting cyl    380, # blocks   183120 (112/0/0)
        partition h - starting cyl    492, # blocks   366240 (224/0/0)
But it's dependent on what you want to do with the disk.

>    It states in the ``Systems Administration Procedures'' that I am
>    supposed to leave 4 cyls free for use by the MD21 controller.
>    See page 188. Pcyl entry
>    It says ``Pcyl - must be assigned the number of physical cylinders
>    in the disk type. This number is used to calculate the boundaries
>    of the disk media. This number is usually equal to ncyl plus acyl,
>    but there are some circumstants under which it is not. For instance
>    the Emulex MD21 controller requires four cylinders for internal use,
>    so they must be left off the other assignments. ...''
>

Now we get to the more interesting part of the SUNOS. Whenever the device
driver encounters a bad block during a write, it maps that block to one of
the blocks in the acyl. This way the kernel never needs to know that there
is a bad block (Yeah). The bad point is that if the data save to disk is
frequently accessed, their is a significat performace loss each time the
block is accessed. The disk has to seek to the end of the disk to get the
data and then seek all the way back. (Boooo)

But this is why there is an alternate cylinder count.

>    Where is this taken into account in  the above tables?
>
>     I'm confused.
>        HELP.

(If it isn't confusing then some of us would be out of a job. :-) 
More smile's :-) :-) :-) :-)...
 
>     Mike

Final note: I've tried to cover a lot so I couldn't include more than the
basics. If there are other questions, I'll be happy to answer them offline.
--
  Christopher A. Provenzano		| System Administration is like
uucp: uunet!gyre.cs.umd.edu!proven	| juggling, the more systems you have, 
email: proven at eng.umd.edu 		| the more likely they will be down...
voice:    (301) 454-7705		|



More information about the Comp.unix.wizards mailing list