Date: Tue, 16 Aug 2011 09:48:07 -0400 From: John Baldwin <jhb@freebsd.org> To: Christoph Hoffmann <christoph_hoffmann@me.com> Cc: freebsd-current@freebsd.org Subject: Re: gptzfsboot error using HP Smart Array P410i Controller Message-ID: <201108160948.07719.jhb@freebsd.org> In-Reply-To: <7BD5F062-A7B0-4D05-989F-F23C9353E7D8@me.com> References: <E040B3A9-9B62-4545-ADC9-5CE3A9217024@me.com> <201108151212.07874.jhb@freebsd.org> <7BD5F062-A7B0-4D05-989F-F23C9353E7D8@me.com>
next in thread | previous in thread | raw e-mail | index | archive | help
On Tuesday, August 16, 2011 9:14:08 am Christoph Hoffmann wrote: > Hello John, > > Thank you very much indeed for your reply. > > The pmbr.s passes the ARGS set to 0x900 to main() in zfsboot.c and > *(uint8_t *)PTOV(ARGS)) is 0x80. > > In zfsboot.c main(), before the line > bootinfo.bi_version = BOOTINFO_VERSION; > gets executed we still keep the right value of the dsk->drive and just after > the execution, the dsk->drive is equal to zero. > > Adding > printf("hello\n"); > before > dsk = malloc(sizeof(struct dsk)); > keeps the dsk->drive value assigned to 0x80 and the box will boot. > > Any comments will be appreciated. That is odd indeed. Can you print out a few things: 1) if high_heap_size is > 0 2) the value of 'dsk' and '&bootinfo' (try this both with a printf before the first call to malloc() and without). -- John Baldwin
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201108160948.07719.jhb>