[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-Id: <20160725.174451.328776654071356819.davem@davemloft.net>
Date: Mon, 25 Jul 2016 17:44:51 -0700 (PDT)
From: David Miller <davem@...emloft.net>
To: vegard.nossum@...cle.com
Cc: vyasevich@...il.com, nhorman@...driver.com,
linux-sctp@...r.kernel.org, netdev@...r.kernel.org,
lucien.xin@...il.com, herbert@...dor.apana.org.au,
stable@...r.kernel.org
Subject: Re: [PATCH] net/sctp: terminate rhashtable walk correctly
From: Vegard Nossum <vegard.nossum@...cle.com>
Date: Sat, 23 Jul 2016 09:42:35 +0200
> I was seeing a lot of these:
...
> Apparently we always need to call rhashtable_walk_stop(), even when
> rhashtable_walk_start() fails:
>
> * rhashtable_walk_start - Start a hash table walk
> * @iter: Hash table iterator
> *
> * Start a hash table walk. Note that we take the RCU lock in all
> * cases including when we return an error. So you must always call
> * rhashtable_walk_stop to clean up.
>
> otherwise we never call rcu_read_unlock() and we get the splat above.
>
> See-also: 53fa1036 ("sctp: fix some rhashtable functions using in sctp proc/diag")
> See-also: f2dba9c6 ("rhashtable: Introduce rhashtable_walk_*")
> Cc: Xin Long <lucien.xin@...il.com>
> Cc: Herbert Xu <herbert@...dor.apana.org.au>
> Cc: stable@...r.kernel.org
> Signed-off-by: Vegard Nossum <vegard.nossum@...cle.com>
Applied and queued up for -stable, thanks.
Powered by blists - more mailing lists