diff --git a/src/storage/storage_backend_fs.c b/src/storage/storage_backend_fs.c index f0ef07b2fa..f4341f32cf 100644 --- a/src/storage/storage_backend_fs.c +++ b/src/storage/storage_backend_fs.c @@ -605,8 +605,17 @@ static int virStorageBackendFileSystemStart(virConnectPtr conn ATTRIBUTE_UNUSED, virStoragePoolObjPtr pool) { - if (pool->def->type != VIR_STORAGE_POOL_DIR && - virStorageBackendFileSystemMount(pool) < 0) + const char *format = + virStoragePoolFormatFileSystemTypeToString(pool->def->source.format); + const char *path = pool->def->source.devices[0].path; + + if (pool->def->type == VIR_STORAGE_POOL_DIR) + return 0; + + if (!virStorageBackendDeviceIsEmpty(path, format, false)) + return -1; + + if (virStorageBackendFileSystemMount(pool) < 0) return -1; return 0;