On Fri, Aug 02, 2013 at 06:29:54PM +0200, Frederic Weisbecker wrote: > When we fail to allocate the callchain buffers, we rollback the refcount > we did and return from get_callchain_buffers(). > > However we take the refcount and allocate under the callchain lock > but the rollback is done outside the lock. > > As a result, while we rollback, some concurrent callchain user may > call get_callchain_buffers(), see the non-zero refcount and give up > because the buffers are NULL without itself retrying the allocation. > > The consequences aren't that bad but that behaviour looks weird enough and > it's better to give their chances to the following callchain users where > we failed. > > Reported-by: Jiri Olsa <[email protected]> > Signed-off-by: Frederic Weisbecker <[email protected]> > Cc: Ingo Molnar <[email protected]> > Cc: Peter Zijlstra <[email protected]> > Cc: Jiri Olsa <[email protected]>
Acked-by: Jiri Olsa <[email protected]> -- 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/

