diff -Nur linux/net/ipv6/netfilter/ip6_tables.c linux.fixed/net/ipv6/netfilter/ip6_tables.c --- linux/net/ipv6/netfilter/ip6_tables.c Sat Aug 3 02:39:46 2002 +++ linux.fixed/net/ipv6/netfilter/ip6_tables.c Thu Sep 26 17:12:07 2002 @@ -98,10 +98,8 @@ unsigned int hook_entry[NF_IP6_NUMHOOKS]; unsigned int underflow[NF_IP6_NUMHOOKS]; - char padding[SMP_ALIGN((NF_IP6_NUMHOOKS*2+2)*sizeof(unsigned int))]; - /* ip6t_entry tables: one per CPU */ - char entries[0]; + char entries[0] ____cacheline_aligned; }; static LIST_HEAD(ip6t_target); @@ -1425,7 +1423,7 @@ int ret; struct ip6t_table_info *newinfo; static struct ip6t_table_info bootstrap - = { 0, 0, 0, { 0 }, { 0 }, { }, { } }; + = { 0, 0, 0, { 0 }, { 0 }, { } }; MOD_INC_USE_COUNT; newinfo = vmalloc(sizeof(struct ip6t_table_info)