lkml.org 
[lkml]   [2011]   [Mar]   [28]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    From
    Subject[PATCH 4/6] nommu: check the vma list when unmapping file-mapped vma
    Date
    Now we have the sorted vma list, use it in do_munmap() to check that
    we have an exact match.

    Signed-off-by: Namhyung Kim <namhyung@gmail.com>
    ---
    mm/nommu.c | 6 ++----
    1 files changed, 2 insertions(+), 4 deletions(-)

    diff --git a/mm/nommu.c b/mm/nommu.c
    index 6c5a13b507b4..33f5d23c6d44 100644
    --- a/mm/nommu.c
    +++ b/mm/nommu.c
    @@ -1659,7 +1659,6 @@ static int shrink_vma(struct mm_struct *mm,
    int do_munmap(struct mm_struct *mm, unsigned long start, size_t len)
    {
    struct vm_area_struct *vma;
    - struct rb_node *rb;
    unsigned long end = start + len;
    int ret;

    @@ -1692,9 +1691,8 @@ int do_munmap(struct mm_struct *mm, unsigned long start, size_t len)
    }
    if (end == vma->vm_end)
    goto erase_whole_vma;
    - rb = rb_next(&vma->vm_rb);
    - vma = rb_entry(rb, struct vm_area_struct, vm_rb);
    - } while (rb);
    + vma = vma->vm_next;
    + } while (vma);
    kleave(" = -EINVAL [split file]");
    return -EINVAL;
    } else {
    --
    1.7.4


    \
     
     \ /
      Last update: 2011-03-28 15:59    [W:0.023 / U:0.028 seconds]
    ©2003-2016 Jasper Spaans. hosted at Digital OceanAdvertise on this site