[PATCH] sysfs layout fix for md
diff --git a/fio.c b/fio.c
index 2fb7da9..9dd8e24 100644
--- a/fio.c
+++ b/fio.c
@@ -1599,17 +1599,23 @@
 		return;
 
 	/*
-	 * if this is inside a partition dir, jump back to parent
+	 * for md/dm, there's no queue dir. we already have the right place
 	 */
-	sprintf(tmp, "%s/queue", foo);
+	sprintf(tmp, "%s/stat", foo);
 	if (stat(tmp, &st)) {
-		p = dirname(foo);
-		sprintf(tmp, "%s/queue", p);
+		/*
+		 * if this is inside a partition dir, jump back to parent
+		 */
+		sprintf(tmp, "%s/queue", foo);
 		if (stat(tmp, &st)) {
-			fprintf(stderr, "unknown sysfs layout\n");
-			return;
+			p = dirname(foo);
+			sprintf(tmp, "%s/queue", p);
+			if (stat(tmp, &st)) {
+				fprintf(stderr, "unknown sysfs layout\n");
+				return;
+			}
+			sprintf(foo, "%s", p);
 		}
-		sprintf(foo, "%s", p);
 	}
 
 	disk_util_add(dev, foo);