Bug 141733

Summary: installkernel confused by RAID
Product: [openSUSE] SUSE LINUX 10.0 Reporter: stephen hemminger <shemminger>
Component: BasesystemAssignee: Joachim Plack <jplack>
Status: RESOLVED FIXED QA Contact: E-mail List <qa-bugs>
Severity: Normal    
Priority: P5 - None    
Version: unspecified   
Target Milestone: ---   
Hardware: x86   
OS: Linux   
Whiteboard:
Found By: Customer Services Priority:
Business Priority: Blocker: ---
Marketing QA Status: --- IT Deployment: ---

Description stephen hemminger 2006-01-06 03:15:34 UTC
installkernel has problems with either RAID and/or current 2.6 kernels.

Doing a "make install" runs /sbin/installkernel and then I get the attached output.  Surprisingly, the install runs fine.

This system has three Raid partitions (root, tmp, and home). So the
perl script is probably getting confused.

-------------
make install
  CHK     include/linux/version.h
  CHK     include/linux/compile.h
  SKIPPED include/linux/compile.h
  CHK     usr/initramfs_list
Kernel: arch/i386/boot/bzImage is ready  (#5)
sh /home/shemminger/kernel/skge-2.6/arch/i386/boot/install.sh 2.6.15-skge arch/i386/boot/bzImage System.map "/boot"
Root device:    /dev/md2 (mounted on / as reiserfs)
Module list:    processor thermal fan reiserfs aic7xxx raid0 raid1

Kernel image:   /boot/vmlinuz-2.6.15-skge
Initrd image:   /boot/initrd-2.6.15-skge
Shared libs:    lib/ld-2.3.5.so lib/libblkid.so.1.0 lib/libc-2.3.5.so lib/libselinux.so.1 lib/libuuid.so.1.2
Driver modules: kernel/drivers/scsi/scsi_mod.ko kernel/drivers/scsi/sd_mod.ko kernel/drivers/acpi/processor.ko kernel/drivers/acpi/thermal.ko kernel/drivers/acpi/fan.ko kernel/drivers/scsi/scsi_transport_spi.ko kernel/drivers/scsi/aic7xxx/aic7xxx.ko kernel/drivers/md/raid0.ko kernel/drivers/md/raid1.ko
Filesystem modules:     kernel/fs/reiserfs/reiserfs.ko
Including:      klibc initramfs udev fsck.reiserfs raidautorun
Bootsplash:     SuSE (1280x1024)
17668 blocks
no record for '/block/sda/uevent' in database
Use of uninitialized value in scalar chomp at /usr/lib/perl5/vendor_perl/5.8.7/Bootloader/Tools.pm line 139.
Use of uninitialized value in concatenation (.) or string at /usr/lib/perl5/vendor_perl/5.8.7/Bootloader/Tools.pm line 140.
substr outside of string at /usr/lib/perl5/vendor_perl/5.8.7/Bootloader/Tools.pm line 175.
Use of uninitialized value in length at /usr/lib/perl5/vendor_perl/5.8.7/Bootloader/Tools.pm line 176.
no record for '/block/hdc/uevent' in database
Use of uninitialized value in scalar chomp at /usr/lib/perl5/vendor_perl/5.8.7/Bootloader/Tools.pm line 139.
Use of uninitialized value in concatenation (.) or string at /usr/lib/perl5/vendor_perl/5.8.7/Bootloader/Tools.pm line 140.
substr outside of string at /usr/lib/perl5/vendor_perl/5.8.7/Bootloader/Tools.pm line 175.
Use of uninitialized value in length at /usr/lib/perl5/vendor_perl/5.8.7/Bootloader/Tools.pm line 176.
no record for '/block/hdb/uevent' in database
Use of uninitialized value in scalar chomp at /usr/lib/perl5/vendor_perl/5.8.7/Bootloader/Tools.pm line 139.
Use of uninitialized value in concatenation (.) or string at /usr/lib/perl5/vendor_perl/5.8.7/Bootloader/Tools.pm line 140.
substr outside of string at /usr/lib/perl5/vendor_perl/5.8.7/Bootloader/Tools.pm line 175.
Use of uninitialized value in length at /usr/lib/perl5/vendor_perl/5.8.7/Bootloader/Tools.pm line 176.
no record for '/block/hda/uevent' in database
Use of uninitialized value in scalar chomp at /usr/lib/perl5/vendor_perl/5.8.7/Bootloader/Tools.pm line 139.
Use of uninitialized value in concatenation (.) or string at /usr/lib/perl5/vendor_perl/5.8.7/Bootloader/Tools.pm line 140.
substr outside of string at /usr/lib/perl5/vendor_perl/5.8.7/Bootloader/Tools.pm line 175.
Use of uninitialized value in length at /usr/lib/perl5/vendor_perl/5.8.7/Bootloader/Tools.pm line 176.
Use of uninitialized value in concatenation (.) or string at /usr/lib/perl5/vendor_perl/5.8.7/Bootloader/Library.pm line 220.
Use of uninitialized value in concatenation (.) or string at /usr/lib/perl5/vendor_perl/5.8.7/Bootloader/Library.pm line 220.
Use of uninitialized value in concatenation (.) or string at /usr/lib/perl5/vendor_perl/5.8.7/Bootloader/Library.pm line 220.
Use of uninitialized value in concatenation (.) or string at /usr/lib/perl5/vendor_perl/5.8.7/Bootloader/Library.pm line 220.
Using grub, re-install of bootloader not required.
Comment 1 Christian Boltz 2006-01-06 18:26:14 UTC
Stephen, this is *not* a bugzilla bug - this component is ONLY for bugs in bugzilla itsself. So, if you can't report a bug, report it here ;-)

Please move this bugreport to Product "SUSE Linux X.Y" (choose your version) and a matching component, then set the bugreport back to ASSIGNED.
Comment 2 Hannes Reinecke 2006-01-09 12:12:41 UTC
Tsts. jack?
Comment 3 Joachim Plack 2006-01-10 14:11:12 UTC
Well the problem comes from 'udevinfo' giving no output. Dunno nothing about that tool.
Will change that Tools.pm handles that gracefully.

Code in question:
    open (OUT, "udevinfo -q name -p /block/$udev |") || die "Cannot run udevinfo";
    my $dev = <OUT>;
    close OUT;
    chomp ($dev);
Comment 4 Joachim Plack 2006-01-10 14:22:42 UTC
ok submitted to svn.
Kay can you give me advice what might have gone wrong?.
May be the output 'no record for '/block/sda/uevent' in database' from up there 
can give you a hint
Comment 5 Kay Sievers 2006-01-10 16:11:52 UTC
You can't call udevinfo for the device _attribute_ "uevent", it expects a _real_ device. Udevinfo does only print stuff that custom rules have stored in the udev database. "Default" device names are the same as the sysfs names. What information does the perl code expect from udevinfo?
Comment 6 Joachim Plack 2006-01-16 14:23:22 UTC
the code path that call udevinfo is actually a little bit hacky and could need
some major rewrite. But errors are handled ok for now. so -> fixed