Bug ID 6843138: can not boot off of a 2.2TB and zfs root

Bij het upgraden van OpenSolaris naar build 125 werd mijn aandacht getrokken door meldingen die ik kon negeren zo bleek later. Maar mijn aandacht werd getrokken door bug ID 6843138 en met de komst van 2.5TB disken wordt deze bug werkelijkheid als GRUB wordt gebruikt.

Installed snv_144 on an about 2.2 TB disk, using zfs for root.
First reboot after install, I can boot from the disk. However
issuing a reboot while booted from the hard disk, I get the grub prompt.
doing a findroot (pool_rpool,0,a) results in

zio_read_data failed
Error 15: File not found.

I saw the problem originally with opensol 0906 111b.

One problem here is that grub has total_sectors as unsigned long instead
of unsigned long long. So if a file we need for booting falls after
the chopped off total sectors (ulong) we won’t even attempt to read
the file in rawread().
Even when I modify total_sectors to be unsigned long long and
not to chop it in get_diskinfo() I can not fully boot. Problem is
that bios is not reporting correct capacity. Based on int 13 fn 48
data, it is reporting 0x199fb000 instead of 0x1199fb000.

Removing some checks, I can boot. details in a bit.

De vraag is natuurlijk of je nu een bootdisk van 2.5TB wilt hebben, maar denkende aan een opmerking over 640kB ken ik het antwoord wel.

Published by

Hans Spaans

Unix & security consultant with a passion for Linux, Solaris, PostgreSQL, Perl and network services, but also a strong believer in open and free source, standards and content.