Re: [Stable-review] [PATCH 20/23] tracing: Fix panic when lseek()called on "trace" opened for writing
From: Steven Rostedt
Date: Mon Feb 14 2011 - 21:01:59 EST
On Tue, 2011-02-15 at 01:38 +0000, Ben Hutchings wrote:
> On Mon, 2011-02-14 at 20:33 -0500, Steven Rostedt wrote:
> > On Mon, 2011-02-14 at 23:14 +0000, Ben Hutchings wrote:
> > > On Mon, 2011-02-07 at 00:23 +0100, Willy Tarreau wrote:
> > > > 2.6.27.58-stable review patch. If anyone has any objections, please let us know.
> > > >
> > > > ------------------
> > > >
> > > > From: Slava Pestov <slavapestov@xxxxxxxxxx>
> > > >
> > > > commit 364829b1263b44aa60383824e4c1289d83d78ca7 upstream.
> > > >
> > > > The file_ops struct for the "trace" special file defined llseek as seq_lseek().
> > > > However, if the file was opened for writing only, seq_open() was not called,
> > > > and the seek would dereference a null pointer, file->private_data.
> > > >
> > > > This patch introduces a new wrapper for seq_lseek() which checks if the file
> > > > descriptor is opened for reading first. If not, it does nothing.
> > > [...]
> > > > --- longterm-2.6.27.orig/kernel/trace/trace.c 2011-01-23 10:52:37.000000000 +0100
> > > > +++ longterm-2.6.27/kernel/trace/trace.c 2011-01-29 11:42:07.287067215 +0100
> > > > @@ -2041,17 +2041,25 @@
> > > > return ret;
> > > > }
> > > >
> > > > +static loff_t tracing_seek(struct file *file, loff_t offset, int origin)
> > > [...]
> > > > + .llseek = tracing_lseek,
> > > [...]
> > > > + .llseek = tracing_lseek,
> > > [...]
> > >
> > > These names don't agree!
> >
> > What don't they agree on?
>
> Whether seek is spelt with an 'l'...
Ah, I was looking at the two .llseek lines ;)
Yeah, in mainline it's just tracing_seek.
-- 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/