lkml.org 
[lkml]   [2007]   [Oct]   [29]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    Date
    From
    Subject[PATCH] nf_nat_h323.c unneeded rcu_dereference() calls
    Hello!

    While reviewing rcu_dereference() uses, I came across a number of cases
    where I couldn't see how the rcu_dereference() helped. One class of
    cases is where the variable is never subsequently dereferenced, so that
    patches like the following one would be appropriate.

    So, what am I missing here?

    Signed-off-by: Paul E. McKenney <paulmck@linux.vnet.ibm.com>
    ---

    nf_nat_h323.c | 18 +++++++++---------
    1 file changed, 9 insertions(+), 9 deletions(-)

    diff -urpNa -X dontdiff linux-2.6.23/net/ipv4/netfilter/nf_nat_h323.c linux-2.6.23-rcufix/net/ipv4/netfilter/nf_nat_h323.c
    --- linux-2.6.23/net/ipv4/netfilter/nf_nat_h323.c 2007-10-09 13:31:38.000000000 -0700
    +++ linux-2.6.23-rcufix/net/ipv4/netfilter/nf_nat_h323.c 2007-10-29 14:00:13.000000000 -0700
    @@ -546,15 +546,15 @@ static int nat_callforwarding(struct sk_
    /****************************************************************************/
    static int __init init(void)
    {
    - BUG_ON(rcu_dereference(set_h245_addr_hook) != NULL);
    - BUG_ON(rcu_dereference(set_h225_addr_hook) != NULL);
    - BUG_ON(rcu_dereference(set_sig_addr_hook) != NULL);
    - BUG_ON(rcu_dereference(set_ras_addr_hook) != NULL);
    - BUG_ON(rcu_dereference(nat_rtp_rtcp_hook) != NULL);
    - BUG_ON(rcu_dereference(nat_t120_hook) != NULL);
    - BUG_ON(rcu_dereference(nat_h245_hook) != NULL);
    - BUG_ON(rcu_dereference(nat_callforwarding_hook) != NULL);
    - BUG_ON(rcu_dereference(nat_q931_hook) != NULL);
    + BUG_ON(set_h245_addr_hook != NULL);
    + BUG_ON(set_h225_addr_hook != NULL);
    + BUG_ON(set_sig_addr_hook != NULL);
    + BUG_ON(set_ras_addr_hook != NULL);
    + BUG_ON(nat_rtp_rtcp_hook != NULL);
    + BUG_ON(nat_t120_hook != NULL);
    + BUG_ON(nat_h245_hook != NULL);
    + BUG_ON(nat_callforwarding_hook != NULL);
    + BUG_ON(nat_q931_hook != NULL);

    rcu_assign_pointer(set_h245_addr_hook, set_h245_addr);
    rcu_assign_pointer(set_h225_addr_hook, set_h225_addr);
    -
    To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
    the body of a message to majordomo@vger.kernel.org
    More majordomo info at http://vger.kernel.org/majordomo-info.html
    Please read the FAQ at http://www.tux.org/lkml/
    \
     
     \ /
      Last update: 2007-10-29 22:09    [W:0.046 / U:1.160 seconds]
    ©2003-2016 Jasper Spaans. hosted at Digital OceanAdvertise on this site