Re: [RFC][PATCH] identify in_dev_get rcu read-side critical sections

From: Herbert Xu (herbert_at_gondor.apana.org.au)
Date: 10/01/05

  • Next message: David Brownell: "Re: [PATCH] usb/core/hcd-pci.c: don't free_irq() on suspend"
    Date:	Sat, 1 Oct 2005 11:13:12 +1000
    To: Suzanne Wood <suzannew@cs.pdx.edu>
    
    
    

    On Thu, Sep 29, 2005 at 06:06:50PM -0700, Suzanne Wood wrote:
    >
    > Are there three cases then? RCU protection with refcnt, RCU without refcnt,
    > and the bare cast of the dereference?

    Correct.

    The following patch renames __in_dev_get() to __in_dev_get_rtnl() and
    introduces __in_dev_get_rcu() to cover the second case.

    1) RCU with refcnt should use in_dev_get().
    2) RCU without refcnt should use __in_dev_get_rcu().
    3) All others must hold RTNL and use __in_dev_get_rtnl().

    There is one exception in net/ipv4/route.c which is in fact a pre-existing
    race condition. I've marked it as such so that we remember to fix it.

    This patch is based on suggestions and prior work by Suzanne Wood and
    Paul McKenney.

    Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>

    Cheers,

    -- 
    Visit Openswan at http://www.openswan.org/
    Email: Herbert Xu ~{PmV>HI~} <herbert@gondor.apana.org.au>
    Home Page: http://gondor.apana.org.au/~herbert/
    PGP Key: http://gondor.apana.org.au/~herbert/pubkey.txt
    
    

    -
    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/



  • Next message: David Brownell: "Re: [PATCH] usb/core/hcd-pci.c: don't free_irq() on suspend"

    Relevant Pages

    • Re: [RFC][PATCH] identify in_dev_get rcu read-side critical sections
      ... RCU protection with refcnt, RCU without refcnt, ... >> and the bare cast of the dereference? ... send the line "unsubscribe linux-kernel" in ...
      (Linux-Kernel)
    • [patch 0/7] lockless pagecache 2
      ... Code clarity and commenting improvement. ... RCU attempt - completely wrong?). ... Send instant messages to your online friends http://au.messenger.yahoo.com ... send the line "unsubscribe linux-kernel" in ...
      (Linux-Kernel)
    • Re: [RFC] Lock free fd lookup
      ... > rwlocks in read-mostly situations like this, ... Given the read heavy assumption that RCU makes (supported by your ... benchmarks), I believe that the comparison with RCU vs. current scheme ... send the line "unsubscribe linux-kernel" in ...
      (Linux-Kernel)
    • Re: RCU issue with SELinux (Re: SELINUX performance issues)
      ... > to control the audit-log floods. ... > This adverse effect is only that audit-logs are printed twice. ... > Thank you for the opinion as a specialist of RCU! ... send the line "unsubscribe linux-kernel" in ...
      (Linux-Kernel)
    • Re: [PATCH 2.6] watch64: generic variable monitoring system
      ... If he tries to specify shorter ... Does it really need RCU and seqlock, ... send the line "unsubscribe linux-kernel" in ...
      (Linux-Kernel)