Re: linux 4.1-rc7 deadlock

From: Hugh Dickins
Date: Sun Jun 14 2015 - 12:45:10 EST


On Thu, 11 Jun 2015, Prarit Bhargava wrote:
> On 06/11/2015 04:06 PM, Hugh Dickins wrote:
> > On Tue, 9 Jun 2015, Morten Stevens wrote:
> >> 2015-06-09 16:10 GMT+02:00 Daniel Wagner <wagi@xxxxxxxxx>:
> >>> On 06/09/2015 01:54 PM, Morten Stevens wrote:
> >
> > Reported-by: Prarit Bhargava <prarit@xxxxxxxxxx>
> > Reported-by: Daniel Wagner <wagi@xxxxxxxxx>
> > Reported-by: Morten Stevens <mstevens@xxxxxxxxxxxxxxxxx>
> > Not-Yet-Signed-off-by: Hugh Dickins <hughd@xxxxxxxxxx>
> > ---
> >
> > mm/shmem.c | 2 +-
> > 1 file changed, 1 insertion(+), 1 deletion(-)
> >
> > --- 4.1-rc7/mm/shmem.c 2015-04-26 19:16:31.352191298 -0700
> > +++ linux/mm/shmem.c 2015-06-11 11:08:21.042745594 -0700
> > @@ -3401,7 +3401,7 @@ int shmem_zero_setup(struct vm_area_stru
> > struct file *file;
> > loff_t size = vma->vm_end - vma->vm_start;
> >
> > - file = shmem_file_setup("dev/zero", size, vma->vm_flags);
> > + file = __shmem_file_setup("dev/zero", size, vma->vm_flags, S_PRIVATE);
>
> Perhaps,
>
> file = shmem_kernel_file_setup("dev/zero", size, vma->vm_flags) ?

Perhaps. I couldn't decide whether this is a proper intended use of
shmem_kernel_file_setup(), or a handy reuse of its flag. Andrew asked
for a comment, so in the end I left that line as is, but refer to
shmem_kernel_file_setup() in the comment. And that forced me to look a
little closer at the security implications: but we do seem to be safe.

>
> Tested-by: Prarit Bhargava <prarit@xxxxxxxxxx>

Thank you: I had been hoping for some corroboration from one of the other
guys (no offence to you, but 33% looks a bit weak!), but now it's Sunday
so I think I'd better send this off in the hope that it makes -rc8.

Hugh

>
> P.
>
> > if (IS_ERR(file))
> > return PTR_ERR(file);
--
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/