Re: [PATCH] netlabel_domainhash.c: Use built-in RCU list checking
From: Paul Moore
Date: Tue Feb 18 2020 - 17:50:29 EST
On Tue, Feb 18, 2020 at 1:42 PM <madhuparnabhowmik10@xxxxxxxxx> wrote:
>
> From: Madhuparna Bhowmik <madhuparnabhowmik10@xxxxxxxxx>
>
> list_for_each_entry_rcu() has built-in RCU and lock checking.
>
> Pass cond argument to list_for_each_entry_rcu() to silence
> false lockdep warning when CONFIG_PROVE_RCU_LIST is enabled
> by default.
>
> Signed-off-by: Madhuparna Bhowmik <madhuparnabhowmik10@xxxxxxxxx>
> ---
> net/netlabel/netlabel_domainhash.c | 3 ++-
> 1 file changed, 2 insertions(+), 1 deletion(-)
Same as with the other patch.
Acked-by: Paul Moore <paul@xxxxxxxxxxxxxx>
> diff --git a/net/netlabel/netlabel_domainhash.c b/net/netlabel/netlabel_domainhash.c
> index f5d34da0646e..a1f2320ecc16 100644
> --- a/net/netlabel/netlabel_domainhash.c
> +++ b/net/netlabel/netlabel_domainhash.c
> @@ -143,7 +143,8 @@ static struct netlbl_dom_map *netlbl_domhsh_search(const char *domain,
> if (domain != NULL) {
> bkt = netlbl_domhsh_hash(domain);
> bkt_list = &netlbl_domhsh_rcu_deref(netlbl_domhsh)->tbl[bkt];
> - list_for_each_entry_rcu(iter, bkt_list, list)
> + list_for_each_entry_rcu(iter, bkt_list, list,
> + lockdep_is_held(&netlbl_domhsh_lock))
> if (iter->valid &&
> netlbl_family_match(iter->family, family) &&
> strcmp(iter->domain, domain) == 0)
> --
> 2.17.1
--
paul moore
www.paul-moore.com