zbyszek / rpms / grub2

Forked from rpms/grub2 5 years ago
Clone
31004e6
From 0b3feb00d9d845ab95f2640c0f0336fd5a663d8d Mon Sep 17 00:00:00 2001
31004e6
From: Vladimir 'phcoder' Serbinenko <phcoder@gmail.com>
31004e6
Date: Mon, 15 Apr 2013 08:37:13 +0200
f74b50e
Subject: [PATCH 317/482] 	Fix DMRAID partition handling.
31004e6
31004e6
---
31004e6
 ChangeLog      | 4 ++++
31004e6
 util/getroot.c | 4 ++++
31004e6
 2 files changed, 8 insertions(+)
31004e6
31004e6
diff --git a/ChangeLog b/ChangeLog
31004e6
index db6076c..2dcf1f5 100644
31004e6
--- a/ChangeLog
31004e6
+++ b/ChangeLog
31004e6
@@ -1,5 +1,9 @@
31004e6
 2013-04-15  Vladimir Serbinenko  <phcoder@gmail.com>
31004e6
 
31004e6
+	Fix DMRAID partition handling.
31004e6
+
31004e6
+2013-04-15  Vladimir Serbinenko  <phcoder@gmail.com>
31004e6
+
31004e6
 	* tests/grub_cmd_date.in: Skip on sparc64.
31004e6
 
31004e6
 2013-04-15  Vladimir Serbinenko  <phcoder@gmail.com>
31004e6
diff --git a/util/getroot.c b/util/getroot.c
31004e6
index 4ea8e65..ecf7ce1 100644
31004e6
--- a/util/getroot.c
31004e6
+++ b/util/getroot.c
31004e6
@@ -1956,6 +1956,7 @@ convert_system_partition_to_system_disk (const char *os_dev, struct stat *st,
31004e6
 	      grub_util_info ("dm_tree_find_node failed");
31004e6
 	      goto devmapper_out;
31004e6
 	    }
31004e6
+	reiterate:
31004e6
 	  node_uuid = dm_tree_node_get_uuid (node);
31004e6
 	  if (! node_uuid)
31004e6
 	    {
31004e6
@@ -2030,6 +2031,9 @@ convert_system_partition_to_system_disk (const char *os_dev, struct stat *st,
31004e6
 	      goto devmapper_out;
31004e6
 	    }
31004e6
 	  mapper_name = child_name;
31004e6
+	  *is_part = 1;
31004e6
+	  node = child;
31004e6
+	  goto reiterate;
31004e6
 
31004e6
 devmapper_out:
31004e6
 	  if (! mapper_name && node)
31004e6
-- 
31004e6
1.8.2.1
31004e6