grub-devel.gnu.org archive mirror
 help / color / mirror / Atom feed
* [PATCH] disk/mdraid1x: Fix >2TB RAID detection with BIOS
@ 2016-11-17 20:09 Robert LeBlanc
  2016-11-18  4:16 ` Andrei Borzenkov
  2017-01-11 17:21 ` Robert LeBlanc
  0 siblings, 2 replies; 20+ messages in thread
From: Robert LeBlanc @ 2016-11-17 20:09 UTC (permalink / raw)
  To: robert, grub-devel

When a mdadm RAID array is on a drive larger than 2TB, the array is not
able to be detected and as such even if the array has a partition that
holds /boot under the 2TB limit, it is unable to boot the machine. This
is caused by metadata 1.0 being tested first which allocates the
superblock at the end of the device. When it tries to access the end of
the device it throws an error and the code returns without trying to
find the superblock at other locations (metadata 1.1 and 1.2). This
patch changes the error to not be fatal and allow for the checking for
the other metadata versions and allowing the machine to boot as long as
/boot is under the 2TB BIOS limit. This won't cause issues with 1.0
metadata because GRUB is able to read the partitions from the front of
the drive/partition without having to determine the data offset, since
the data for metadata 1.0 starts at sector 0.

Signed-off-by: Robert LeBlanc <robert@leblancnet.us>
---
 grub-core/disk/mdraid1x_linux.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/grub-core/disk/mdraid1x_linux.c b/grub-core/disk/mdraid1x_linux.c
index 7cc80d3..cc7350c 100644
--- a/grub-core/disk/mdraid1x_linux.c
+++ b/grub-core/disk/mdraid1x_linux.c
@@ -148,7 +148,7 @@ grub_mdraid_detect (grub_disk_t disk,
 
       if (grub_disk_read (disk, sector, 0, sizeof (struct grub_raid_super_1x),
 			  &sb))
-	return NULL;
+	continue;
 
       if (sb.magic != grub_cpu_to_le32_compile_time (SB_MAGIC)
 	  || grub_le_to_cpu64 (sb.super_offset) != sector)
-- 
2.10.1



^ permalink raw reply related	[flat|nested] 20+ messages in thread

end of thread, other threads:[~2017-01-24 17:23 UTC | newest]

Thread overview: 20+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2016-11-17 20:09 [PATCH] disk/mdraid1x: Fix >2TB RAID detection with BIOS Robert LeBlanc
2016-11-18  4:16 ` Andrei Borzenkov
2016-11-18 16:49   ` Robert LeBlanc
2016-11-18 17:31     ` Andrei Borzenkov
2016-11-18 18:06       ` Robert LeBlanc
2016-11-18 18:15         ` Andrei Borzenkov
2016-11-18 18:19           ` Robert LeBlanc
2016-11-18 18:24             ` Andrei Borzenkov
2016-11-18 20:43               ` Robert LeBlanc
2016-11-19  8:59                 ` Andrei Borzenkov
2016-11-19 17:57                   ` Robert LeBlanc
2016-11-19 18:40                     ` Andrei Borzenkov
2016-11-20  2:47                       ` Robert LeBlanc
2016-11-20  3:38                         ` Robert LeBlanc
2016-11-20  6:53                         ` Andrei Borzenkov
2016-11-22 19:00                           ` Robert LeBlanc
2016-12-06 16:59                             ` Robert LeBlanc
2017-01-11 17:21 ` Robert LeBlanc
2017-01-24  9:57   ` Vladimir 'phcoder' Serbinenko
2017-01-24 17:22     ` Robert LeBlanc

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).