diff options
-rw-r--r-- | perl-install/NEWS | 3 | ||||
-rw-r--r-- | perl-install/fs/dmraid.pm | 16 | ||||
-rw-r--r-- | perl-install/install/NEWS | 1 |
3 files changed, 20 insertions, 0 deletions
diff --git a/perl-install/NEWS b/perl-install/NEWS index 4b9938dd0..5c54ce5ed 100644 --- a/perl-install/NEWS +++ b/perl-install/NEWS @@ -1,3 +1,6 @@ +- diskdrake: + o support ddf1 raid + Version 12.77.4 - 19 January 2010 - display_help: diff --git a/perl-install/fs/dmraid.pm b/perl-install/fs/dmraid.pm index fa06e05e9..68dd98a16 100644 --- a/perl-install/fs/dmraid.pm +++ b/perl-install/fs/dmraid.pm @@ -40,10 +40,26 @@ sub check { } sub _raid_devices_raw() { + # get the real vg names, needed for ddf1, and safer than begins_with for raid10 + log::l("_raid_devices_raw"); + my %vgs; + my %pv2vg = map { + log::l("got: $_"); + my %l; @l{qw(name size stride level status subsets devs spares)} = split(':'); + $vgs{$l{name}} = 1 if defined $l{spares}; + if(/freeing device "(.*)", path "(.*)"/ && defined $vgs{$1}) { + log::l("$2 => $1"); + { $2 => $1 }; + } + } call_dmraid('-d', '-s', '-c', '-c'); map { chomp; log::l("got: $_"); my %l; @l{qw(pv format vg level status size)} = split(':'); + if(defined $l{size} && defined $l{vg} && defined $pv2vg{$l{pv}} && !defined $vgs{$l{vg}}) { + log::l("using $pv2vg{$l{pv}} instead of $l{vg}"); + $l{vg} = $pv2vg{$l{pv}}; + } if_(defined $l{size}, \%l); } call_dmraid('-r', '-c', '-c'); } diff --git a/perl-install/install/NEWS b/perl-install/install/NEWS index 7ecf48e9a..bf878158f 100644 --- a/perl-install/install/NEWS +++ b/perl-install/install/NEWS @@ -4,6 +4,7 @@ o install 'ibus-qt4' if configuring ibus under KDE4 (#56311) - detect_devices: o fix detecting pcmcia serial devices +- support ddf1 raid Version 12.77 - 30 October 2009 |