Thinkpad X20 can't boot with GRUB.
GRUB reboots at stage2/bios.c:get_diskinfo().
if add dummy[10] to 'struct drive_parameters', GRUB boots fine.

below is a debug result
-------------------------------------------------------------
PC:thinkpad X20
grub> geometory (hd0)
version:48
0 0 0 0 0 bf 0 0 0 0     <------ bf? garbage?

PC:VAIO726
grub> geometry (hd0)
version:33
0 0 0 0 0 0 0 0 0 0      <------- OK


debug patch
--- grub-0.5.96.1-cvs.orig/stage2/bios.c        Sat Nov 11 00:33:10 2000
+++ grub-0.5.96.1-cvs/stage2/bios.c     Tue Dec 12 23:49:45 2000
@@ -134,6 +134,7 @@
       unsigned long total_sectors = 0;
       
       version = check_int13_extensions (drive);
+      printf("version:%d\n", version);
       if (version)
        {
          struct drive_parameters
@@ -157,10 +158,27 @@
            unsigned char device_path[8];
            unsigned char reserved2;
            unsigned char checksum;
+           unsigned char dummy[10];
          } drp;
          
+         {
+           int i;
+           for (i = 0; i < sizeof(drp.dummy); i++)
+             {
+               drp.dummy[i] = 0;
+             }
+         }
          drp.size = sizeof (drp);
          err = get_diskinfo_int13_extensions (drive, &drp);
+         {
+           int i;
+           for (i = 0; i < sizeof(drp.dummy); i++)
+             {
+               printf("%x ", drp.dummy[i]);
+             }
+         }
+         printf("\n");
+
          if (! err)
            {
              /* Set the LBA flag.  */

_______________________________________________
Bug-grub mailing list
[EMAIL PROTECTED]
http://mail.gnu.org/mailman/listinfo/bug-grub

Reply via email to