Messages in this thread | | | Date | Fri, 9 Aug 2013 12:28:02 +0200 | From | Jiri Olsa <> | Subject | Re: [PATCH 1/3] perf: Rollback callchain buffer refcount under the callchain mutex |
| |
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 <jolsa@redhat.com> > Signed-off-by: Frederic Weisbecker <fweisbec@gmail.com> > Cc: Ingo Molnar <mingo@kernel.org> > Cc: Peter Zijlstra <peterz@infradead.org> > Cc: Jiri Olsa <jolsa@redhat.com>
Acked-by: Jiri Olsa <jolsa@redhat.com>
| |