lkml.org 
[lkml]   [2007]   [Jul]   [20]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    Date
    From
    SubjectRe: [RFC][-mm PATCH 4/8] Memory controller memory accounting (v3)
    On 7/20/07, Paul Menage <menage@google.com> wrote:
    > > + mem = rcu_dereference(mm->mem_container);
    > > + /*
    > > + * For every charge from the container, increment reference
    > > + * count
    > > + */
    > > + css_get(&mem->css);
    > > + rcu_read_unlock();
    >
    > It's not clear to me that this is safe.
    >

    Sorry, didn't finish this thought.

    Right after the rcu_dereference() the mm could be moved to another
    container by some other process.

    Since there's an rcu_synchronize() after the movement, and the
    rcu_synchronize() caller holds container_mutex then I guess it's not
    possible for a third process to delete the container during the RCU
    section, since it won't be able to acquire the mutex until after the
    RCU read section completes. So OK, it is safe, at least based on the
    guarantees made by the current implementation.

    Paul
    -
    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-07-20 23:13    [W:0.020 / U:30.800 seconds]
    ©2003-2016 Jasper Spaans. hosted at Digital OceanAdvertise on this site