On Thu, Sep 20, 2007 at 09:28:21AM +0200, Jarek Poplawski wrote: > On Thu, Sep 20, 2007 at 08:24:58AM +0200, Nadia Derbey wrote: ... > > Before Calling msg_unlock() they call ipc_rcu_getref() that increments a > > refcount in the rcu header for the msg structure. This guarantees that > > the the structure won't be freed before they relock it. Once the > > structure is relocked by ipc_lock_by_ptr(), they do the symmetric > > operation i.e. ipc_rcu_putref(). ... > which seems to suggest "out" is an RCU protected pointer, so, I > thought these refcounts were for something else. But, after looking > at how it's used it turns out to be ~90% wrong: probably 9 out of 10 > places use refcouning around this, so, these rcu_read_locks() don't > work here at all. So, probably I miss something again, but IMHO, > these rcu_read_locks/unlocks could be removed here or in ... ...So I missed it again: after all this RCU protection works before and after refcounting.
Sorry, Jarek P. - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/