Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 28 May 2009 01:31:32 +0300
From:      Artis Caune <artis.caune@gmail.com>
To:        Lorenzo Perone <lopez.on.the.lists@yellowspace.net>
Cc:        hartzell@alerce.com, Philipp Wuensche <cryx-freebsd@h3q.com>, FreeBSD Stable Mailing List <freebsd-stable@freebsd.org>, Kip Macy <kmacy@freebsd.org>
Subject:   Re: loader not working with GPT and LOADER_ZFS_SUPPORT
Message-ID:  <9e20d71e0905271531v240a56cwf7c39d6083331550@mail.gmail.com>
In-Reply-To: <7BDF3D7A-4EA2-499A-9481-A88F3CA285BC@yellowspace.net>
References:  <4A1BED8C.1070408@h3q.com> <9e20d71e0905260854t1c731f68g3965c3406dc304c5@mail.gmail.com> <18972.5227.526290.349958@already.dhcp.gene.com> <6ADD3B12-380C-4BFD-AA46-778DF1768453@verweg.com> <9e20d71e0905270548j376fe604uffff66988e9b7ebe@mail.gmail.com> <7BDF3D7A-4EA2-499A-9481-A88F3CA285BC@yellowspace.net>

next in thread | previous in thread | raw e-mail | index | archive | help
2009/5/28 Lorenzo Perone <lopez.on.the.lists@yellowspace.net>:
> Hi, I'm a bit confused:
>
> I can't find this change (rev 185095) in the stable log, yet stable has some
> other
> recent changes related to the current posts (in turn commited also to
> head)...
>
> http://svn.freebsd.org/viewvc/base/head/sys/boot/i386/libi386/biosdisk.c?view=log
> http://svn.freebsd.org/viewvc/base/stable/7/sys/boot/i386/libi386/biosdisk.c?view=log
>
> maybe I'm misunderstanding how things eventually get ingto -stable,
> however, which revision to use now for a peaceful world & boot? :)
>
> I'll go for the -head version for my next try..


It's not merged to stable yet. You should apply r185095 diff by hand.
Just edit "sys/boot/i386/libi386/biosdisk.c" and change:


--- sys/boot/i386/libi386/biosdisk.c	(revision 192872)
+++ sys/boot/i386/libi386/biosdisk.c	(working copy)
@@ -996,8 +996,10 @@
     od->od_boff = gp->gp_start;

 out:
-    if (error)
+    if (error) {
 	free(od->od_partitions);
+	od->od_flags &= ~BD_GPTOK;
+    }
     return (error);
 }

@@ -1088,7 +1090,7 @@

     switch(rw){
     case F_READ:
-	DEBUG("read %d from %d to %p", blks, dblk, buf);
+	DEBUG("read %d from %lld to %p", blks, dblk, buf);

 	if (blks && bd_read(od, dblk, blks, buf)) {
 	    DEBUG("read error");




-- 
Artis Caune

    Everything should be made as simple as possible, but not simpler.



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