diff options
Diffstat (limited to 'tools/pvscan.c')
-rw-r--r-- | tools/pvscan.c | 10 |
1 files changed, 9 insertions, 1 deletions
diff --git a/tools/pvscan.c b/tools/pvscan.c index df38e1758..f8d27372b 100644 --- a/tools/pvscan.c +++ b/tools/pvscan.c @@ -1546,7 +1546,15 @@ static int _pvscan_cache_args(struct cmd_context *cmd, int argc, char **argv, label_scan_setup_bcache(); dm_list_iterate_items_safe(devl, devl2, &pvscan_devs) { - if (!label_read_pvid(devl->dev)) { + int has_pvid; + + if (!label_read_pvid(devl->dev, &has_pvid)) { + log_print("pvscan[%d] %s cannot read.", getpid(), dev_name(devl->dev)); + dm_list_del(&devl->list); + continue; + } + + if (!has_pvid) { /* Not an lvm device */ log_print("pvscan[%d] %s not an lvm device.", getpid(), dev_name(devl->dev)); dm_list_del(&devl->list); |