On Friday 2009-05-29 13:14, sachin sanap wrote: >Sorry dint inform you earlier that iam on 32bit ARM machine. >The real problem is the kernel is computing the alignment on >__alignof__(struct _xt_align) and the userspace ebtables is computing >it on __alignof__(struct ebt_entry_target) , which are two different >structs. > >I have the following patch for ebtables-v2.0.8-2 that fixes this. >@@ -37,7 +38,7 @@ > #define EXEC_STYLE_DAEMON 1 > > #ifndef EBT_MIN_ALIGN >-#define EBT_MIN_ALIGN (__alignof__(struct ebt_entry_target)) >+#define EBT_MIN_ALIGN (__alignof__(struct _xt_align)) > #endif > #define EBT_ALIGN(s) (((s) + (EBT_MIN_ALIGN-1)) & ~(EBT_MIN_ALIGN-1)) > #define ERRORMSG_MAXLEN 128 Can you run this, just to give me a better understanding of ARM32? #include <stdio.h> #include <stdint.h> #define p(t) \ printf(#t ": %zu\n", __alignof__(t)); int main(void) { p(uint8_t); p(uint16_t); p(uint32_t); p(uint64_t); p(float); p(double); p(void *); p(void (*)(void)); } -- To unsubscribe from this list: send the line "unsubscribe netfilter-devel" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html