From ce4c60d38d85758c1fa91a9a6830dd063dd0a3c6 Mon Sep 17 00:00:00 2001 From: Peter Wemm Date: Thu, 1 Nov 2001 06:19:32 +0000 Subject: Fix the ILLEGAL fdisk table that is there for supporting "dangerously dedicated" mode. This was specifying that there are 256 (illegal!) heads on the disk. If bioses store that in a byte, and it gets truncated to 0, then that almost certainly causes the infamous divide-by-zero nightmare. This is also most likely the reason why the Thinkpad T20/A20 series were locking up when FreeBSD was installed. This is also the most likely reason why a boot1 being present causes an IA64 box to lock up at boot. (removing the "part4" stuff from boot1.s fixes the IA64 boxes and would most likely have fixed the T20/A20 and some TP600E series thinkpads) --- sys/boot/i386/boot2/boot1.S | 2 +- sys/boot/i386/boot2/boot1.s | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/sys/boot/i386/boot2/boot1.S b/sys/boot/i386/boot2/boot1.S index 99eef3a3790c..25f05d421cce 100644 --- a/sys/boot/i386/boot2/boot1.S +++ b/sys/boot/i386/boot2/boot1.S @@ -353,7 +353,7 @@ flags: .byte FLAGS # Flags .fill 0x30,0x1,0x0 part4: .byte 0x80, 0x00, 0x01, 0x00 - .byte 0xa5, 0xff, 0xff, 0xff + .byte 0xa5, 0xfe, 0xff, 0xff .byte 0x00, 0x00, 0x00, 0x00 .byte 0x50, 0xc3, 0x00, 0x00 # 50000 sectors long, bleh diff --git a/sys/boot/i386/boot2/boot1.s b/sys/boot/i386/boot2/boot1.s index 99eef3a3790c..25f05d421cce 100644 --- a/sys/boot/i386/boot2/boot1.s +++ b/sys/boot/i386/boot2/boot1.s @@ -353,7 +353,7 @@ flags: .byte FLAGS # Flags .fill 0x30,0x1,0x0 part4: .byte 0x80, 0x00, 0x01, 0x00 - .byte 0xa5, 0xff, 0xff, 0xff + .byte 0xa5, 0xfe, 0xff, 0xff .byte 0x00, 0x00, 0x00, 0x00 .byte 0x50, 0xc3, 0x00, 0x00 # 50000 sectors long, bleh -- cgit v1.3