Re: [Stable-review] [PATCH 20/23] tracing: Fix panic when lseek()called on "trace" opened for writing

From: Ben Hutchings
Date: Mon Feb 14 2011 - 20:38:53 EST


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'...

Ben.

--
Ben Hutchings
Once a job is fouled up, anything done to improve it makes it worse.

Attachment: signature.asc
Description: This is a digitally signed message part