lkml.org 
[lkml]   [2018]   [Jun]   [1]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    Date
    From
    SubjectRe: [PATCH 08/18] rhashtable: clean up dereference of ->future_tbl.
    On Fri, Jun 01, 2018 at 02:44:09PM +1000, NeilBrown wrote:
    > Using rht_dereference_bucket() to dereference
    > ->future_tbl looks like a type error, and could be confusing.
    > Using rht_dereference_rcu() to test a pointer for NULL
    > adds an unnecessary barrier - rcu_access_pointer() is preferred
    > for NULL tests when no lock is held.
    >
    > This uses 3 different ways to access ->future_tbl.
    > - if we know the mutex is held, use rht_dereference()
    > - if we don't hold the mutex, and are only testing for NULL,
    > use rcu_access_pointer()
    > - otherwise (using RCU protection for true dereference),
    > use rht_dereference_rcu().
    >
    > Note that this includes a simplification of the call to
    > rhashtable_last_table() - we don't do an extra dereference
    > before the call any more.
    >
    > Signed-off-by: NeilBrown <neilb@suse.com>

    Acked-by: Herbert Xu <herbert@gondor.apana.org.au>
    --
    Email: Herbert Xu <herbert@gondor.apana.org.au>
    Home Page: http://gondor.apana.org.au/~herbert/
    PGP Key: http://gondor.apana.org.au/~herbert/pubkey.txt

    \
     
     \ /
      Last update: 2018-06-01 18:55    [W:2.438 / U:0.428 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site