Messages in this thread Patch in this message | | | Date | Sun, 21 Jul 2013 22:53:52 +0200 | From | Hannes Frederic Sowa <> | Subject | Re: [BUG] ipv6, rawv6_close(): BUG: unable to handle kernel paging request |
| |
On Sun, Jul 21, 2013 at 11:58:13PM +0530, Srivatsa S. Bhat wrote: > I'm seeing this on every boot. > > Version: Latest mainline (commit ea45ea70b)
Thanks for the report! Could you try the following patch?
diff --git a/net/ipv6/ip6mr.c b/net/ipv6/ip6mr.c index 583e8d4..373906c 100644 --- a/net/ipv6/ip6mr.c +++ b/net/ipv6/ip6mr.c @@ -1601,9 +1601,9 @@ int ip6mr_sk_done(struct sock *sk) struct mr6_table *mrt; rtnl_lock(); + write_lock_bh(&mrt_lock); ip6mr_for_each_table(mrt, net) { if (sk == mrt->mroute6_sk) { - write_lock_bh(&mrt_lock); mrt->mroute6_sk = NULL; net->ipv6.devconf_all->mc_forwarding--; inet6_netconf_notify_devconf(net, @@ -1611,14 +1611,14 @@ int ip6mr_sk_done(struct sock *sk) NETCONFA_IFINDEX_ALL, net->ipv6.devconf_all); write_unlock_bh(&mrt_lock); - mroute_clean_tables(mrt); err = 0; - break; + goto out; } } + write_unlock_bh(&mrt_lock); +out: rtnl_unlock(); - return err; }
| |