Index: uspace/srv/bd/vbd/disk.c
===================================================================
--- uspace/srv/bd/vbd/disk.c	(revision 3a43785aa3ecab0d25624bf56ffb9c5f937cd6d8)
+++ uspace/srv/bd/vbd/disk.c	(revision 6a0db5246ebe1f985f9eae45d0da15441c18fd2f)
@@ -490,4 +490,6 @@
 
 	rc = label_get_info(disk->label, &linfo);
+	if (rc != EOK)
+		return rc;
 
 	info->ltype = linfo.ltype;
@@ -534,4 +536,5 @@
 {
 	label_t *label;
+	label_info_t linfo;
 	vbds_disk_t *disk;
 	int rc;
@@ -545,4 +548,14 @@
 
 	log_msg(LOG_DEFAULT, LVL_NOTE, "vbds_label_create(%zu) - label_close", sid);
+
+	/* Verify that current label is a dummy label */
+	rc = label_get_info(disk->label, &linfo);
+	if (rc != EOK)
+		return rc;
+
+	if (linfo.ltype != lt_none) {
+		log_msg(LOG_DEFAULT, LVL_ERROR, "Label already exists.");
+		return EEXIST;
+	}
 
 	/* Close dummy label first */
