lkml.org 
[lkml]   [2016]   [Nov]   [10]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    From
    Subject[PATCH] Arch: arm: mm: Aligning the module end and Correction in
    Date
    From: "Shailendra Verma" <shailendra.v@samsung.com>

    The module end was not aligned as of module start and boundary
    check for module end is not proper.This out of bound value of
    module end can produce undesired results.

    Reported-by: Hillf Danton <hillf.zj@alibaba-inc.com>
    Signed-off-by: Shailendra Verma <Shailendra.v@samsung.com>
    ---
    arch/arm/mm/pageattr.c | 7 +++----
    1 file changed, 3 insertions(+), 4 deletions(-)

    diff --git a/arch/arm/mm/pageattr.c b/arch/arm/mm/pageattr.c
    index d19b1ad..dd0b8a2 100644
    --- a/arch/arm/mm/pageattr.c
    +++ b/arch/arm/mm/pageattr.c
    @@ -43,10 +43,9 @@ static int change_memory_common(unsigned long addr, int numpages,
    int ret;
    struct page_change_data data;

    - if (!IS_ALIGNED(addr, PAGE_SIZE)) {
    + if (WARN_ON_ONCE(!IS_ALIGNED(addr, PAGE_SIZE))) {
    start &= PAGE_MASK;
    - end = start + size;
    - WARN_ON_ONCE(1);
    + end = PAGE_ALIGN(end);
    }

    if (!numpages)
    @@ -55,7 +54,7 @@ static int change_memory_common(unsigned long addr, int numpages,
    if (start < MODULES_VADDR || start >= MODULES_END)
    return -EINVAL;

    - if (end < MODULES_VADDR || start >= MODULES_END)
    + if (end < MODULES_VADDR || end >= MODULES_END)
    return -EINVAL;

    data.set_mask = set_mask;
    --
    1.7.9.5
    \
     
     \ /
      Last update: 2016-11-10 10:58    [W:3.242 / U:0.008 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site