From: Florian Zumbiehl on
Hi,

the patch is untested and someone with detailed understanding of the
semantics of this code probably should check for correctness of
the fixed version in corner cases.

Florian
---------------------------------------------------------------------------
x86 __ioremap_caller(): fix check for overlap with RAM to check the
last page of the mapping as well.

Signed-off-by: Florian Zumbiehl <florz(a)florz.de>

diff --git a/arch/x86/mm/ioremap.c b/arch/x86/mm/ioremap.c
index a4643e5..4c3e4f9 100644
--- a/arch/x86/mm/ioremap.c
+++ b/arch/x86/mm/ioremap.c
@@ -101,7 +101,7 @@ static void __iomem *__ioremap_caller(resource_size_t phys_addr,
* Don't allow anybody to remap normal RAM that we're using..
*/
for (pfn = phys_addr >> PAGE_SHIFT;
- (pfn << PAGE_SHIFT) < (last_addr & PAGE_MASK);
+ pfn <= (last_addr >> PAGE_SHIFT);
pfn++) {

int is_ram = page_is_ram(pfn);
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo(a)vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/