Subject: Re: possible install problems in current sources?
To: None <tech-install@netbsd.org>
From: None <arnej@math.ntnu.no>
List: tech-install
Date: 05/13/1999 05:33:57
> I *like* editing in megabytes.  Megabytes are meaningful units; cylinders
> are not.  If it is going to round to cylinders, it ought to at least give
> some kind of hint that it has done so, and it should certainly not allow one
> to end one partition at "127 MB" and begin the next at "128 MB" but then
> later claim they overlap!

I think it would be a good start to make the "fdisk" and "disklabel"
functionality menus more consistent.  Currently, the DOS partition table
menu says "start 200 + size 100 = end 300" while the BSD-disklabel menu
says "size 100 + offset 200 = end 299".  I'd say the last one of these is
just plain wrong, even if it doesn't actually say "+" anywhere.

But: with the current way of doing partitioning, sometimes you just
*can't* win, because when the rounding unit (cylinder size) is smaller
than 1MB, two different cylinder counts will round to the same number
of MB.  That means you will either have to risk making overlapping
partitions, or put enough space between the end of one and the start
of the next that you're sure it will be OK, or just do everything in
cylinders (preferrably with a check of "sectors" when you're done just
to make sure!)

There's just no good way of fixing this in the current framework, I've
been studying the code and thinking of strategies but I'm stumped.
There are two kludge solutions I can think of:
 a) keep a list with the start and end points of all partition, and
    "clamp" any new start or end point to a neighbor if it's close
    enough.
 b) find a multiple of cylinders that's greater than 1MB and use that
    as the "rounding" size.

Regards,
  -  Arne H. J.