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

From: Jan Beich <jbeich_at_tormail.org>
Date: Fri, 29 Jun 2012 06:01:48 -0500
Dimitry Andric <dim_at_FreeBSD.org> writes:

> On 2012-06-26 14:50, Andrey V. Elsukov wrote:
>
>> 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.
>> 
>> So, i have created the branch and committed the changes:
>> 	http://svnweb.freebsd.org/base/user/ae/bootcode/
>> The patch is here:
>> 	http://people.freebsd.org/~ae/boot.diff
>
> FWIW, I verified it compiles OK with clang, and especially boot2's size
> isn't increased at all.

Does it boot for you? Same if I build zfs.c with gcc -O0:

  FreeBSD/x86 ZFS enabled bootstrap loader, Revision 1.1
  (foo_at_bar, Tue Jun 26 18:52:52 UTC 2012)
  ZFS: can't find pool by guid
  ZFS: can't find pool by guid

  can't load 'kernel'

>
> It would be nice if you could check it with clang now and again, before
> you finally merge this project into head.
Received on Fri Jun 29 2012 - 11:19:58 UTC

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