Re: [PATCH] update rwlock initialization for nat_table

From: Andrew Morton
Date: Thu Dec 11 2008 - 17:19:16 EST


On Wed, 10 Dec 2008 15:06:00 -0500 (EST)
Steven Rostedt <rostedt@xxxxxxxxxxx> wrote:

>
> The following patch is in:
>
> git://git.kernel.org/pub/scm/linux/kernel/git/rostedt/linux-2.6-trace.git
>
> branch: cleanups
>
>
> Steven Rostedt (1):
> update rwlock initialization for nat_table
>
> ----
> net/ipv4/netfilter/nf_nat_rule.c | 2 +-
> 1 files changed, 1 insertions(+), 1 deletions(-)
> ---------------------------
> commit d4175059c8f95e4cd58e0efaa85610ca59469fbd
> Author: Steven Rostedt <srostedt@xxxxxxxxxx>
> Date: Wed Dec 10 15:00:09 2008 -0500
>
> update rwlock initialization for nat_table
>
> Impact: clean up

It's more than a "cleanup"?

> The commit e099a173573ce1ba171092aee7bb3c72ea686e59
> (netfilter: netns nat: per-netns NAT table) renamed the
> nat_table from __nat_table to nat_table without updating the
> __RW_LOCK_UNLOCKED(__nat_table.lock).
>
> Signed-off-by: Steven Rostedt <srostedt@xxxxxxxxxx>
>
> diff --git a/net/ipv4/netfilter/nf_nat_rule.c b/net/ipv4/netfilter/nf_nat_rule.c
> index bea54a6..8d489e7 100644
> --- a/net/ipv4/netfilter/nf_nat_rule.c
> +++ b/net/ipv4/netfilter/nf_nat_rule.c
> @@ -61,7 +61,7 @@ static struct
> static struct xt_table nat_table = {
> .name = "nat",
> .valid_hooks = NAT_VALID_HOOKS,
> - .lock = __RW_LOCK_UNLOCKED(__nat_table.lock),
> + .lock = __RW_LOCK_UNLOCKED(nat_table.lock),
> .me = THIS_MODULE,
> .af = AF_INET,
> };

At present any lockdep messages relating to this lock will print the
wrong name. So it's a nanobug, I think?

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/