Re: [PATCH 03/15] tracing: Add a free on close control mechanismfor buffer_size_kb

From: Steven Rostedt
Date: Mon Jun 13 2011 - 07:39:57 EST


On Mon, 2011-06-13 at 12:12 +0200, Ingo Molnar wrote:
> * Steven Rostedt <rostedt@xxxxxxxxxxx> wrote:
>
> > + switch (cmd) {
> > + case TRACE_RINGBUF_FREE_ON_CLOSE: {
> > + info->free_buffer_on_close = !!arg;
> > + ret = 0;
> > + break;
> > + }
> > }
>
> that doesn't look very tidy.
>
> > @@ -3635,9 +3700,12 @@ static const struct file_operations tracing_pipe_fops = {
> > };
> >
> > static const struct file_operations tracing_entries_fops = {
> > - .open = tracing_open_generic,
> > + .open = tracing_entries_open,
> > .read = tracing_entries_read,
> > .write = tracing_entries_write,
> > + .unlocked_ioctl = tracing_entries_ioctl,
> > + .compat_ioctl = tracing_entries_ioctl,
>
> i don't like it at all that you are adding to the ftrace ABI here.
> The *only* premise of the whole /debug/tracing/ muck was to allow it
> to be human-parseable and scripted - an ioctl is clearly outside that
> scope. Instead of increasing the mess in /debug/tracing/ we want
> clean tracing done via the perf ABI ...

Vaibhav originally suggested adding a "buffer_free" file that you could
write into and cause it to free the buffer. It would do this on the
release so you could also have an app (like Google needs) to open this
file and if the app dies, it will automatically free the buffer closing
it.

https://lkml.org/lkml/2011/3/17/366

I didn't really like adding another file to the debugfs system, and
recommended the ioctl. It seemed like a nice "unix" fit. But if you want
to go back to the Vaibhav's original method, which will stay in the
frame of "human-parseable and scripted". We could do that.

-- Steve


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