lkml.org 
[lkml]   [2011]   [Jun]   [9]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    Date
    From
    SubjectRe: [PATCH tip/core/rcu 03/28] rcu: Streamline code produced by __rcu_read_unlock()
    On Wed, Jun 08, 2011 at 08:45:07PM -0700, Josh Triplett wrote:
    > On Wed, Jun 08, 2011 at 12:29:42PM -0700, Paul E. McKenney wrote:
    > > Given some common flag combinations, particularly -Os, gcc will inline
    > > rcu_read_unlock_special() despite its being in an unlikely() clause.
    > > Use noline to prohibit this misoptimization.
    >
    > If rcu_read_unlock_special only gets called in the one place, why does
    > it hurt to inline it, as long as the inlined code stays on the cold
    > path? Might as well remove the overhead of the function call.

    One problem with inlining rcu_read_unlock_special() is that it
    increases the icache footprint on the fast path. Because the call to
    rcu_read_unlock_special() occurs only rarely (if the reader blocked
    or took too long), it is better to take the overhead of the call in
    the uncommon case than to take the additional cache-miss overhead
    in the common case.

    Or did I miss your point?

    Thanx, Paul


    \
     
     \ /
      Last update: 2011-06-09 16:19    [W:2.905 / U:1.616 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site