Date: Sat, 6 Jun 2009 21:51:58 +0400 From: Yuri Pankov <yuri.pankov@gmail.com> To: freebsd-current@freebsd.org Subject: Re: loader panics with 2 GPT partitioned drives Message-ID: <20090606175158.GA1080@darklight.homeunix.org> In-Reply-To: <20090606021835.GC1077@darklight.homeunix.org> References: <20090606021835.GC1077@darklight.homeunix.org>
next in thread | previous in thread | raw e-mail | index | archive | help
--2fHTh5uZTiUOsy+g Content-Type: text/plain; charset=us-ascii Content-Disposition: inline On Sat, Jun 06, 2009 at 06:18:35AM +0400, Yuri Pankov wrote: > Hi, > > I'm getting the following "panic" from loader when trying to attach > another GPT partitioned drive. loader is built using LOADER_ZFS_SUPPORT. > > BTX Loader 1.00 BTX version is 1.02 > Consoles: internal video/keyboard > BIOS drive C: is disk0 > BIOS drive D: is disk1 > > panic:free: guard1 fail @ 0x7fd4b3f4 from > /usr/src/sys/boot/i386/libi386/biosdisk.c:1048 > > > ad4: > => 34 488397101 ad4 GPT (233G) > 34 128 1 freebsd-boot (64K) > 162 16777216 2 freebsd-swap (8.0G) > 16777378 471619757 3 freebsd-zfs (225G) > > ad10: > empty disk, `gpart create -s GPT ad10` > > > > Yuri Looks like there are no checks in loader with GPT support if there are no partitions defined (very rare case, but still.. :-). Attached patch fixes booting with GPT disk without partitions (for me). Yuri --2fHTh5uZTiUOsy+g Content-Type: text/plain; charset=us-ascii Content-Disposition: attachment; filename="biosdisk.c.diff" Index: biosdisk.c =================================================================== --- biosdisk.c (revision 193589) +++ biosdisk.c (working copy) @@ -990,7 +990,8 @@ out: if (error) { - free(od->od_partitions); + if (od->od_nparts > 0) + free(od->od_partitions); od->od_flags &= ~BD_GPTOK; } return (error); @@ -1044,7 +1045,7 @@ delay(3000000); #endif #ifdef LOADER_GPT_SUPPORT - if (od->od_flags & BD_GPTOK) + if (od->od_flags & BD_GPTOK && od->od_nparts > 0) free(od->od_partitions); #endif free(od); --2fHTh5uZTiUOsy+g--
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20090606175158.GA1080>