Hello community,
here is the log from the commit of package perl-Bootloader for openSUSE:Factory
checked in at Tue Aug 4 22:30:36 CEST 2009.
--------
--- perl-Bootloader/perl-Bootloader.changes 2009-06-08 10:04:09.000000000 +0200
+++ perl-Bootloader/perl-Bootloader.changes 2009-08-04 17:38:58.000000000 +0200
@@ -1,0 +2,19 @@
+Tue Aug 4 17:23:48 CEST 2009 - jreidinger@suse.cz
+
+- Allow parameters without root in zipl (bnc #511398)
+- implement failover boot for md arrays (FATE #305008)
+- fix perl warnings if target device cannot be read
+- 0.5.4
+
+-------------------------------------------------------------------
+Mon Aug 3 14:36:07 CEST 2009 - jreidinger@suse.cz
+
+- disable check for partition table incostitency for lilo
+ (bnc #466427)
+
+-------------------------------------------------------------------
+Mon Aug 3 11:52:07 CEST 2009 - jreidinger@suse.cz
+
+- Improve partition fallback if something goes wrong (bnc#483617)
+
+-------------------------------------------------------------------
calling whatdependson for head-i586
Old:
----
perl-Bootloader-0.5.3.tar.bz2
New:
----
perl-Bootloader-0.5.4.tar.bz2
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ perl-Bootloader.spec ++++++
--- /var/tmp/diff_new_pack.VtjAdD/_old 2009-08-04 22:27:08.000000000 +0200
+++ /var/tmp/diff_new_pack.VtjAdD/_new 2009-08-04 22:27:08.000000000 +0200
@@ -1,5 +1,5 @@
#
-# spec file for package perl-Bootloader (Version 0.5.3)
+# spec file for package perl-Bootloader (Version 0.5.4)
#
# Copyright (c) 2009 SUSE LINUX Products GmbH, Nuernberg, Germany.
#
@@ -19,14 +19,14 @@
Name: perl-Bootloader
-Version: 0.5.3
+Version: 0.5.4
Release: 1
Requires: perl-base = %{perl_version}
Requires: e2fsprogs
Recommends: perl-gettext
AutoReqProv: on
Group: System/Boot
-License: GPL v2 or later
+License: GNU General Public License (GPL)
Summary: Library for Configuring Boot Loaders
Source: perl-Bootloader-%{version}.tar.bz2
Source1: update-bootloader
@@ -42,11 +42,9 @@
Authors:
--------
- Alexander Osthof
- Stefan Fent
- Joachim Plack
- Olaf Dabrunz
Jiri Srain
+ Joachim Plack
+ Alexander Osthof
Josef Reidinger
%prep
++++++ perl-Bootloader-0.5.3.tar.bz2 -> perl-Bootloader-0.5.4.tar.bz2 ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/perl-Bootloader-0.5.3/lib/Bootloader/Core/GRUB.pm new/perl-Bootloader-0.5.4/lib/Bootloader/Core/GRUB.pm
--- old/perl-Bootloader-0.5.3/lib/Bootloader/Core/GRUB.pm 2009-06-08 10:00:38.000000000 +0200
+++ new/perl-Bootloader-0.5.4/lib/Bootloader/Core/GRUB.pm 2009-08-04 14:16:20.000000000 +0200
@@ -363,6 +363,7 @@
$dev = $self->{"device_map"}->{$map_dev};
values %{$self->{"device_map"}}; #reset hash iterator
return "($dev)" if ( $kernel_dev eq $original ); #disk dev, no partition
+ last;
}
}
@@ -384,6 +385,12 @@
# fallback to grub device hd0 if translation has failed - this is good
# enough for many cases
my $partition_fallback = 0;
+
+ if ( $original =~ m/(\d+)\s*$/ )
+ {
+ $partition_fallback = $1 - 1;
+ $partition_fallback = 0 if ($partition_fallback < 0 );
+ }
if ( $original =~ m/(\d+)\s*$/ )
{
@@ -538,6 +545,18 @@
return $line_ref;
}
+sub IsDisc {
+ my $self = shift;
+ my $disc = shift;
+ my $ret = undef;
+ foreach my $dev (keys %{$self->{"device_map"}}) {
+ if ( $self->GetKernelDevice($disc) eq $self->GetKernelDevice($dev) ){
+ $ret = 1;
+ }
+ }
+ return $ret;
+}
+
#external iface
=item
@@ -681,6 +700,16 @@
if ($dev eq $mbr_dev) {
$glob_ref->{"boot_mbr"} = "true";
$self->l_milestone ("GRUB::Parselines: detected boot_mbr");
+ if (defined $self->{"md_arrays"}
+ and ((scalar keys %{$self->{"md_arrays"}}) > 0)){
+ if (defined $glob_ref->{"boot_md_mbr"}
+ and $glob_ref->{"boot_md_mbr"} ne "" ){
+ $glob_ref->{"boot_md_mbr"} = $glob_ref->{"boot_md_mbr"}.",".$dev;
+ } else {
+ $glob_ref->{"boot_md_mbr"} =$dev;
+ }
+ $self->l_milestone ("GRUB::Parselines: detected boot_md_mbr ".$glob_ref->{"boot_md_mbr"});
+ }
}
elsif ($dev eq $root_dev) {
$glob_ref->{"boot_root"} = "true";
@@ -694,6 +723,16 @@
$glob_ref->{"boot_extended"} = "true";
$self->l_milestone ("GRUB::Parselines: detected boot_extended");
}
+ elsif ($self->IsDisc($dev)
+ and defined $self->{"md_arrays"}
+ and ((scalar keys %{$self->{"md_arrays"}}) > 0)){
+ if (defined $glob_ref->{"boot_md_mbr"} and $glob_ref->{"boot_md_mbr"} ne "" ){
+ $glob_ref->{"boot_md_mbr"} = $glob_ref->{"boot_md_mbr"}.",".$dev;
+ } else {
+ $glob_ref->{"boot_md_mbr"} =$dev;
+ }
+ $self->l_milestone ("GRUB::Parselines: detected boot_md_mbr ".$glob_ref->{"boot_md_mbr"});
+ }
else {
$glob_ref->{"boot_custom"} = $dev;
$self->l_milestone ("GRUB::Parselines: set boot_custom");
@@ -790,6 +829,17 @@
$s1_devices{$dev} = 1 if defined $dev;
}
+ # boot_md_mbr synchronize mbr of disc in md raid
+ #(it is little tricky as md raid synchronize only partitions)
+ $flag = delete $glob{"boot_md_mbr"};
+ if (defined $flag and $flag ne "") {
+ my @discs = split(/,/,$flag);
+ chomp @discs;
+ foreach my $mbr_disc (@discs){
+ $s1_devices{$mbr_disc} = 1;
+ }
+ }
+
# boot_root => "bool:Boot from Root Partition:true",
$flag = delete $glob{"boot_root"};
if (defined $flag and $flag eq "true") {
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/perl-Bootloader-0.5.3/lib/Bootloader/Core/LILO.pm new/perl-Bootloader-0.5.4/lib/Bootloader/Core/LILO.pm
--- old/perl-Bootloader-0.5.3/lib/Bootloader/Core/LILO.pm 2008-09-30 10:37:35.000000000 +0200
+++ new/perl-Bootloader-0.5.4/lib/Bootloader/Core/LILO.pm 2009-08-03 14:42:08.000000000 +0200
@@ -281,7 +281,7 @@
my $self = shift;
return 0 == $self->RunCommand (
- "/sbin/lilo -v -v",
+ "/sbin/lilo -P ignore -v -v",
"/var/log/YaST2/y2log_bootloader"
);
}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/perl-Bootloader-0.5.3/lib/Bootloader/Core/ZIPL.pm new/perl-Bootloader-0.5.4/lib/Bootloader/Core/ZIPL.pm
--- old/perl-Bootloader-0.5.3/lib/Bootloader/Core/ZIPL.pm 2009-06-02 13:00:30.000000000 +0200
+++ new/perl-Bootloader-0.5.4/lib/Bootloader/Core/ZIPL.pm 2009-06-18 10:42:27.000000000 +0200
@@ -426,7 +426,9 @@
}
elsif ($key eq "parameters")
{
- $line_ref->{"value"} = "root=".$sectinfo{"root"}." ".$sectinfo{"append"};
+ my $root = $sectinfo{"root"}||"";
+ $root = "root=$root " unless $root =~ "";
+ $line_ref->{"value"} = $root.$sectinfo{"append"};
delete ($sectinfo{"root"});
delete ($sectinfo{"append"});
}
@@ -593,8 +595,11 @@
elsif ($key eq "parameters")
{
# split off root device from other kernel parameters
- ($ret{"append"} = $line_ref->{"value"}) =~ s/root=[^[:space:]]+[[:space:]]+//g;
- ($ret{"root"} = $line_ref->{"value"}) =~ s/^.*root=([^[:space:]]+)[[:space:]]+.*$/$1/g;
+ ($ret{"append"} = $line_ref->{"value"}) =~ s/root=\S+\s*//g;
+ if ($line_ref->{"value"} =~ m/root=(\S+)(\s+|$)/)
+ {
+ $ret{"root"} = $1;
+ }
}
elsif ($key eq "menuname")
{
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/perl-Bootloader-0.5.3/lib/Bootloader/Core.pm new/perl-Bootloader-0.5.4/lib/Bootloader/Core.pm
--- old/perl-Bootloader-0.5.3/lib/Bootloader/Core.pm 2009-06-08 09:24:33.000000000 +0200
+++ new/perl-Bootloader-0.5.4/lib/Bootloader/Core.pm 2009-08-04 14:16:50.000000000 +0200
@@ -129,6 +129,8 @@
#constants
my $headline = "# Modified by YaST2. Last modification on ";
+my $headline2 = "# THIS FILE WILL BE PARTIALLY OVERWRITTEN by perl-Bootloader";
+my $headline3 = "# Configure custom boot parameters for updated kernels in /etc/sysconfig/bootloader";
# variables
@@ -674,7 +676,9 @@
my $self = shift;
my $line = shift;
- if (index ($line, $headline) >= 0)
+ if (index ($line, $headline) >= 0
+ or index ($line, $headline2) >= 0
+ or index ($line, $headline3) >= 0)
{
# ignore the headline with modification date/time
return 1;
@@ -786,7 +790,7 @@
use POSIX qw(strftime);
my $date = strftime "%a %b %e %H:%M:%S %Z %Y", localtime;
- my @ret = ($headline . $date);
+ my @ret = ($headline . $date."\n".$headline2."\n".$headline3."\n");
foreach my $l (@parsed_lines) {
push @ret, @{$l->{"comment_before"}} if defined $l->{"comment_before"};
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/perl-Bootloader-0.5.3/lib/Bootloader/Library.pm new/perl-Bootloader-0.5.4/lib/Bootloader/Library.pm
--- old/perl-Bootloader-0.5.3/lib/Bootloader/Library.pm 2009-06-02 13:00:30.000000000 +0200
+++ new/perl-Bootloader-0.5.4/lib/Bootloader/Library.pm 2009-08-04 16:27:25.000000000 +0200
@@ -1024,7 +1024,7 @@
my $self = shift;
my $disk = shift;
my $res = Bootloader::MBRTools::examineMBR($disk);
- Bootloader::Logger::instance()->milestone("Library::ExamineMBR on $disk result $res" );
+ Bootloader::Logger::instance()->milestone("Library::ExamineMBR on $disk result ".($res||"nil"));
return $res;
}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/perl-Bootloader-0.5.3/lib/Bootloader/MBRTools.pm new/perl-Bootloader-0.5.4/lib/Bootloader/MBRTools.pm
--- old/perl-Bootloader-0.5.3/lib/Bootloader/MBRTools.pm 2009-05-07 15:35:57.000000000 +0200
+++ new/perl-Bootloader-0.5.4/lib/Bootloader/MBRTools.pm 2009-08-04 16:25:50.000000000 +0200
@@ -176,7 +176,8 @@
return undef;
}
- unless (sysread(FD, $MBR, 512, 0) == 512){
+ my $readed = sysread(FD, $MBR, 512, 0);
+ unless ($readed or $readed == 512){
Bootloader::Logger::instance()->error("Examine MBR cannot read 512 bytes from device $device");
return undef;
}
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Remember to have fun...
--
To unsubscribe, e-mail: opensuse-commit+unsubscribe@opensuse.org
For additional commands, e-mail: opensuse-commit+help@opensuse.org