svn commit: r219058 - head/usr.sbin/bsdinstall/partedit

Nathan Whitehorn nwhitehorn at FreeBSD.org
Sat Feb 26 15:44:04 UTC 2011


Author: nwhitehorn
Date: Sat Feb 26 15:44:03 2011
New Revision: 219058
URL: http://svn.freebsd.org/changeset/base/219058

Log:
  Show disk model numbers in partition wizard screen. Also, since da(4) disks
  are probably more likely to be USB or Firewire these days than SCSI, just
  call them and anyone unknown "Disk" instead of SCSI disk.

Modified:
  head/usr.sbin/bsdinstall/partedit/part_wizard.c

Modified: head/usr.sbin/bsdinstall/partedit/part_wizard.c
==============================================================================
--- head/usr.sbin/bsdinstall/partedit/part_wizard.c	Sat Feb 26 15:23:46 2011	(r219057)
+++ head/usr.sbin/bsdinstall/partedit/part_wizard.c	Sat Feb 26 15:44:03 2011	(r219058)
@@ -89,7 +89,7 @@ boot_disk(struct gmesh *mesh)
 	struct ggeom *gp;
 	struct gprovider *pp;
 	DIALOG_LISTITEM *disks = NULL;
-	const char *type;
+	const char *type, *desc;
 	char diskdesc[512];
 	char *chosen;
 	int i, err, selected, n = 0;
@@ -104,15 +104,20 @@ boot_disk(struct gmesh *mesh)
 				continue;
 
 			LIST_FOREACH(pp, &gp->lg_provider, lg_provider) {
-				type = NULL;
-				LIST_FOREACH(gc, &pp->lg_config, lg_config) 
+				desc = type = NULL;
+				LIST_FOREACH(gc, &pp->lg_config, lg_config) {
 					if (strcmp(gc->lg_name, "type") == 0) 
 						type = gc->lg_val;
+					if (strcmp(gc->lg_name, "descr") == 0) 
+						desc = gc->lg_val;
+				}
 
-				/* Skip swap-backed md devices */
+				/* Skip swap-backed md and WORM devices */
 				if (strcmp(classp->lg_name, "MD") == 0 &&
 				    type != NULL && strcmp(type, "swap") == 0)
 					continue;
+				if (strncmp(pp->lg_name, "cd", 2) == 0)
+					continue;
 
 				disks = realloc(disks, (++n)*sizeof(disks[0]));
 				disks[n-1].name = pp->lg_name;
@@ -120,15 +125,15 @@ boot_disk(struct gmesh *mesh)
 				    "B", HN_AUTOSCALE, HN_DECIMAL);
 				if (strncmp(pp->lg_name, "ad", 2) == 0)
 					strcat(diskdesc, " ATA Hard Disk");
-				else if (strncmp(pp->lg_name, "da", 2) == 0)
-					strcat(diskdesc, " SCSI Hard Disk");
 				else if (strncmp(pp->lg_name, "md", 2) == 0)
 					strcat(diskdesc, " Memory Disk");
-				else if (strncmp(pp->lg_name, "cd", 2) == 0) {
-					n--;
-					continue;
-				} else
-					strcat(diskdesc, " Hard Disk");
+				else
+					strcat(diskdesc, " Disk");
+
+				if (desc != NULL)
+					snprintf(diskdesc, sizeof(diskdesc),
+					    "%s <%s>", diskdesc, desc);
+
 				disks[n-1].text = strdup(diskdesc);
 				disks[n-1].help = NULL;
 				disks[n-1].state = 0;


More information about the svn-src-all mailing list