changeset 654:536de26a03b5

objstore: allow vdev allocation with import-only backends Some backends will not be able to create new vdevs - only import existing ones. Those backends still need a struct objstore_vdev. Therefore, we must allow the vdev structure allocation to succeed even if the backend definition doesn't contain a create_vdev op. Signed-off-by: Josef 'Jeff' Sipek <jeffpc@josefsipek.net>
author Josef 'Jeff' Sipek <jeffpc@josefsipek.net>
date Sat, 02 Mar 2019 20:49:13 -0500
parents 3ed1b2a6b2e9
children 9cab2dbc51d2
files src/objstore/vdev.c
diffstat 1 files changed, 2 insertions(+), 1 deletions(-) [+]
line wrap: on
line diff
--- a/src/objstore/vdev.c	Sat Mar 02 19:11:15 2019 -0500
+++ b/src/objstore/vdev.c	Sat Mar 02 20:49:13 2019 -0500
@@ -72,7 +72,8 @@
 	int ret;
 
 	backend = backend_lookup(type);
-	if (!backend || !backend->def->create_vdev)
+	if (!backend ||
+	    (!backend->def->create_vdev && !backend->def->import_vdev))
 		return ERR_PTR(-ENOTSUP);
 
 	vdev = mem_cache_alloc(vdev_cache);