summaryrefslogtreecommitdiffstats
path: root/lib/format1/lvm1-label.c
diff options
context:
space:
mode:
authorAlasdair Kergon <agk@redhat.com>2008-02-06 15:47:28 +0000
committerAlasdair Kergon <agk@redhat.com>2008-02-06 15:47:28 +0000
commitbb097a97eade0721251f6faf92e5bd88b6339e6f (patch)
tree58c7227c148eb8c12de8b77ce56c53e204d54ea2 /lib/format1/lvm1-label.c
parent17dd04ca1f739690e4341adf04abb98d5664b26d (diff)
downloadlvm2-bb097a97eade0721251f6faf92e5bd88b6339e6f.tar.gz
lvm2-bb097a97eade0721251f6faf92e5bd88b6339e6f.tar.xz
lvm2-bb097a97eade0721251f6faf92e5bd88b6339e6f.zip
split orphan VG by format type
Diffstat (limited to 'lib/format1/lvm1-label.c')
-rw-r--r--lib/format1/lvm1-label.c12
1 files changed, 8 insertions, 4 deletions
diff --git a/lib/format1/lvm1-label.c b/lib/format1/lvm1-label.c
index dd8443d1..ffd21518 100644
--- a/lib/format1/lvm1-label.c
+++ b/lib/format1/lvm1-label.c
@@ -19,7 +19,7 @@
#include "label.h"
#include "metadata.h"
#include "xlate.h"
-#include "lvmcache.h"
+#include "format1.h"
#include <sys/stat.h>
#include <fcntl.h>
@@ -60,17 +60,21 @@ static int _lvm1_read(struct labeller *l, struct device *dev, void *buf,
struct pv_disk *pvd = (struct pv_disk *) buf;
struct vg_disk vgd;
struct lvmcache_info *info;
- const char *vgid = NULL;
+ const char *vgid = FMT_LVM1_ORPHAN_VG_NAME;
+ const char *vgname = FMT_LVM1_ORPHAN_VG_NAME;
unsigned exported = 0;
munge_pvd(dev, pvd);
- if (*pvd->vg_name && read_vgd(dev, &vgd, pvd)) {
+ if (*pvd->vg_name) {
+ if (!read_vgd(dev, &vgd, pvd))
+ return_0;
vgid = (char *) vgd.vg_uuid;
+ vgname = (char *) pvd->vg_name;
exported = pvd->pv_status & VG_EXPORTED;
}
- if (!(info = lvmcache_add(l, (char *)pvd->pv_uuid, dev, (char *)pvd->vg_name, vgid,
+ if (!(info = lvmcache_add(l, (char *)pvd->pv_uuid, dev, vgname, vgid,
exported)))
return_0;
*label = info->label;