On Tue, 10 Jun 2014 14:25:21 +0900
Namhyung Kim <namhy...@gmail.com> wrote:

 
> > +static void free_trace_buffers(struct trace_array *tr)
> > +{
> > +   if (!tr)
> > +           return;
> > +
> > +   if (tr->trace_buffer.buffer) {
> > +           ring_buffer_free(tr->trace_buffer.buffer);
> > +           tr->trace_buffer.buffer = NULL;
> > +           free_percpu(tr->trace_buffer.data);
> > +   }
> > +
> > +#ifdef CONFIG_TRACER_MAX_TRACE
> > +   if (tr->max_buffer.buffer) {
> > +           ring_buffer_free(tr->max_buffer.buffer);
> > +           tr->max_buffer.buffer = NULL;
> 
> Hmm.. why doesn't it free tr->max_buffer.data here?  And I think it's
> better to reset *_buffer.data to NULL also - maybe by adding another
> helper function free_trace_buffer()..
> 

Originally, instances didn't need them. But I'm looking now and yes
they do allocate. I guess this doesn't trigger kmem-leak checks, as I
ran creation and deletions with that running and it didn't report any
leaks.

I'll update,

Thanks!

-- Steve
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Reply via email to