Bug 116333

Summary: Grub reboot loop after booting WinXP dual boot
Product: [openSUSE] SUSE LINUX 10.0 Reporter: Gareth Young <g.young>
Component: InstallationAssignee: Torsten Duwe <duwe>
Status: RESOLVED FIXED QA Contact: Klaus Kämpf <kkaempf>
Severity: Normal    
Priority: P5 - None CC: duwe, locilka, lslezak, suse-beta
Version: RC 1   
Target Milestone: ---   
Hardware: x86   
OS: SUSE Other   
Whiteboard:
Found By: Other Services Priority:
Business Priority: Blocker: ---
Marketing QA Status: --- IT Deployment: ---
Attachments: YaST setup logs

Description Gareth Young 2005-09-10 15:20:40 UTC
After installing OpenSUSE 10 RC1 on my Latitude D810 the laptop will boot into
OpenSUSE with no problems as many times as I like. If I then boot into Windows
XP which loads fine and reboot Grub will get stuck in a loop. The message that
is displayed for a brief second before it reboots is "GRUB Loading Stage 1.5".

I have booted Windows XP off the CD into rescue mode and performed the fixmbr
option which restored the mbr and Windows booted up ok and there was no Grub menu.

I then booted from the OpenSUSE CD 1 and gone into rescue mode and re-installed
Grub manually which restored the Grub bootloader and OpenSUSE then booted fine.

If I then select the option to boot Windows again from the Grub bootloader it
will boot ok but then after rebooting Grub will be back in a loop.

I have had this problem using Suse 9.2, Suse 9.3 and now OpenSuse. I have also
had the problem on a Latitude C810 and now D810.

Grub is installed into the MBR not the Boot Sector of the Boot Partition.

Windows version is : Windows XP Pro SP2 with all current hotfixes.

Regards,

Gareth.

Here's my menu.lst

# Modified by YaST2. Last modification on Sat Sep 10 09:12:03 UTC 2005

color white/blue black/light-gray
default 0
timeout 8
gfxmenu (hd0,5)/boot/message

###Don't change this comment - YaST2 identifier: Original name: linux###
title SUSE LINUX 10.0
    root (hd0,5)
    kernel /boot/vmlinuz root=/dev/sda6 vga=0x374 selinux=0    resume=/dev/sda5
 splash=silent showopts
    initrd /boot/initrd

###Don't change this comment - YaST2 identifier: Original name: windows###
title Windows
    chainloader (hd0,1)+1

###Don't change this comment - YaST2 identifier: Original name: failsafe###
title Failsafe -- SUSE LINUX 10.0
    root (hd0,5)
    kernel /boot/vmlinuz root=/dev/sda6 vga=normal showopts ide=nodma apm=off
acpi=off noresume selinux=0 nosmp noapic maxcpus=0 edd=off 3

dhcppc3:~ # fdisk -l

Disk /dev/sda: 80.0 GB, 80026361856 bytes
255 heads, 63 sectors/track, 9729 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes

   Device Boot      Start         End      Blocks   Id  System
/dev/sda1               1          11       88326   de  Dell Utility
/dev/sda2   *          12        1923    15358140    7  HPFS/NTFS
/dev/sda3            1924        7022    40957717+   7  HPFS/NTFS
/dev/sda4            7023        9729    21743977+   f  W95 Ext'd (LBA)
/dev/sda5            7023        7153     1052226   82  Linux swap / Solaris
/dev/sda6            7154        9729    20691688+  83  Linux
Comment 1 Andreas Jaeger 2005-09-11 09:17:07 UTC
Please send /etc/grub.conf as well.
Comment 2 Gareth Young 2005-09-11 10:30:07 UTC
(In reply to comment #1)
> Please send /etc/grub.conf as well.

/etc/grub.conf

setup --stage2=/boot/grub/stage2 (hd0,5) (hd0,5)
setup --stage2=/boot/grub/stage2 (hd0) (hd0,5)
quit



Comment 3 Lukas Ocilka 2005-09-12 07:59:35 UTC
Could you, please, attach also YaST logs?

http://www.opensuse.org/Bug_Reporting_FAQ#YaST

Thanks
Comment 4 Gareth Young 2005-09-12 08:49:31 UTC
Created attachment 49569 [details]
YaST setup logs

YaST logs attached as requested.

Regards,

Gareth.
Comment 5 Jiří Suchomel 2005-09-12 10:23:09 UTC
maybe grub maintainer could help...
Comment 6 Gareth Young 2005-09-12 10:41:39 UTC
I suspect this maybe the same problem, maybe it will help .....

http://www.oreillynet.com/pub/wlg/4896

Gareth
Comment 7 Lukas Ocilka 2005-09-12 10:49:44 UTC
Torsten, could you, please, have a look at this bug?
Comment 8 Gareth Young 2005-09-12 22:45:31 UTC
Not sure if the following is relevant.

I tryed backing up the mbr and restoring it via dd to see if the mbr was altered
by Windows when it booted using the following commands but this had no effect.

Starting with a working grub menu.

dd if=/dev/sda of=/tmp/mbrbackup bs=512 count=1

Then booted into WindowsXP to break the Grub menu which it did and performed the
following.

Boot into rescue mode and mount / into /mnt

dd if=/mnt/tmp/mbrbackup of=/dev/sda bs=512 count=1

(I think these commands are correct for backing up and restoring the mbr)

Rebooted and the Grub menu was still broke and stuck in its infinate loop.

Resorted the grub menu by booting into rescue mode and performing the following.

grub>root (hd0,5)

grub>setup (hd0)

This then restored the grub menu and I could boot into openSUSE, if I then
booted back into Windows it would break again.

Regards,

Gareth.
Comment 9 Jiří Suchomel 2005-09-13 12:53:50 UTC
Torsten, please take care of it if it is grub problem. If you find that grub
config is written wrongly, than it might be jsrain's.
Comment 10 Torsten Duwe 2005-12-01 17:39:09 UTC
The underlying problem should be fixed with grub-0.97-3 
Comment 11 Christian Boltz 2006-01-30 23:13:39 UTC
It seems the problem still exists in 10.1 beta - see the discussion "Strange problem" in opensuse-factory...

http://lists.opensuse.org/archive/opensuse-factory/2006-Jan/0159.html and following mails
Comment 12 Torsten Duwe 2006-04-20 12:42:36 UTC
I can see no new information in this mail thread, besides the hint it may be some "virus protection", which I guess is mandatory these days for the program loader from Redmont. Some of these even seem to know lilo, but not yet grub.

The original problem _was_ fixed in 0.97-3, so just because there's the same symptom again doesn't mean this bug reappeared.

As good practice, never install into the MBR unless you absolutely have to. If this happens with stage1 in a partition, please open a new bug.

There's nothing I can do about windoze programs damaging the boot loader.