lkml.org 
[lkml]   [2007]   [Sep]   [19]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    Date
    From
    SubjectRe: [RFC][PATCH 2/6] lockdep: validate rcu_dereference() vs rcu_read_lock()
    On 9/19/07, Peter Zijlstra <a.p.zijlstra@chello.nl> wrote:
    > On Wed, 19 Sep 2007 10:17:25 -0400 "Dmitry Torokhov"
    > <dmitry.torokhov@gmail.com> wrote:
    >
    > > Hi Peter,
    > >
    > > On 9/19/07, Peter Zijlstra <a.p.zijlstra@chello.nl> wrote:
    > > > Warn when rcu_dereference() is not used in combination with rcu_read_lock()
    > > >
    > >
    > > According to Paul it is fine to use RCU primitives (when accompanied
    > > with proper comments) when the read-size critical section is guarded
    > > by spin_lock_irqsave()/spin_lock_irqsrestore() instead of
    > > rcu_read_lock()/rcu_read_unlock() and writers synchronize with
    > > synchronize_sched(), not synchronize_rcu(). Your patch will trigger
    > > warnign on such valid usages.
    > >
    >
    > Sounds fragile to begin with. But you're right in that that is valid
    > for Linux as you know it. However in -rt most/all spinlocks are
    > converted to sleeping locks. In that case sync_sched() is not enough.
    >

    OK, then it goes beyond RCU... We need to come up with something that
    can be used to synchronize with IRQ handlers (quite often in driver
    code one needs to be sure that current invocation of IRQ handler
    completed before doing something). And once we have it splinlock + RCU
    users can just use that method.

    --
    Dmitry
    -
    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-09-19 17:19    [W:0.022 / U:2.304 seconds]
    ©2003-2016 Jasper Spaans. hosted at Digital OceanAdvertise on this site