Re: [PATCH 05/13] ftrace: Call trace_parser_clear() properly

From: Frederic Weisbecker
Date: Tue Dec 08 2009 - 06:44:04 EST


On Tue, Dec 08, 2009 at 06:03:46PM +0800, Li Zefan wrote:
> Frederic Weisbecker wrote:
> > I'm missing something. How that can happen. Anytime we reopen
> > the file, the parser is re-allocated.
> >
>
> It happened at file closing..
>
> static int
> ftrace_regex_release(struct inode *inode, struct file *file, int enable)
> {
> ...
> parser = &iter->parser;
> if (trace_parser_loaded(parser)) {
> parser->buffer[parser->idx] = 0;
> /* here ! */
> ftrace_match_records(parser->buffer, parser->idx, enable);
> }
> ...
> }


Aah, ok.


> > I guess that happens if you open in rw mode? But not using the
> > example in the changelog?
>
> I've confirmed that example I was using can reveal this bug.

Yeah indeed.

--
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/