Re: gptzfsboot error using HP Smart Array P410i Controller

看板FB_current作者時間14年前 (2011/08/06 04:01), 編輯推噓0(000)
留言0則, 0人參與, 最新討論串5/40 (看更多)
Hello Everyone, Despite the BIOS information about the nonexistent floppy, the zfsboot.c = code=20 will prevent to boot from the first HDD if a floppy is given as a first = available device. The drive 0x0 (floppy) will be probed before the code below and an error = occurs: [=85] gptzfsboot: error 1 lba 32 = =20 gptzfsboot: error 1 lba 1 = =20 [=85] The continue statement will skip the rest of the iteration because =20 if ((i | DRV_HARD) =3D=3D *(uint8_t *)PTOV(ARGS))=20 is true if the drive equals 0x80. As a result we do not call = probe_drive() for this drive. Eliminating if ((i | DRV_HARD) =3D=3D *(uint8_t *)PTOV(ARGS)) =20 continue; would help. Any comments will be appreciated. Best Regards, Christoph i386/zfsboot/zfsboot.c int main(void) { =20 [=85] /* * Probe the rest of the drives that the bios knows about. This * will find any other available pools and it may fill in missing * vdevs for the boot pool. */ for (i =3D 0; i < *(unsigned char *)PTOV(BIOS_NUMDRIVES); i++) { if ((i | DRV_HARD) =3D=3D *(uint8_t *)PTOV(ARGS)) =20 continue; if (!int13probe(i | DRV_HARD)) break; [=85] probe_drive(dsk, NULL); } [=85] On Aug 5, 2011, at 1:47 PM, Christoph Hoffmann wrote: > Hello John, >=20 > No, I and not using clang. >=20 > My problem persists even I apply the patch.=20 >=20 > As a workaround I have to put OS on second LUN presented by the=20 > P410i Controller. >=20 > Regards, >=20 > Christoph >=20 > -- > Christoph Hoffmann >=20 >=20 > On Aug 5, 2011, at 1:37 PM, John Baldwin wrote: >=20 >> On Thursday, August 04, 2011 3:26:49 pm Christoph Hoffmann wrote: >>> Hello Everyone, >>>=20 >>> The system will successfully boot only if the OS installation is = laying on >>> the second drive or higher (0x81 and more). >>=20 >> Are you using clang? If so, you should try either using GCC or using = this=20 >> patch with clang as a workaround from the previous thread on zfsboot = issues: >>=20 >> Index: sys/boot/i386/zfsboot/Makefile >> =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D >> --- sys/boot/i386/zfsboot/Makefile (revision 224653) >> +++ sys/boot/i386/zfsboot/Makefile (working copy) >> @@ -20,7 +20,6 @@ >> -fomit-frame-pointer \ >> -fno-unit-at-a-time \ >> -mno-align-long-strings \ >> - -mrtd \ >> -DBOOT2 \ >> -DSIOPRT=3D${BOOT_COMCONSOLE_PORT} \ >> -DSIOFMT=3D${B2SIOFMT} \ >> Index: sys/boot/i386/gptzfsboot/Makefile >> =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D >> --- sys/boot/i386/gptzfsboot/Makefile (revision 224653) >> +++ sys/boot/i386/gptzfsboot/Makefile (working copy) >> @@ -22,7 +22,6 @@ >> -fomit-frame-pointer \ >> -fno-unit-at-a-time \ >> -mno-align-long-strings \ >> - -mrtd \ >> -DGPT -DBOOT2 \ >> -DSIOPRT=3D${BOOT_COMCONSOLE_PORT} \ >> -DSIOFMT=3D${B2SIOFMT} \ >>=20 >> --=20 >> John Baldwin >> _______________________________________________ >> freebsd-current@freebsd.org mailing list >> http://lists.freebsd.org/mailman/listinfo/freebsd-current >> To unsubscribe, send any mail to = "freebsd-current-unsubscribe@freebsd.org" >=20 > _______________________________________________ > freebsd-current@freebsd.org mailing list > http://lists.freebsd.org/mailman/listinfo/freebsd-current > To unsubscribe, send any mail to = "freebsd-current-unsubscribe@freebsd.org" _______________________________________________ freebsd-current@freebsd.org mailing list http://lists.freebsd.org/mailman/listinfo/freebsd-current To unsubscribe, send any mail to "freebsd-current-unsubscribe@freebsd.org"
文章代碼(AID): #1EF4l-B2 (FB_current)
討論串 (同標題文章)
完整討論串 (本文為第 5 之 40 篇):
文章代碼(AID): #1EF4l-B2 (FB_current)