Bug#564083: error: fd1 cannot get C/H/S values on every boot with Asus M4A785-M

jurriaan thunder7 at xs4all.nl
Thu Jan 7 15:50:28 UTC 2010


Package: grub-pc
Version: 1.98~20100101-1
Severity: important


My new Asus M4A785-M motherboard by default presents usb devices as floppies by default when booting.

This always breaks the boot, it says


error: fd1 cannot get C/H/S values

and leaves me at the rescue prompt.

If I type 

insmod /boot/grub/linux.mod
normal

I get the menu file as expected and everything works.

This is related to the BIOS of this motherboard, which presents USB storage devices as floppies during boot. The default setting 'Auto' for USB Mass Storage Device Configuration gives this error. If I set USB Mass Storage Device Configuration to 'Hard Disk', I don't get an error.

I did find a bug report during late night debugging somewhere on the web where the error from probing the 
floppy set the errno variable, which variable wasn't cleared in the next function (insmod, IIRC), so it
appeared the next function did return an error, and rescue mode was started.

Unfortunately, I haven't been able to find this report again on re-searching the WWW.

Hacking the source of grub-pc to display the C/H/S values found gave me:

error: fd1 cannot get C/H/S values (C/H/S 421/165/56)

At the moment, I've solved it by changing my BIOS setup, but an error (any error) about a floppy drive
where the grub.cfg doesn't need a floppy to boot shouldn't interrupt normal booting. It might warn, but
it shouldn't stop booting. Also, the message is at least misleading since there are C/H/S values found
internally.

The motherboard is a common AM2+ socket consumer motherboard with AMD's 785G chipset.

Kind regards,
Jurriaan
-- Package-specific info:

*********************** BEGIN /proc/mounts
/dev/disk/by-uuid/a0f917c8-5e68-4726-81f9-4659034e80f4 / ext2 rw,relatime,errors=remount-ro 0 0
/dev/sdb1 /space1 ext3 rw,relatime,errors=continue,data=ordered 0 0
/dev/sdd1 /space2 ext3 rw,relatime,errors=continue,data=ordered 0 0
/dev/sdc4 /backup ext3 rw,relatime,errors=continue,data=ordered 0 0
/dev/sda5 /old ext2 rw,relatime,errors=continue 0 0
*********************** END /proc/mounts

*********************** BEGIN /boot/grub/device.map
(hd0)	/dev/sda
(hd1)	/dev/sdb
(hd2)	/dev/sdc
(hd3)	/dev/sdd
*********************** END /boot/grub/device.map

*********************** BEGIN /boot/grub/grub.cfg
#
# DO NOT EDIT THIS FILE
#
# It is automatically generated by /usr/sbin/grub-mkconfig using templates
# from /etc/grub.d and settings from /etc/default/grub
#

### BEGIN /etc/grub.d/00_header ###
set default=0
insmod raid
insmod mdraid
insmod ext2
set root=(md0)
search --no-floppy --fs-uuid --set a0f917c8-5e68-4726-81f9-4659034e80f4
if loadfont /usr/share/grub/unicode.pf2 ; then
  set gfxmode=640x480
  insmod gfxterm
  insmod vbe
  if terminal_output gfxterm ; then true ; else
    # For backward compatibility with versions of terminal.mod that don't
    # understand terminal_output
    terminal gfxterm
  fi
fi
set locale_dir=/boot/grub/locale
set lang=en
insmod gettext
set timeout=5
### END /etc/grub.d/00_header ###

### BEGIN /etc/grub.d/05_debian_theme ###
insmod raid
insmod mdraid
insmod ext2
set root=(md0)
search --no-floppy --fs-uuid --set a0f917c8-5e68-4726-81f9-4659034e80f4
insmod png
if background_image /boot/grub/moreblue-orbit-grub.png ; then
  set color_normal=black/black
  set color_highlight=magenta/black
else
  set menu_color_normal=cyan/blue
  set menu_color_highlight=white/blue
fi
### END /etc/grub.d/05_debian_theme ###

### BEGIN /etc/grub.d/10_linux ###
menuentry "Debian GNU/Linux, with Linux 2.6.32-trunk-amd64" {
	insmod raid
	insmod mdraid
	insmod ext2
	set root=(md0)
	search --no-floppy --fs-uuid --set a0f917c8-5e68-4726-81f9-4659034e80f4
	linux	/boot/vmlinuz-2.6.32-trunk-amd64 root=UUID=a0f917c8-5e68-4726-81f9-4659034e80f4 ro  quiet
	initrd	/boot/initrd.img-2.6.32-trunk-amd64
}
menuentry "Debian GNU/Linux, with Linux 2.6.32-trunk-amd64 (recovery mode)" {
	insmod raid
	insmod mdraid
	insmod ext2
	set root=(md0)
	search --no-floppy --fs-uuid --set a0f917c8-5e68-4726-81f9-4659034e80f4
	linux	/boot/vmlinuz-2.6.32-trunk-amd64 root=UUID=a0f917c8-5e68-4726-81f9-4659034e80f4 ro single 
	initrd	/boot/initrd.img-2.6.32-trunk-amd64
}
menuentry "Debian GNU/Linux, with Linux 2.6.30-2-amd64" {
	insmod raid
	insmod mdraid
	insmod ext2
	set root=(md0)
	search --no-floppy --fs-uuid --set a0f917c8-5e68-4726-81f9-4659034e80f4
	linux	/boot/vmlinuz-2.6.30-2-amd64 root=UUID=a0f917c8-5e68-4726-81f9-4659034e80f4 ro  quiet
	initrd	/boot/initrd.img-2.6.30-2-amd64
}
menuentry "Debian GNU/Linux, with Linux 2.6.30-2-amd64 (recovery mode)" {
	insmod raid
	insmod mdraid
	insmod ext2
	set root=(md0)
	search --no-floppy --fs-uuid --set a0f917c8-5e68-4726-81f9-4659034e80f4
	linux	/boot/vmlinuz-2.6.30-2-amd64 root=UUID=a0f917c8-5e68-4726-81f9-4659034e80f4 ro single 
	initrd	/boot/initrd.img-2.6.30-2-amd64
}
### END /etc/grub.d/10_linux ###

### BEGIN /etc/grub.d/30_os-prober ###
### END /etc/grub.d/30_os-prober ###

### BEGIN /etc/grub.d/40_custom ###
# This file provides an easy way to add custom menu entries.  Simply type the
# menu entries you want to add after this comment.  Be careful not to change
# the 'exec tail' line above.
### END /etc/grub.d/40_custom ###
*********************** END /boot/grub/grub.cfg

-- System Information:
Debian Release: squeeze/sid
  APT prefers unstable
  APT policy: (500, 'unstable')
Architecture: amd64 (x86_64)

Kernel: Linux 2.6.32-trunk-amd64 (SMP w/4 CPU cores)
Locale: LANG=en_US.UTF-8, LC_CTYPE=en_US.UTF-8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/dash

Versions of packages grub-pc depends on:
ii  debconf [debconf-2.0]    1.5.28          Debian configuration management sy
ii  grub-common              1.98~20100101-1 GRand Unified Bootloader, version 
ii  libc6                    2.10.2-4        Embedded GNU C Library: Shared lib
ii  ucf                      3.0025          Update Configuration File: preserv

grub-pc recommends no packages.

Versions of packages grub-pc suggests:
ii  desktop-base                  5.0.5      common files for the Debian Deskto

-- debconf information:
  grub-pc/kopt_extracted: false
  grub2/kfreebsd_cmdline:
* grub-pc/install_devices: (hd0)
  grub-pc/postrm_purge_boot_grub: false
* grub2/linux_cmdline:
  grub2/kfreebsd_cmdline_default: quiet
* grub2/linux_cmdline_default: quiet
  grub-pc/chainload_from_menu.lst: true





More information about the Pkg-grub-devel mailing list