[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20180315130117.7c2fb761@vmware.local.home>
Date: Thu, 15 Mar 2018 13:01:17 -0400
From: Steven Rostedt <rostedt@...dmis.org>
To: Sergey Senozhatsky <sergey.senozhatsky.work@...il.com>
Cc: Petr Mladek <pmladek@...e.com>,
Linus Torvalds <torvalds@...ux-foundation.org>,
Andy Shevchenko <andriy.shevchenko@...ux.intel.com>,
Rasmus Villemoes <linux@...musvillemoes.dk>,
"Tobin C . Harding" <me@...in.cc>, Joe Perches <joe@...ches.com>,
Linux Kernel Mailing List <linux-kernel@...r.kernel.org>,
Andrew Morton <akpm@...ux-foundation.org>,
Michal Hocko <mhocko@...e.cz>,
Sergey Senozhatsky <sergey.senozhatsky@...il.com>
Subject: Re: [PATCH v3] vsprintf: Prevent crash when dereferencing invalid
pointers
On Thu, 15 Mar 2018 17:03:09 +0900
Sergey Senozhatsky <sergey.senozhatsky.work@...il.com> wrote:
> On (03/15/18 16:58), Sergey Senozhatsky wrote:
> > On (03/14/18 15:09), Petr Mladek wrote:
> > [..]
> > > +static const char *check_pointer_access(const void *ptr)
> > > +{
> > > + unsigned char byte;
> > > +
> > > + if (!ptr)
> > > + return "(null)";
> > > +
> > > + if (probe_kernel_read(&byte, ptr, 1))
> > ^^^^^
> > Why one byte? sizeof(ptr)?
>
> I think there is a shorter version - probe_kernel_address(),
> which, seems, was designed for this particular kind of stuff.
>
> void *p;
>
> if (probe_kernel_address(ptr, p))
> ....
>
Agreed.
-- Steve
Powered by blists - more mailing lists