* grub-core/fs/btrfs.c (grub_btrfs_read_logical): Fix RAID10 logic for

>= 6 drives.
This commit is contained in:
Vladimir 'phcoder' Serbinenko 2011-11-10 08:09:33 +01:00
parent 28840fdaae
commit 6b68db81fc
2 changed files with 9 additions and 5 deletions

View file

@ -1,3 +1,8 @@
2011-11-10 Vladimir Serbinenko <phcoder@gmail.com>
* grub-core/fs/btrfs.c (grub_btrfs_read_logical): Fix RAID10 logic for
>= 6 drives.
2011-11-10 Vladimir Serbinenko <phcoder@gmail.com> 2011-11-10 Vladimir Serbinenko <phcoder@gmail.com>
* include/grub/i386/netbsd_bootinfo.h (grub_netbsd_btinfo_bootwedge): * include/grub/i386/netbsd_bootinfo.h (grub_netbsd_btinfo_bootwedge):

View file

@ -734,12 +734,11 @@ grub_btrfs_read_logical (struct grub_btrfs_data *data, grub_disk_addr_t addr,
&low); &low);
high = grub_divmod64 (middle, high = grub_divmod64 (middle,
grub_le_to_cpu16 (chunk->nsubstripes), grub_le_to_cpu16 (chunk->nstripes)
/ grub_le_to_cpu16 (chunk->nsubstripes),
&stripen); &stripen);
stripen *= grub_le_to_cpu16 (chunk->nstripes) stripen *= grub_le_to_cpu16 (chunk->nsubstripes);
/ grub_le_to_cpu16 (chunk->nsubstripes); redundancy = grub_le_to_cpu16 (chunk->nsubstripes);
redundancy = grub_le_to_cpu16 (chunk->nstripes)
/ grub_le_to_cpu16 (chunk->nsubstripes);
stripe_offset = low + grub_le_to_cpu64 (chunk->stripe_length) stripe_offset = low + grub_le_to_cpu64 (chunk->stripe_length)
* high; * high;
csize = grub_le_to_cpu64 (chunk->stripe_length) - low; csize = grub_le_to_cpu64 (chunk->stripe_length) - low;