netfilter: ebtables: fix alignment problem in ppc
authorJoerg Willmann <joe@clnt.de>
Tue, 21 Feb 2012 12:26:14 +0000 (13:26 +0100)
committerPablo Neira Ayuso <pablo@netfilter.org>
Tue, 21 Feb 2012 12:29:06 +0000 (13:29 +0100)
commit88ba136d6635b262f77cc418d536115fb8e4d4ab
tree06d47a761e51c3f8c7546ea91be4b291a482d493
parenta8db7b2d197a0d624baab83f0c810b0edbc4ffd0
netfilter: ebtables: fix alignment problem in ppc

ebt_among extension of ebtables uses __alignof__(_xt_align) while the
corresponding kernel module uses __alignof__(ebt_replace) to determine
the alignment in EBT_ALIGN().

These are the results of these values on different platforms:

x86 x86_64 ppc
__alignof__(_xt_align) 4 8 8
__alignof__(ebt_replace) 4 8 4

ebtables fails to add rules which use the among extension.

I'm using kernel 2.6.33 and ebtables 2.0.10-4

According to Bart De Schuymer, userspace alignment was changed to
_xt_align to fix an alignment issue on a userspace32-kernel64 system
(he thinks it was for an ARM device). So userspace must be right.
The kernel alignment macro needs to change so it also uses _xt_align
instead of ebt_replace. The userspace changes date back from
June 29, 2009.

Signed-off-by: Joerg Willmann <joe@clnt.de>
Signed-off by: Bart De Schuymer <bdschuym@pandora.be>
Signed-off-by: Pablo Neira Ayuso <pablo@netfilter.org>
include/linux/netfilter_bridge/ebtables.h