Re: [PATCH] netlabel: Fix several rcu_dereference() calls used without RCU read locks

Eric Dumazet
2010-04-01T20:56:52Z

Le jeudi 01 avril 2010 à 16:43 -0400, Paul Moore a écrit :
> The recent changes to add RCU lock verification to rcu_dereference() calls
> caught out a problem with netlbl_unlhsh_hash(), see below.
>
> ===================================================
> [ INFO: suspicious rcu_dereference_check() usage. ]
> ---------------------------------------------------
> net/netlabel/netlabel_unlabeled.c:246 invoked rcu_dereference_check()
> without protection!
>
> This patch fixes this problem as well as others like it in the NetLabel
> code. Also included in this patch is the identification of future work
> to eliminate the RCU read lock in netlbl_domhsh_add(), but in the interest
> of getting this patch out quickly that work will happen in another patch
> to be finished later.
>
> Thanks to Eric Dumazet and Paul McKenney for their help in understanding
> the recent RCU changes.
>
> Signed-off-by: Paul Moore <paul.moore@hp.com>
> Reported-by: David Howells <dhowells@redhat.com>
> CC: Eric Dumazet <eric.dumazet@gmail.com>
> CC: Paul E. McKenney <paulmck@linux.vnet.ibm.com>
> ---
> net/netlabel/netlabel_domainhash.c | 28 ++++++++++-----
> net/netlabel/netlabel_unlabeled.c | 66 ++++++++++--------------------------
> 2 files changed, 37 insertions(+), 57 deletions(-)
>

Acked-by: Eric Dumazet <eric.dumazet@gmail.com>

Thanks Paul