From: Zdenek Kabelac Date: Wed, 1 Dec 2010 10:33:55 +0000 (+0000) Subject: Fallback to full rescan for missing device X-Git-Tag: v2_02_78~10 X-Git-Url: https://sourceware.org/git/?a=commitdiff_plain;h=a2f563f84f71f772e5109ca24da23eb1251e1aba;p=lvm2.git Fallback to full rescan for missing device Fix bug when NULL could have been passsed as 'data' to _add_pv_to_list() if 'dev' is NULL. Now it fallbacks to complete scan. --- diff --git a/WHATS_NEW b/WHATS_NEW index 09f976325..833b8a70d 100644 --- a/WHATS_NEW +++ b/WHATS_NEW @@ -1,5 +1,6 @@ Version 2.02.78 - ==================================== + Do a full rescan if some device is missing in read_pvs_in_vg(). Avoid misleading warnings in vgextend --restoremissing in certain cases. Add error path stack traces for _process_mapper_dir(), _create_and_load_v4(). Add missing test for failed pool allocation in write_config_node(). diff --git a/lib/format1/disk-rep.c b/lib/format1/disk-rep.c index bc5874424..071b39dd8 100644 --- a/lib/format1/disk-rep.c +++ b/lib/format1/disk-rep.c @@ -471,7 +471,7 @@ int read_pvs_in_vg(const struct format_type *fmt, const char *vg_name, vginfo->infos.n) { dm_list_iterate_items(info, &vginfo->infos) { dev = info->dev; - if (dev && !(data = read_disk(fmt, dev, mem, vg_name))) + if (!dev || !(data = read_disk(fmt, dev, mem, vg_name))) break; _add_pv_to_list(head, data); }