Recent changes (4.4.0+) in module loader triggered oops on ARM. While loading a module, size in : apply_to_page_range(struct mm_struct *mm, unsigned long addr, unsigned long size, pte_fn_t fn, void *data); can be 0 triggering the bug BUG_ON(addr >= end);. Fix by letting call with zero size succeed. --Mika Signed-off-by: mika.penttila@xxxxxxxxxxxx --- diff --git a/mm/memory.c b/mm/memory.c index c387430..c3d1a2e 100644 --- a/mm/memory.c +++ b/mm/memory.c @@ -1884,6 +1884,9 @@ int apply_to_page_range(struct mm_struct *mm, unsigned long addr, unsigned long end = addr + size; int err; + if (!size) + return 0; + BUG_ON(addr >= end); pgd = pgd_offset(mm, addr); do { -- To unsubscribe, send a message with 'unsubscribe linux-mm' in the body to majordomo@xxxxxxxxx. For more info on Linux MM, see: http://www.linux-mm.org/ . Don't email: <a href=mailto:"dont@xxxxxxxxx"> email@xxxxxxxxx </a>