grub-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Big Endian fix patch


From: Lennart Sorensen
Subject: Re: Big Endian fix patch
Date: Thu, 29 Jul 2010 11:30:57 -0400
User-agent: Mutt/1.5.18 (2008-05-17)

On Wed, Jul 28, 2010 at 04:46:39PM -0400, Doug Nazar wrote:
>  On 2010-07-28 2:49 PM, Lennart Sorensen wrote:
>>
>> mdadm: device 1 in /dev/md/0 has wrong state in superblock, but /dev/sdb2 
>> seems ok
>> mdadm: /dev/md/0 has been started with 2 drives.
>
> Ok, it was an endian issue. Here's the patch.
>
> Doug
>

> --- mdadm-3.1.2/super1.c      2010-03-09 18:26:44.000000000 -0500
> +++ mdadm-3.1.2.dev/super1.c  2010-07-28 16:41:41.000000000 -0400
> @@ -673,10 +673,10 @@
>               int d = info->disk.number;
>               int want;
>               if (info->disk.state == 6)
> -                     want = __cpu_to_le32(info->disk.raid_disk);
> +                     want = info->disk.raid_disk;
>               else
>                       want = 0xFFFF;
> -             if (sb->dev_roles[d] != want) {
> +             if (__le16_to_cpu(sb->dev_roles[d]) != want) {
>                       sb->dev_roles[d] = want;
>                       rv = 1;
>               }

Great.  That works.  Have you submitted that to the mdadm developers?

-- 
Len Sorensen



reply via email to

[Prev in Thread] Current Thread [Next in Thread]