Subject: Re: dev_t changes & partitions
To: Bill Studenmund <firstname.lastname@example.org>
From: Todd Vierling <tv@NetBSD.ORG>
Date: 01/13/1998 22:06:00
On Tue, 13 Jan 1998, Bill Studenmund wrote:
: > Well, I've already determined (at least for me) that it's so hairy to allow
: > a system to boot on old /dev nodes. I'd love to be proven wrong, but after
: > two days of looking at the screen and oodles of printed kernel source, I
: > have decided that it is much easier for kernel hackers and end users to
: > upgrade /dev just before rebooting into a new kernel.
And I think I was wrong. I misunderstood Charles (mycroft)'s explanation of
specinfo and I'm now compiling a kernel with 16 and 32 bit device
preliminary support (16 bit number == 32 bit number). I'll post the results
and diffs tomorrow. Knock on wood!
: Hmm. Well, I'd still vote we change the minor split when we change
: dev_t's. That way we rebuild devices only once. :-)
Okay, I'll do this... does 16/4/4 (or 16/8) sound reasonable? The
conversion 16bit->32bit, of course, would assume slice `0' for our purposes.
: > This format provides for 4096 units per device. (Sound decent enough...?)
: > As long as we stick with the sequential-numbering device format, it is a
: > good match.
: Hmmm. I guess 8 bits would be fine per drive.
: Though who, other than MBR drives, will use slices? I thought other
: disklabels will just have oodles of partitions.
Amiga (inside RDB structure). SPARC (SunOS label not big enough?). Others?
On Tue, 13 Jan 1998, Chris G. Demetriou wrote:
: Yes. I think it's reasonable to do this the way BSDI did, i.e. use a
: dv_unit and dv_subunit.
Why, really? I can see different numbers of bits needed for different
things in various devices in the future (perhaps 16/4/4 here, but maybe
8/12/4 elsewhere?), and I'd think that just a binary encoded number is
adequate to hold everything. The only reason I'd see need for three pieces
is if we actually had two layers of abstraction in the devsw--that is, each
entry is a pointer to a table of devsw entry _arrays_. Otherwise, we only
need one value for minor and splitting it could make it numerically
===== Todd Vierling (Personal email@example.com) =====
== "There's a myth that there is a scarcity of justice to go around, so
== that if we extend justice to 'those people,' it will somehow erode the
== quality of justice everyone else receives." -- Maria Price