summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMartin Whitaker <mageia@martin-whitaker.me.uk>2017-04-02 20:02:13 +0100
committerRĂ©mi Verschelde <rverschelde@gmail.com>2017-04-04 20:04:51 +0200
commit8c1b77dc5934c4ad1bf9aa8ed11758eef7290bc7 (patch)
treed534260c1259bc4a9fb1cc9b73c50c468e015ba2
parent23db13194282cfff24d4bc88a7790ebd272953a0 (diff)
downloaddrakx-8c1b77dc5934c4ad1bf9aa8ed11758eef7290bc7.tar
drakx-8c1b77dc5934c4ad1bf9aa8ed11758eef7290bc7.tar.gz
drakx-8c1b77dc5934c4ad1bf9aa8ed11758eef7290bc7.tar.bz2
drakx-8c1b77dc5934c4ad1bf9aa8ed11758eef7290bc7.tar.xz
drakx-8c1b77dc5934c4ad1bf9aa8ed11758eef7290bc7.zip
Speed up proc_partitions::compare() and avoid unwanted udev events.
The compare function doesn't look at the filesystem type, so there's no need to probe it. This avoids unwanted udev events when we are checking that the kernel has been informed of partition table changes.
-rw-r--r--perl-install/fs/proc_partitions.pm6
1 files changed, 3 insertions, 3 deletions
diff --git a/perl-install/fs/proc_partitions.pm b/perl-install/fs/proc_partitions.pm
index a6006a3bb..ea714ca5b 100644
--- a/perl-install/fs/proc_partitions.pm
+++ b/perl-install/fs/proc_partitions.pm
@@ -20,7 +20,7 @@ sub read_raw() {
}
sub read {
- my ($hds) = @_;
+ my ($hds, $o_ignore_fstype) = @_;
my @all = read_raw();
my ($parts, $_disks) = partition { $_->{dev} =~ /\d$/ && $_->{dev} !~ /^(sr|scd)/ } @all;
@@ -40,7 +40,7 @@ sub read {
$part->{size} *= 2; # from KB to sectors
$part->{start} = $prev_part ? $prev_part->{start} + $prev_part->{size} : 0;
require fs::type;
- put_in_hash($part, fs::type::type_subpart_from_magic($part));
+ put_in_hash($part, fs::type::type_subpart_from_magic($part)) if !$o_ignore_fstype;
$prev_part = $part;
delete $part->{dev}; # cleanup
}
@@ -54,7 +54,7 @@ sub compare {
my @l1 = partition_table::get_normal_parts($hd);
- my @l2 = grep { $_->{rootDevice} eq $hd->{device} } &read([$hd]);
+ my @l2 = grep { $_->{rootDevice} eq $hd->{device} } &read([$hd], 1);
#- /proc/partitions includes partition with type "empty" and a non-null size
#- so add them for comparison