Re: [CFC/CFT] large changes in the loader(8) code

From: Pawel Jakub Dawidek <pjd_at_FreeBSD.org>
Date: Tue, 26 Jun 2012 16:02:00 +0200
On Tue, Jun 26, 2012 at 06:01:26PM +0400, Andrey V. Elsukov wrote:
> On 26.06.2012 16:57, Pawel Jakub Dawidek wrote:
> > On Tue, Jun 26, 2012 at 04:50:36PM +0400, Andrey V. Elsukov wrote:
> >> Hi All,
> >>
> >> Some time ago i have started reading the code in the sys/boot.
> >> Especially i'm interested in the partition tables handling.
> >> I found several problems:
> >> 1. There are several copies of the same code in the libi386/biosdisk.c
> >> and common/disk.c, and partially libpc98/biosdisk.c.
> >> 2. ZFS probing is very slow, because the ZFS code doesn't know how many
> >> disks and partitions the system has:
> >> 	http://www.freebsd.org/cgi/query-pr.cgi?pr=148296
> >> 	http://www.freebsd.org/cgi/query-pr.cgi?pr=161897
> >> 3. The GPT support doesn't check CRC and even doesn't know anything
> >> about the secondary GPT header/table.
> > 
> > Just a quick note here. At some point when I was adding GPT attributes
> > to allow for test starts I greatly improved, at least parts of, the GPT
> > implementation. I did implement support for both CRC checksum
> > verification and fallback to backup GPT header when primary is broken.
> > And the code is still in sys/boot/common/gpt.c. So my question would be
> > what do you mean by this sentence?
> 
> Yes, gptboot does that, but the loader/zfsloader doesn't. So there might
> be a situation when gptboot does boot, but loader(8) can't.

I see. I don't know if I'll find time for a proper review, but it is
really great that you are working on cleaning up this huge mess.

-- 
Pawel Jakub Dawidek                       http://www.wheelsystems.com
FreeBSD committer                         http://www.FreeBSD.org
Am I Evil? Yes, I Am!                     http://tupytaj.pl

Received on Tue Jun 26 2012 - 12:04:05 UTC

This archive was generated by hypermail 2.4.0 : Wed May 19 2021 - 11:40:28 UTC