Subject: Re: FW: Question/Help?
To: None <port-sparc@netbsd.org>
From: der Mouse <mouse@Rodents.Montreal.QC.CA>
List: port-sparc
Date: 10/07/1998 10:57:46
>> I think I don't quite understand. In what sense does a partition
>> *have* a notion of blks/cyl?
> The partition table is part of the disk label. The disk label also
> has values for sectors per track, tracks per cylinder, and so on
> (i.e. disk drive geometry). If the number of blocks in any partition
> in the label is not a whole number of cylinders, the PROMs (which do
> read the disklabel) become unhappy.
This does not match my experience.
The machine in front of me right now boots from what it knows as sd0.
The machine is a SS1+ ("Sun 4/65", "MB86900/1A or L64801 @ 25 MHz,
WTL3170/2 FPU"). Here's what "disklabel sd0" reports:
# /dev/rsd0c:
type: SCSI
disk: SCSI disk
label: Seagate ST41600N
flags:
bytes/sector: 512
sectors/track: 64
tracks/cylinder: 32
sectors/cylinder: 2048
cylinders: 1308
total sectors: 2678784
rpm: 5400
interleave: 1
trackskew: 0
cylinderskew: 0
headswitch: 0 # milliseconds
track-to-track seek: 0 # milliseconds
drivedata: 0
16 partitions:
# size offset fstype [fsize bsize cpg]
a: 2414592 0 4.2BSD 1024 8192 16 # (Cyl. 0 - 1178)
b: 262254 2414592 swap # (Cyl. 1179 - 1307*)
c: 2676846 0 unknown # (Cyl. 0 - 1307*)
At my other job, the machine on my desk is a SS2 ("SUNW,Sun 4/75",
"CY7C601 @ 40 MHz, TMS390C602A FPU"). It too boots from what it knows
as sd0, and "disklabel sd0" reports
# /dev/rsd0c:
type: SCSI
disk: SCSI disk
label: Seagate ST11200,
flags:
bytes/sector: 512
sectors/track: 64
tracks/cylinder: 32
sectors/cylinder: 2048
cylinders: 1012
total sectors: 2072576
rpm: 0
interleave: 1
trackskew: 0
cylinderskew: 0
headswitch: 0 # milliseconds
track-to-track seek: 0 # milliseconds
drivedata: 0
16 partitions:
# size offset fstype [fsize bsize cpg]
a: 2048 0 4.2BSD 1024 8192 16 # (Cyl. 0 - 0)
c: 2072230 0 unknown # (Cyl. 0 - 1011*)
d: 2070182 2048 4.2BSD 1024 8192 16 # (Cyl. 1 - 1011*)
I own another SS1+, one of my home machines. It too boots from sd0,
and "disklabel sd0" reports
# /dev/rsd0c:
type: SCSI
disk: SCSI disk
label: Seagate ST12400N
flags:
bytes/sector: 512
sectors/track: 64
tracks/cylinder: 32
sectors/cylinder: 2048
cylinders: 2049
total sectors: 4196352
rpm: 7200
interleave: 1
trackskew: 0
cylinderskew: 0
headswitch: 0 # milliseconds
track-to-track seek: 0 # milliseconds
drivedata: 0
16 partitions:
# size offset fstype [fsize bsize cpg]
a: 102400 2048 4.2BSD 1024 8192 16 # (Cyl. 1 - 50)
b: 524288 104448 swap # (Cyl. 51 - 306)
c: 4194685 0 unknown # (Cyl. 0 - 2048*)
d: 358400 628736 4.2BSD 1024 8192 16 # (Cyl. 307 - 481)
e: 3207168 987136 4.2BSD 1024 8192 16 # (Cyl. 482 - 2047)
n: 102400 2048 4.2BSD 1024 8192 16 # (Cyl. 1 - 50)
o: 2048 0 4.2BSD 1024 8192 16 # (Cyl. 0 - 0)
p: 381 4194304 4.2BSD 1024 8192 16 # (Cyl. 2048 - 2048*)
Every one of these boot disks has a c partition that, according to the
label's idea of what a "cylinder" is, is not an exact number of
cylinders. Every one of them has another "mis-sized" partition as
well, though in the last case the "mis-sized" partition is one of the
"extended" partitions, which the PROM knows nothing about. But on the
other two the PROM knows about it, and on the SS2 that partition (d) is
even the boot/root partition!
I'm not about to try to tell you you *didn't* have the trouble you
describe. :-) But I'm quite sure that it is not universal across
SPARCs.
der Mouse
mouse@rodents.montreal.qc.ca
7D C8 61 52 5D E7 2D 39 4E F1 31 3E E8 B3 27 4B