[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


This options is not available for the ARM CPU.


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