Bug#611561: grub-pc: Superflous errors when md devices have spare drives.

2011-04-08 Thread Vladimir 'φ-coder/phcoder' Serbinenko
tag 611561 fixed-upstream
thanks

On 03.04.2011 22:33, Vladimir 'φ-coder/phcoder' Serbinenko wrote:
 On 30.01.2011 18:42, Boyd Stephen Smith Jr. wrote:
 error: superfluous RAID member (2 found).
 error: superfluous RAID member (5 found).
 error: superfluous RAID member (2 found).
 error: superfluous RAID member (2 found
 Please try the attached patch



-- 
Regards
Vladimir 'φ-coder/phcoder' Serbinenko




signature.asc
Description: OpenPGP digital signature


Bug#611561: grub-pc: Superflous errors when md devices have spare drives.

2011-04-03 Thread Vladimir 'φ-coder/phcoder' Serbinenko
On 30.01.2011 18:42, Boyd Stephen Smith Jr. wrote:
 error: superfluous RAID member (2 found).
 error: superfluous RAID member (5 found).
 error: superfluous RAID member (2 found).
 error: superfluous RAID member (2 found
Please try the attached patch

-- 
Regards
Vladimir 'φ-coder/phcoder' Serbinenko

=== modified file 'grub-core/disk/mdraid1x_linux.c'
--- grub-core/disk/mdraid1x_linux.c	2011-03-29 09:51:58 +
+++ grub-core/disk/mdraid1x_linux.c	2011-04-03 20:26:44 +
@@ -200,11 +200,14 @@
 
 	if (grub_le_to_cpu32 (real_sb-dev_number) =
 	grub_le_to_cpu32 (real_sb-max_dev))
-	  return grub_error (GRUB_ERR_NOT_IMPLEMENTED_YET,
+	  return grub_error (GRUB_ERR_OUT_OF_RANGE,
 			 spares aren't implemented);
 
 	array-index = grub_le_to_cpu16
 	  (real_sb-dev_roles[grub_le_to_cpu32 (real_sb-dev_number)]);
+	if (array-index = array-total_devs)
+	  return grub_error (GRUB_ERR_OUT_OF_RANGE,
+			 spares aren't implemented);
 	array-uuid_len = 16;
 	array-uuid = grub_malloc (16);
 	if (!array-uuid)

=== modified file 'grub-core/disk/mdraid_linux.c'
--- grub-core/disk/mdraid_linux.c	2011-01-07 15:17:24 +
+++ grub-core/disk/mdraid_linux.c	2011-04-03 20:26:54 +
@@ -202,7 +202,7 @@
 		   unsupported RAID level: %d, level);
   if (grub_le_to_cpu32 (sb.this_disk.number) == 0x
   || grub_le_to_cpu32 (sb.this_disk.number) == 0xfffe)
-return grub_error (GRUB_ERR_NOT_IMPLEMENTED_YET,
+return grub_error (GRUB_ERR_OUT_OF_RANGE,
 		   spares aren't implemented);
 
   array-name = NULL;



signature.asc
Description: OpenPGP digital signature


Bug#611561: grub-pc: Superflous errors when md devices have spare drives.

2011-01-30 Thread Boyd Stephen Smith Jr.
Package: grub-pc
Version: 1.98+20100804-14
Severity: minor

-BEGIN PGP SIGNED MESSAGE-
Hash: SHA1


Various grub-pc scripts fill my screen up with errors like:
error: superfluous RAID member (2 found).
error: superfluous RAID member (2 found).
error: superfluous RAID member (5 found).
error: superfluous RAID member (2 found).
error: superfluous RAID member (2 found).
error: superfluous RAID member (5 found).
error: superfluous RAID member (2 found).
error: superfluous RAID member (2 found).
error: superfluous RAID member (5 found).
error: superfluous RAID member (2 found).
error: superfluous RAID member (2 found).
error: superfluous RAID member (5 found).
error: superfluous RAID member (2 found).
error: superfluous RAID member (2 found).
error: superfluous RAID member (5 found).
error: superfluous RAID member (2 found).
error: superfluous RAID member (2 found).
error: superfluous RAID member (5 found).
error: superfluous RAID member (2 found).
error: superfluous RAID member (2 found).
error: superfluous RAID member (5 found).
error: superfluous RAID member (2 found).
error: superfluous RAID member (2 found).
error: superfluous RAID member (5 found).
error: superfluous RAID member (2 found).
error: superfluous RAID member (2 found).
error: superfluous RAID member (5 found).

However, they seem to complete their job, so I think this is just cosmetic.

I have 3 MD devices:
md0 -- RAID1: 2 devices + 1 spare
md1 -- RAID1: 2 devices + 1 spare
md2 -- RAID5: 5 devices + 1 spare

Assuming the errors are simply cosmetic, it would be nice if they were
squelched entirely.  If they aren't only cosmetic, the severity of the
bug should be upgraded.

- -- Package-specific info:

*** BEGIN /proc/mounts
/dev/disk/by-uuid/d8fdc5a3-6df6-4d8c-aa34-0bd226a3f49e / reiserfs 
rw,relatime,notail 0 0
/dev/mapper/monster-home /home reiserfs rw,relatime 0 0
/dev/mapper/monster-media /home/bss/media reiserfs rw,relatime 0 0
/dev/mapper/monster-opt /opt btrfs rw,nodev,relatime 0 0
/dev/mapper/monster-srv /srv btrfs rw,nosuid,nodev,relatime 0 0
/dev/mapper/monster-old.usr /usr reiserfs rw,relatime 0 0
/dev/mapper/monster-usr.local /usr/local btrfs rw,nodev,relatime 0 0
/dev/mapper/monster-var /var reiserfs rw,relatime 0 0
/dev/mapper/monster-var.cache /var/cache reiserfs rw,relatime 0 0
/dev/mapper/monster-var.tmp /var/tmp reiserfs rw,relatime 0 0
*** END /proc/mounts

*** BEGIN /boot/grub/device.map
(hd0)   /dev/disk/by-id/scsi-SSeagate_ST31500341AS
(hd1)   /dev/disk/by-id/scsi-SHitachi_HDS722020ALA330_JBT2YX
(hd2)   /dev/disk/by-id/ata-WDC_WD740GD-00FLC0_WD-WMAKE2032541
(hd3)   /dev/disk/by-id/ata-WDC_WD740GD-00FLC0_WD-WMAKE2036963
(hd4)   /dev/sdb
(hd5)   /dev/sdc
(hd6)   /dev/sdd
(hd7)   /dev/sde
*** END /boot/grub/device.map

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

### BEGIN /etc/grub.d/00_header ###
if [ -s $prefix/grubenv ]; then
  load_env
fi
set default=0
if [ ${prev_saved_entry} ]; then
  set saved_entry=${prev_saved_entry}
  save_env saved_entry
  set prev_saved_entry=
  save_env prev_saved_entry
  set boot_once=true
fi

function savedefault {
  if [ -z ${boot_once} ]; then
saved_entry=${chosen}
save_env saved_entry
  fi
}

function load_video {
  insmod vbe
  insmod vga
  insmod video_bochs
  insmod video_cirrus
}

insmod raid
insmod raid5rec
insmod mdraid
insmod lvm
insmod part_msdos
insmod reiserfs
set root='(monster-old.usr)'
search --no-floppy --fs-uuid --set bfe880f6-c48e-40c8-958b-ac0720ab4fee
if loadfont /share/grub/unicode.pf2 ; then
  set gfxmode=640x480
  load_video
  insmod gfxterm
fi
terminal_output gfxterm
insmod raid
insmod mdraid
insmod part_msdos
insmod reiserfs
set root='(md0)'
search --no-floppy --fs-uuid --set d8fdc5a3-6df6-4d8c-aa34-0bd226a3f49e
set locale_dir=($root)/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 raid5rec
insmod mdraid
insmod lvm
insmod part_msdos
insmod reiserfs
set root='(monster-old.usr)'
search --no-floppy --fs-uuid --set bfe880f6-c48e-40c8-958b-ac0720ab4fee
insmod png
if background_image /share/images/desktop-base/spacefun-grub.png; then
  set color_normal=light-gray/black
  set color_highlight=white/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-5-amd64' --class debian --class 
gnu-linux --class gnu --class os {
insmod raid
insmod mdraid
insmod part_msdos
insmod reiserfs
set root='(md0)'
search --no-floppy --fs-uuid --set d8fdc5a3-6df6-4d8c-aa34-0bd226a3f49e
echo'Loading Linux 2.6.32-5-amd64 ...'