[Devel] [PATCH] table->lock initialization move

Dmitry Mishin dim at openvz.org
Mon Apr 17 04:14:01 PDT 2006


xt_table->lock should be initialized before xt_replace_table() call, which 
uses it. This patch removes strict requirement, that table should define lock 
before registering.

Signed-off-by: Dmitry Mishin <dim at openvz.org>
Signed-off-by: Kirill Korotaev <dev at openvz.org>

-- 
Thanks,
Dmitry.
-------------- next part --------------
diff --git a/net/netfilter/x_tables.c b/net/netfilter/x_tables.c
index 00cf0a4..17abf60 100644
--- a/net/netfilter/x_tables.c
+++ b/net/netfilter/x_tables.c
@@ -529,6 +529,7 @@ int xt_register_table(struct xt_table *t
 
 	/* Simplifies replace_table code. */
 	table->private = bootstrap;
+	rwlock_init(&table->lock);
 	if (!xt_replace_table(table, 0, newinfo, &ret))
 		goto unlock;
 
@@ -538,7 +539,6 @@ int xt_register_table(struct xt_table *t
 	/* save number of initial entries */
 	private->initial_entries = private->number;
 
-	rwlock_init(&table->lock);
 	list_prepend(&xt[table->af].tables, table);
 
 	ret = 0;


More information about the Devel mailing list