Index: uspace/app/fdisk/fdisk.c
===================================================================
--- uspace/app/fdisk/fdisk.c	(revision d858a660afff3b05ffdfe37e6957b83b447f6b26)
+++ uspace/app/fdisk/fdisk.c	(revision b2906c096fbedc1a9cbec10ad51c63e093dd375c)
@@ -42,4 +42,6 @@
 #include <fdisk.h>
 
+#define NO_LABEL_CAPTION "(No name)"
+
 static bool quit = false;
 static fdisk_t *fdisk;
@@ -445,4 +447,5 @@
 	fdisk_cap_t cap;
 	fdisk_cap_t mcap;
+	vol_label_supp_t vlsupp;
 	vol_fstype_t fstype = 0;
 	tinput_t *tinput = NULL;
@@ -450,4 +453,5 @@
 	char *scap;
 	char *smcap = NULL;
+	char *label = NULL;
 
 	if (pkind == lpk_logical)
@@ -502,8 +506,31 @@
 	}
 
+	fdisk_get_vollabel_support(dev, fstype, &vlsupp);
+	if (vlsupp.supported) {
+		tinput = tinput_new();
+		if (tinput == NULL) {
+			rc = ENOMEM;
+			goto error;
+		}
+
+		rc = tinput_set_prompt(tinput, "?> ");
+		if (rc != EOK)
+			goto error;
+
+		/* Ask for volume label */
+		printf("Enter volume label for new partition.\n");
+		rc = tinput_read_i(tinput, "No name", &label);
+		if (rc != EOK)
+			goto error;
+
+	    	tinput_destroy(tinput);
+		tinput = NULL;
+	}
+
 	fdisk_pspec_init(&pspec);
 	pspec.capacity = cap;
 	pspec.pkind = pkind;
 	pspec.fstype = fstype;
+	pspec.label = label;
 
 	rc = fdisk_part_create(dev, &pspec, NULL);
@@ -513,7 +540,9 @@
 	}
 
+	free(label);
 	return EOK;
 error:
 	free(smcap);
+	free(label);
 	if (tinput != NULL)
 		tinput_destroy(tinput);
@@ -530,4 +559,5 @@
 	char *sfstype = NULL;
 	char *sdesc = NULL;
+	const char *label;
 	bool confirm;
 	void *sel;
@@ -577,5 +607,11 @@
 			}
 
-			rc = asprintf(&sdesc, "%s, %s, %s", scap, spkind, sfstype);
+			if (str_size(pinfo.label) > 0)
+				label = pinfo.label;
+			else
+				label = "(No name)";
+
+			rc = asprintf(&sdesc, "%s %s, %s, %s", label,
+			    scap, spkind, sfstype);
 			if (rc < 0) {
 				rc = ENOMEM;
@@ -773,5 +809,5 @@
 			label = pinfo.label;
 		else
-			label = "(No label)";
+			label = "(No name)";
 
 		if (linfo.ltype == lt_none)
