[DRBD-user] DRBD - on ARM (armel)
Nick
nickdrbd at alfiecam.co.uk
Thu Jun 11 17:07:48 CEST 2009
Unfortunately this gives a compile error..., and as it turns out,
according to
http://www.bristol.ac.uk/acrc/RedHat/rhel-gcc-en-4/invoking-gcc.html
This options is not available for the ARM CPU.
Nick
Lars Ellenberg wrote:
> On Thu, Jun 11, 2009 at 11:02:41AM +0100, Nick wrote:
>
>> Please excuse my previous email with no details.... here is a patch that
>> addresses the first issue I am seeing on the ARM platform.
>>
>> This addresses the issue of the 'Unknown tag' error. As you suspected
>> this is an alignment issue, if the data (in my case /dev/loop0 + NULL
>> byte) has an odd size, the previous code failed to store the tag, for
>> the subsequent parameter, due to the data pointer not falling on a word
>> boundary. This fixes it for ARM, and it continues to work on i386,
>> however I am not sure about other platforms, perhaps this would be an
>> issue on big endian platforms, since the add_tag function takes the tag
>> and size as an int, rather than a short.
>>
>> Hopefully this will be the only issue I have!
>>
>
> Thanks.
> There may be more similar places in the code.
>
> Yes, probably the tag and size arguments should be short, not int,
> or your fix would break on big endian.
>
> please try instead of your fix to add to CFLAGS in Makefile:
> -drbdsetup drbdmeta: CFLAGS += -fno-strict-aliasing
> +drbdsetup drbdmeta: CFLAGS += -fno-strict-aliasing -mno-strict-align
>
> if that works, we can just leave it to the compiler.
>
>
More information about the drbd-user
mailing list