mirror of
git://sourceware.org/git/lvm2.git
synced 2024-12-21 13:34:40 +03:00
vgname_from_mda now tries to parse for vgname even
if rlocn not defined (there is no metadata area). In most cases it fails in validate_name(), unfortunately there are situatuions, when validate_name is ok and later code fails with checksum error. Reproducer: # dd if=/dev/zero of=/dev/loop0 # pvcreate --metadatasize 637k /dev/loop0 Physical volume "/dev/loop0" successfully created # pvs /dev/loop0 /dev/loop0: Checksum error PV VG Fmt Attr PSize PFree /dev/loop0 lvm2 -- 1.00M 1.00M Signed-off-by: Milan Broz <mbroz@redhat.com> -
This commit is contained in:
parent
3361724033
commit
c3b50730b8
@ -1,5 +1,6 @@
|
||||
Version 2.02.45 - 3rd March 2009
|
||||
================================
|
||||
Avoid scanning empty metadata areas for VG names.
|
||||
Attempt proper clean up in child before executing new binary in exec_cmd().
|
||||
Do not scan devices if reporting only attributes from PV label.
|
||||
Use pkgconfig to obtain corosync library details during configuration.
|
||||
|
@ -1061,6 +1061,12 @@ const char *vgname_from_mda(const struct format_type *fmt,
|
||||
/* FIXME Cope with returning a list */
|
||||
rlocn = mdah->raw_locns;
|
||||
|
||||
/*
|
||||
* If no valid offset, do not try to search for vgname
|
||||
*/
|
||||
if (!rlocn->offset)
|
||||
goto out;
|
||||
|
||||
/* Do quick check for a vgname */
|
||||
if (!dev_read(dev_area->dev, dev_area->start + rlocn->offset,
|
||||
NAME_LEN, buf))
|
||||
|
Loading…
Reference in New Issue
Block a user