mirror of
https://github.com/libguestfs/libguestfs.git
synced 2026-03-21 22:53:37 +00:00
Fix 'unknown filesystem' warnings in old inspection code (RHBZ#678231 RHBZ#666578).
This is a comprehensive fix for the warnings from the old (and obsolete) Perl inspection code. For a full description and reproducer, see: https://bugzilla.redhat.com/show_bug.cgi?id=678231#c5
This commit is contained in:
@@ -892,23 +892,29 @@ sub _find_filesystem
|
||||
|
||||
if (/^LABEL=(.*)/) {
|
||||
my $label = $1;
|
||||
foreach (sort keys %$fses) {
|
||||
if (exists $fses->{$_}->{label} &&
|
||||
$fses->{$_}->{label} eq $label) {
|
||||
return ($_, $fses->{$_});
|
||||
}
|
||||
}
|
||||
warn __x("unknown filesystem label {label}\n", label => $label);
|
||||
my $dev;
|
||||
eval {
|
||||
$dev = $g->findfs_label ($label);
|
||||
};
|
||||
warn "unknown filesystem LABEL=$label in /etc/fstab: $@\n" if $@;
|
||||
return () if !defined $dev;
|
||||
$dev = _canonical_dev ($dev);
|
||||
return ($dev, $fses->{$dev}) if exists $fses->{$dev};
|
||||
# Otherwise return nothing. It's just a filesystem that we are
|
||||
# ignoring, eg. swap.
|
||||
return ();
|
||||
} elsif (/^UUID=(.*)/) {
|
||||
my $uuid = $1;
|
||||
foreach (sort keys %$fses) {
|
||||
if (exists $fses->{$_}->{uuid} &&
|
||||
$fses->{$_}->{uuid} eq $uuid) {
|
||||
return ($_, $fses->{$_});
|
||||
}
|
||||
}
|
||||
warn __x("unknown filesystem UUID {uuid}\n", uuid => $uuid);
|
||||
my $dev;
|
||||
eval {
|
||||
$dev = $g->findfs_uuid ($uuid);
|
||||
};
|
||||
warn "unknown filesystem UUID=$uuid in /etc/fstab: $@\n" if $@;
|
||||
return () if !defined $dev;
|
||||
$dev = _canonical_dev ($dev);
|
||||
return ($dev, $fses->{$dev}) if exists $fses->{$dev};
|
||||
# Otherwise return nothing. It's just a filesystem that we are
|
||||
# ignoring, eg. swap.
|
||||
return ();
|
||||
} else {
|
||||
return ($_, $fses->{$_}) if exists $fses->{$_};
|
||||
|
||||
Reference in New Issue
Block a user