Due to bug-hiding circumstances, this problem was only identified during FOSDEM Sunday afternoon. The first stage boot loader would overwrite itself trying to load the second stage boot loader, due to them sharing the same 16-bit (64 KiB) segment after the workaround for the Parallels bug. installboot(8/i386) would pass the sectors covered by filesystem blocks, which amounts up to multiples of 8 or 16 KiB, even though the last block was not entirely filled. Fix is to do bounds checking in the assembly code at boot time.
fixes dist set is available for people doing a network
installation anyway, or to extract later with
$ cd /
$ sudo tar xzphvvf /path/to/fixes10.ngz
If you do a CD installation, you have to do the following steps:
Location of sets? (cd disk ftp http shttp nfs or 'done') [done] shttp HTTP/FTP proxy URL? (e.g. 'http://proxy:8080', or 'none') [none] «Enter» Server? (IP address, hostname or 'done') www.mirbsd.org Server directory? [v10/i386] MirOS/current/older/i386 … Set name? (or 'done') […] * [X] bsd [X] fixes10.ngz Set name? (or 'done') […] done Ready to install sets? [yes] «Enter»
This sequence will add the fixes set from network after finishing a disc installation, before the installboot(8/i386) part is run. Of course, you can substitute shttp with http too or specify a proxy to use.
If you have already installed, follow the above mentioned tar
command to unpack the fixes set (in /mnt if
you are still in the installer), then use the command:
$ sudo /usr/mdec/installboot -v /boot /usr/mdec/bootxx wd0
# /mnt/usr/mdec/installboot -v /mnt/boot /mnt/usr/mdec/bootxx sd0
(wd0 or sd0 depending on which is your root disc; the second line is for within the installer)
My (tg@) sincerest apologies for this bug, which was introduced during the Parallels Desktop BIOS bug workaround’s creation. Remember, if you already have an (unbootable) installation, you can do all this by booting from the CD again (into the installer/rescue kernel).
Update 11.04: changed link to fixes10.ngz to new location, now that a new snapshot is up.