From: Richard Laager <rlaager@wiktel.com>
Date: Mon, 9 Jan 2012 22:50:26 +0000 (-0600)
Subject: Treat /dev/vd* as whole disks
X-Git-Tag: zfs-0.6.0-rc7~43
X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=2932b6a8004df8417036894d7d2e7e151cc95434;p=zfs

Treat /dev/vd* as whole disks

Correctly detect /dev/vd devices as whole disks and attempt to
create an EFI partition table.

Signed-off-by: Brian Behlendorf <behlendorf1@llnl.gov>
---

diff --git a/lib/libefi/rdwr_efi.c b/lib/libefi/rdwr_efi.c
index 43a5310a3..c317d24f8 100644
--- a/lib/libefi/rdwr_efi.c
+++ b/lib/libefi/rdwr_efi.c
@@ -196,6 +196,12 @@ efi_get_info(int fd, struct dk_cinfo *dki_info)
 		rval = sscanf(dev_path, "/dev/%[a-zA-Z0-9]p%hu",
 			      dki_info->dki_dname,
 			      &dki_info->dki_partition);
+	} else if ((strncmp(dev_path, "/dev/vd", 7) == 0)) {
+		strcpy(dki_info->dki_cname, "vd");
+		dki_info->dki_ctype = DKC_MD;
+		rval = sscanf(dev_path, "/dev/%[a-zA-Z]%hu",
+			      dki_info->dki_dname,
+			      &dki_info->dki_partition);
 	} else if ((strncmp(dev_path, "/dev/dm-", 8) == 0)) {
 		strcpy(dki_info->dki_cname, "pseudo");
 		dki_info->dki_ctype = DKC_VBD;