On 01.07.2011 08:57, Rock Cui wrote: > Sorry,I am careless, my log file is not empty, please refer to the > attachment. > I would also need another memory location for full diagnostics: sudo dd if=/dev/mem of=tables bs=1 count=65536 skip=2146422784 Looking at the code, the only way it can hang AFAICT should be fixed by attached patch (mostly guessing) > >> 1. I have tried the "--with-platform=multiboot" option, but when >> booting it show me: >> /*********************/ >> Welcome to GRUB! >> out of memory >> Aborted. >> /*********************/ >> 2. The /dev/mem you need , how can I get it? I want it should be from >> the "/" , then I must enter the ubuntu. >> So I use the grub1.98 as coreboot payload and boot my ubuntu11.04. >> But when I copy the /dev/mem to a log file with "sudo", >> I was told “You can not do it!” : ( >> >> >>> On 30.06.2011 04:38, Cui Lei wrote: >>>> I have found the the last version which can boot my machine, it is >>>> the r2348. The r2349 can not boot it. >>>> So I checked out the changelog from 2348 to 2349 : >>>> >>> Ironically I did it because i386-coreboot didn't work in my tests. >>> Could >>> you send me the first 128K of /dev/mem ? Meanwhile you can try >>> i386-multiboot port. >>> >>> _______________________________________________ >>> Grub-devel mailing list >>> Grub-devel@gnu.org >>> https://lists.gnu.org/mailman/listinfo/grub-devel >> >> >> _______________________________________________ >> Grub-devel mailing list >> Grub-devel@gnu.org >> https://lists.gnu.org/mailman/listinfo/grub-devel >> > > > _______________________________________________ > Grub-devel mailing list > Grub-devel@gnu.org > https://lists.gnu.org/mailman/listinfo/grub-devel
-- Regards Vladimir 'φ-coder/phcoder' Serbinenko
=== modified file 'grub-core/kern/i386/coreboot/mmap.c' --- grub-core/kern/i386/coreboot/mmap.c 2010-09-04 15:10:10 +0000 +++ grub-core/kern/i386/coreboot/mmap.c 2011-07-02 21:03:42 +0000 @@ -27,6 +27,7 @@ { grub_linuxbios_table_header_t table_header; grub_linuxbios_table_item_t table_item; + int linked = 0; auto int check_signature (grub_linuxbios_table_header_t); int check_signature (grub_linuxbios_table_header_t tbl_header) @@ -59,12 +60,13 @@ for (; table_item->size; table_item = (grub_linuxbios_table_item_t) ((long) table_item + (long) table_item->size)) { - if (table_item->tag == GRUB_LINUXBIOS_MEMBER_LINK + if (!linked && table_item->tag == GRUB_LINUXBIOS_MEMBER_LINK && check_signature ((grub_linuxbios_table_header_t) (grub_addr_t) *(grub_uint64_t *) (table_item + 1))) { table_header = (grub_linuxbios_table_header_t) (grub_addr_t) *(grub_uint64_t *) (table_item + 1); + linked = 1; goto signature_found; } if (hook (table_item))
signature.asc
Description: OpenPGP digital signature
_______________________________________________ Grub-devel mailing list Grub-devel@gnu.org https://lists.gnu.org/mailman/listinfo/grub-devel