Can we get this fix merged in? Thanks ---------------- Robert LeBlanc PGP Fingerprint 79A2 9CA4 6CC4 45DD A904 C70E E654 3BB2 FA62 B9F1
On Thu, Nov 17, 2016 at 1:09 PM, Robert LeBlanc <rob...@leblancnet.us> wrote: > 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 <rob...@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 > _______________________________________________ Grub-devel mailing list Grub-devel@gnu.org https://lists.gnu.org/mailman/listinfo/grub-devel