[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: ip6tables on sparc32: filter Table does not exist



On Tue, 18 Feb 2003, Peter Keel wrote:

> Hello
>
> I finally managed to compile 2.4.20 on my SS10. Since I recently got
> 2001:8A8:30:30::/60  I now definitely want to do ipv6. It works, BUT:
>
> josephine:~# ip6tables -L
> ip6tables v1.2.6a: can't initialize ip6tables table `filter': Table
> does not exist (do you need to insmod?)
> Perhaps iptables or your kernel needs to be upgraded.
>
> This happens with the stock kernel, but also with the usagi-patch.
> So there's definitly something amess with the kernel itself.
Here is the patch I used to get it to work on 2.4.20.  I forget who sent
me the original patch for 2.4.19, but here goes..

Regards,

Aaron

--- net/ipv6/netfilter/ip6_tables.c.orig	2002-11-28 18:53:15.000000000 -0500
+++ net/ipv6/netfilter/ip6_tables.c	2003-02-10 04:32:43.000000000 -0500
@@ -101,10 +101,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);
@@ -1450,8 +1448,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)
 			  + SMP_ALIGN(table->table->size) * smp_num_cpus);



Reply to: