URL: <http://savannah.gnu.org/bugs/?34539>
Summary: 1.99: grub2 built with gold linker doesn't even start Project: GNU GRUB Submitted by: arekm Submitted on: Thu 13 Oct 2011 08:49:28 AM CEST Category: Compilation Severity: Major Priority: 5 - Normal Item Group: Software Error Status: None Privacy: Public Assigned to: None Originator Name: Originator Email: Open/Closed: Open Discussion Lock: Any Release: Release: other Reproducibility: Every Time Planned Release: None _______________________________________________________ Details: If you build grub2 1.99 (1.97, 1.98 also tested) with gold linker: $ ld --version GNU gold (Linux/GNU Binutils 2.21.53.0.2.20110804) 1.11 instead of old ld.bfd then your grub won't even show its menu when booting. Just black screen. objdump -D -b binary -mi386 -Maddr16,data16 boot.img on boot.img built with gold and ld.bfd shows differencies which are probably cause of the problem: $ diff -u x ~/obj-good.txt --- x 2011-10-13 08:39:21.224700551 +0200 +++ /home/users/arekm/obj-good.txt 2011-10-12 22:30:36.724055586 +0200 @@ -1,5 +1,5 @@ -boot.img: file format binary +/boot/grub/boot.img: file format binary Disassembly of section .data: @@ -20,20 +20,20 @@ 6d: f6 c2 70 test $0x70,%dl 70: 74 02 je 0x74 72: b2 80 mov $0x80,%dl - 74: ea 79 8c 00 00 ljmp $0x0,$0x8c79 + 74: ea 79 7c 00 00 ljmp $0x0,$0x7c79 79: 31 c0 xor %ax,%ax 7b: 8e d8 mov %ax,%ds 7d: 8e d0 mov %ax,%ss 7f: bc 00 20 mov $0x2000,%sp 82: fb sti - 83: a0 64 8c mov 0x8c64,%al + 83: a0 64 7c mov 0x7c64,%al 86: 3c ff cmp $0xff,%al 88: 74 02 je 0x8c 8a: 88 c2 mov %al,%dl 8c: 52 push %dx - 8d: be 80 8d mov $0x8d80,%si + 8d: be 80 7d mov $0x7d80,%si 90: e8 17 01 call 0x1aa - 93: be 05 8c mov $0x8c05,%si + 93: be 05 7c mov $0x7c05,%si 96: b4 41 mov $0x41,%ah 98: bb aa 55 mov $0x55aa,%bx 9b: cd 13 int $0x13 @@ -50,9 +50,9 @@ b2: 88 44 ff mov %al,-0x1(%si) b5: 89 44 02 mov %ax,0x2(%si) b8: c7 04 10 00 movw $0x10,(%si) - bc: 66 8b 1e 5c 8c mov -0x73a4,%ebx + bc: 66 8b 1e 5c 7c mov 0x7c5c,%ebx c1: 66 89 5c 08 mov %ebx,0x8(%si) - c5: 66 8b 1e 60 8c mov -0x73a0,%ebx + c5: 66 8b 1e 60 7c mov 0x7c60,%ebx ca: 66 89 5c 0c mov %ebx,0xc(%si) ce: c7 44 06 00 70 movw $0x7000,0x6(%si) d3: b4 42 mov $0x42,%ah @@ -65,7 +65,7 @@ e2: 73 0d jae 0xf1 e4: f6 c2 80 test $0x80,%dl e7: 0f 84 d8 00 je 0x1c3 - eb: be 8b 8d mov $0x8d8b,%si + eb: be 8b 7d mov $0x7d8b,%si ee: e9 82 00 jmp 0x173 f1: 66 0f b6 c6 movzbl %dh,%eax f5: 88 64 ff mov %ah,-0x1(%si) @@ -80,10 +80,10 @@ 10b: 0f b6 c2 movzbw %dl,%ax 10e: c0 e8 02 shr $0x2,%al 111: 66 89 04 mov %eax,(%si) - 114: 66 a1 60 8c mov 0x8c60,%eax + 114: 66 a1 60 7c mov 0x7c60,%eax 118: 66 09 c0 or %eax,%eax 11b: 75 4e jne 0x16b - 11d: 66 a1 5c 8c mov 0x8c5c,%eax + 11d: 66 a1 5c 7c mov 0x7c5c,%eax 121: 66 31 d2 xor %edx,%edx 124: 66 f7 34 divl (%si) 127: 88 d1 mov %dl,%cl @@ -117,12 +117,12 @@ 163: f3 a5 rep movsw %ds:(%si),%es:(%di) 165: 1f pop %ds 166: 61 popa - 167: ff 26 5a 8c jmp *-0x73a6 - 16b: be 86 8d mov $0x8d86,%si + 167: ff 26 5a 7c jmp *0x7c5a + 16b: be 86 7d mov $0x7d86,%si 16e: eb 03 jmp 0x173 - 170: be 95 8d mov $0x8d95,%si + 170: be 95 7d mov $0x7d95,%si 173: e8 34 00 call 0x1aa - 176: be 9a 8d mov $0x8d9a,%si + 176: be 9a 7d mov $0x7d9a,%si 179: e8 2e 00 call 0x1aa 17c: cd 18 int $0x18 17e: eb fe jmp 0x17e @@ -157,14 +157,14 @@ 1bc: 00 00 add %al,(%bx,%si) 1be: 24 12 and $0x12,%al 1c0: 0f 09 wbinvd - 1c2: 00 be bd 8d add %bh,-0x7243(%bp) + 1c2: 00 be bd 7d add %bh,0x7dbd(%bp) 1c6: 31 c0 xor %ax,%ax 1c8: cd 13 int $0x13 1ca: 46 inc %si 1cb: 8a 0c mov (%si),%cl 1cd: 80 f9 00 cmp $0x0,%cl 1d0: 75 0f jne 0x1e1 - 1d2: be da 8d mov $0x8dda,%si + 1d2: be da 7d mov $0x7dda,%si 1d5: e8 d2 ff call 0x1aa 1d8: eb 9c jmp 0x176 1da: 46 inc %si _______________________________________________________ Reply to this item at: <http://savannah.gnu.org/bugs/?34539> _______________________________________________ Message sent via/by Savannah http://savannah.gnu.org/ _______________________________________________ Bug-grub mailing list Bug-grub@gnu.org https://lists.gnu.org/mailman/listinfo/bug-grub