summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorColin Guthrie <colin@mageia.org>2013-02-14 14:22:44 +0000
committerColin Guthrie <colin@mageia.org>2013-02-14 14:22:44 +0000
commitecd8db27c8ffb76ebf799e0de0dcf64c3ce256fe (patch)
treec425d3f5a7d488dda9befd3685e0cd9792b8ea26
parentb4580740b1e475535ec96391a14827e32af53cd9 (diff)
downloaddrakx-ecd8db27c8ffb76ebf799e0de0dcf64c3ce256fe.tar
drakx-ecd8db27c8ffb76ebf799e0de0dcf64c3ce256fe.tar.gz
drakx-ecd8db27c8ffb76ebf799e0de0dcf64c3ce256fe.tar.bz2
drakx-ecd8db27c8ffb76ebf799e0de0dcf64c3ce256fe.tar.xz
drakx-ecd8db27c8ffb76ebf799e0de0dcf64c3ce256fe.zip
(call_blkid) always bypass blkid cache
This reverts the use of the blkid cache. This cache is a broken concept and should not be used. It's only intended to be used for LABEL/UUID conversion. From the upstream maintainer: <kzak> coling: -p provides more information, the cache is designed for LABEL/UUID conversion -- and the goal is to avoid the cache if possible (it's mostly for backward compatibility). The ideal solution is to read the information from udev DB. <kzak> coling: man blkid (at least the latest version contains some hint about this issue) <kzak> coling: I'd like to learn people to use lsblk -- it's designed more friendly for end-users as well as for scripts and it reads info from udev, libblkid is only fallback here. Longer term we should kill off the use of blkid and perhaps move to lsblk or some perl-udev (if such a thing exists) usage instead: <kay> coling: avoid the blkid cache, it is a completely broken idea <kay> kzak: you should really kill that thing :) <kzak> kay: I'd like to kill blkid at all and keep it as "to test the library" binary... <kay> kzak: tools with options like that talk for their sanity themselves :) " -g Perform a garbage collection pass on the blkid cache to remove devices which no longer exist." <kay> kzak: it's just silly, really silly to ever do that :) <kay> kzak: yeah, sounds fine to let blkid and its cache die in the long run <kzak> lsblk is maintainable and extendable -- fix blkid(8) is impossible to fix... This reverts r6891.
-rw-r--r--perl-install/NEWS2
-rw-r--r--perl-install/fs/type.pm2
-rw-r--r--perl-install/install/NEWS2
3 files changed, 5 insertions, 1 deletions
diff --git a/perl-install/NEWS b/perl-install/NEWS
index 2d7ff73d7..e74b11d29 100644
--- a/perl-install/NEWS
+++ b/perl-install/NEWS
@@ -1,3 +1,5 @@
+- always bypass blkid cache (the cache only includes a subset of the data we need)
+
Version 15.19 - 16 January 2013
- update translations
diff --git a/perl-install/fs/type.pm b/perl-install/fs/type.pm
index 72b7b54e4..528804655 100644
--- a/perl-install/fs/type.pm
+++ b/perl-install/fs/type.pm
@@ -273,7 +273,7 @@ sub call_blkid {
my %h = map {
if_(/(.*?)=(.*)/, $1 => $2);
- } run_program::get_stdout_raw({ timeout => 30 }, 'blkid', '2>', '/dev/null', '-o', 'udev', devices::make($part->{device}));
+ } run_program::get_stdout_raw({ timeout => 30 }, 'blkid', '2>', '/dev/null', '-o', 'udev', '-p', devices::make($part->{device}));
\%h;
}
diff --git a/perl-install/install/NEWS b/perl-install/install/NEWS
index dff49cd02..7d1f07f20 100644
--- a/perl-install/install/NEWS
+++ b/perl-install/install/NEWS
@@ -1,3 +1,5 @@
+- always bypass blkid cache (the cache only includes a subset of the data we need)
+
Version 15.20 - 21 January 2013
- use modprobe instead of insmod (mga#8676)