Re: [PATCH] proc: #68991 Fix GPF in /proc/$PID/map_files

From: Cyrill Gorcunov
Date: Fri Mar 07 2014 - 09:45:15 EST


On Fri, Mar 07, 2014 at 06:29:13PM +0400, Pavel Emelyanov wrote:
> On 03/08/2014 06:20 AM, Artem Fetishev wrote:
> > https://bugzilla.kernel.org/show_bug.cgi?id=68991
> >
> > The expected logic of proc_map_files_get_link() is either to return 0 and
> > initialize 'path' or return an error and leave 'path' uninitialized. By the time
> > dname_to_vma_addr() returns 0 the corresponding vma may have already be gone. In
> > this case the path is not initialized but the return value is still 0. This
> > results in 'general protection fault' inside d_path().
> >
> > Steps to reproduce:
> > CONFIG_CHECKPOINT_RESTORE=y
> >
> > fd = open(...);
> > while (1) {
> > mmap(fd, ...);
> > munmap(fd, ...);
> > }
> >
> > ls -la /proc/$PID/map_files
> >
> > Signed-off-by: Artem Fetishev <artem_fetishev@xxxxxxxx>
> > Signed-off-by: Aleksandr Terekhov <aleksandr_terekhov@xxxxxxxx>
>
> Acked-by: Pavel Emelyanov <xemul@xxxxxxxxxxxxx>

Good catch, thanks!

Acked-by: Cyrill Gorcunov <gorcunov@xxxxxxxxxx>

I suppose this is a stable@ material.
--
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/