arm64: pageattr: Correctly adjust unaligned start addresses
authorLaura Abbott <lauraa@codeaurora.org>
Thu, 11 Sep 2014 22:10:32 +0000 (23:10 +0100)
committerCatalin Marinas <catalin.marinas@arm.com>
Fri, 12 Sep 2014 15:34:50 +0000 (16:34 +0100)
The start address needs to be actually updated after it
is detected to be unaligned. Adjust it and the end address
properly.

Reported-by: Zi Shen Lim <zlim.lnx@gmail.com>
Reviewed-by: Zi Shen Lim <zlim.lnx@gmail.com>
Signed-off-by: Laura Abbott <lauraa@codeaurora.org>
Signed-off-by: Catalin Marinas <catalin.marinas@arm.com>
arch/arm64/mm/pageattr.c

index 75e744e..bb0ea94 100644 (file)
@@ -46,7 +46,8 @@ static int change_memory_common(unsigned long addr, int numpages,
        struct page_change_data data;
 
        if (!IS_ALIGNED(addr, PAGE_SIZE)) {
-               addr &= PAGE_MASK;
+               start &= PAGE_MASK;
+               end = start + size;
                WARN_ON_ONCE(1);
        }