Re: [PATCH]fix VM_CAN_NONLINEAR check in sys_remap_file_pages

Randy Dunlap
2007-10-08T17:29:31Z

On Mon, 8 Oct 2007 10:04:56 -0700 Andrew Morton wrote:

> On Mon, 8 Oct 2007 19:45:08 +0800 "Yan Zheng" <yanzheng@21cn.com> wrote:
>
> > Hi all
> >
> > The test for VM_CAN_NONLINEAR always fails
> >
> > Signed-off-by: Yan Zheng<yanzheng@21cn.com>
> > ----
> > diff -ur linux-2.6.23-rc9/mm/fremap.c linux/mm/fremap.c
> > --- linux-2.6.23-rc9/mm/fremap.c 2007-10-07 15:03:33.000000000 +0800
> > +++ linux/mm/fremap.c 2007-10-08 19:33:44.000000000 +0800
> > @@ -160,7 +160,7 @@
> > if (vma->vm_private_data && !(vma->vm_flags & VM_NONLINEAR))
> > goto out;
> >
> > - if (!vma->vm_flags & VM_CAN_NONLINEAR)
> > + if (!(vma->vm_flags & VM_CAN_NONLINEAR))
> > goto out;
> >
> > if (end <= start || start < vma->vm_start || end > vma->vm_end)
>
> Lovely. From this we can deduce that nobody has run remap_file_pages() since
> 2.6.23-rc1 and that nobody (including the developer who made that change) ran it
> while that change was in -mm.

I've run rmap-test with -M (use remap_file_pages) and
remap-test from ext3-tools, but not remap_file_pages for some reason.

I'll now add remap_file_pages soon.
Maybe those other 2 tests aren't strong enough (?).
Or maybe they don't return a non-0 exit status even when they fail...
(I'll check.)

> I'm surprise that LTP doesn't have any remap_file_pages() tests.

quick grep didn't find any for me.

> Have you runtime tested this change?
>
> Thanks.

---
~Randy