Re: [patch] mm: recheck lock rlim after f_op->mmap() method

From: Hugh Dickins
Date: Wed Jul 11 2007 - 14:25:29 EST


On Wed, 11 Jul 2007, Jes Sorensen wrote:
> Hugh Dickins wrote:
> >
> > Or would this simpler patch be the right one? I suspect the
> > mspec driver only says VM_LOCKED because of a deep-seated but
> > irrational fear that its pages might fall into reclaim.
>
> My mind is rusty on this one, so I checked with Robin Holt and his
> is too .... most likely mspec has it for legacy problems, if your
> change shows up to cause new problems, we'll fix them when they appear.
> So from our side, it's fine to go ahead with this patch.

Thanks a lot, Jes: you're right, it probably did something useful
(though incorrectly) in 2.4, but we'd better get rid of it now.
I've Cc'ed Andrew, hoping he'll magically pick up the patch...


[PATCH] mspec_mmap don't set VM_LOCKED

mspec_mmap was setting VM_LOCKED (without adjusting locked_vm):
don't do that, it serves no purpose in 2.6, other than to mess
up the locked_vm accounting - mspec's pages won't get reclaimed
anyway. Thanks to Dmitry Monakhov for raising the issue.

Signed-off-by: Hugh Dickins <hugh@xxxxxxxxxxx>
Acked-by: Jes Sorensen <jes@xxxxxxx>

--- 2.6.22/drivers/char/mspec.c 2007-04-26 04:08:32.000000000 +0100
+++ linux/drivers/char/mspec.c 2007-07-10 18:12:11.000000000 +0100
@@ -265,7 +265,7 @@ mspec_mmap(struct file *file, struct vm_
vdata->refcnt = ATOMIC_INIT(1);
vma->vm_private_data = vdata;

- vma->vm_flags |= (VM_IO | VM_LOCKED | VM_RESERVED | VM_PFNMAP);
+ vma->vm_flags |= (VM_IO | VM_RESERVED | VM_PFNMAP);
if (vdata->type == MSPEC_FETCHOP || vdata->type == MSPEC_UNCACHED)
vma->vm_page_prot = pgprot_noncached(vma->vm_page_prot);
vma->vm_ops = &mspec_vm_ops;
-
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/