Skip site navigation (1)Skip section navigation (2)
Date:      Sun, 2 Jul 1995 17:09:37 +1000
From:      Bruce Evans <bde@zeta.org.au>
To:        freebsd-hackers@freebsd.org, paul@freebsd.org
Subject:   Re: Announcing 2.0.5-950622-SNAP
Message-ID:  <199507020709.RAA03775@godzilla.zeta.org.au>

next in thread | raw e-mail | index | archive | help
>> > > I'm curious why dual boot is a "no and possibly never"? 
>> 
>> > Just the amount of work involved is all.  You can't have 2 FreeBSD
>> > slices on a disk and boot from the second one as the boot code is too
>> > stupid to understand that you might want to boot from something other
>> > than the first one it finds.
>> 
>> Except for the space constraints, it should be possible to extent the
>> boot syntax from:
>> 
>> 	driver(unit,part)/filename
>> 
>> to
>> 
>> 	driver(unit,[slice,]part)/filename

There is also some work to do in sysinstall: setting up different fstabs
for different root partitions and perhaps managing N root partitions at
once.

>I don't understand the problem? You just boot the partition that has the
>active flag set. Our boot process doesn't do this properly but it's

That would always boot my DOS partition.  Some OS's will only boot from
partitions with the active flag set, so some boot selectors rewrite the
MBR to change the active flag, but I don't/won't use such an OS or boot
selector.  Anyway, the boot selector belongs in the FreeBSD bootstrap.
We already have this for the first FreeBSD slice on all drives.  All that
is missing is selection of the slice (including non-FreeBSD ones) and
changing of the default selection.

>not conceptually difficult. Last time I looked it wasn't the bootblocks
>that were the problem but the disk drivers, since they built fake
>disklabels by searching for the first FreeBSD partition. I haven't looked
>at that area of the code since diskslices came online so I'm not
>sure what happens now.

- Old drivers search for the first FreeBSD slice but don't build fake
  disk labels (the label is irrelevant).
- Old bootblocks search for the first FreeBSD slice but don't tell the
  kernel which slice was booted from.
- Current drivers search for all FreeBSD slices.
- Current bootblocks search for the first FreeBSD slice and pass it to
  the kernel where it is ignored.  It is known to be the first FreeBSD
  slice and using the compatibility slice instead is better for
  compatibility with old fstabs.

Bruce



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?199507020709.RAA03775>