From b4c0469f7715b3e935c206f97c773fc656800da4 Mon Sep 17 00:00:00 2001 From: "David S. Miller" Date: Sun, 5 Mar 2006 22:18:50 -0800 Subject: [PATCH] --- yaml --- r: 21543 b: refs/heads/master c: f7c00338cfeef125032aa12aa8ebeacf9e117e81 h: refs/heads/master i: 21541: cc06626491ade0394395b329c8f8e45939570baf 21539: fff09ecd40451afff369b5fcb837fbf7ec3f4152 21535: 09dbbf1099e7d03834c4868e5f563dd86e1ef782 v: v3 --- [refs] | 2 +- trunk/arch/sparc64/mm/init.c | 5 ++++- 2 files changed, 5 insertions(+), 2 deletions(-) diff --git a/[refs] b/[refs] index 80d92166f4ee..24365ade928c 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: 74ae998772041b62e9ad420d602e4f7dbb182cd6 +refs/heads/master: f7c00338cfeef125032aa12aa8ebeacf9e117e81 diff --git a/trunk/arch/sparc64/mm/init.c b/trunk/arch/sparc64/mm/init.c index 5930e87dafbc..9bbd0bf64af0 100644 --- a/trunk/arch/sparc64/mm/init.c +++ b/trunk/arch/sparc64/mm/init.c @@ -973,12 +973,15 @@ static void __init mark_kpte_bitmap(unsigned long start, unsigned long end) while (start < end) { long remains; + remains = end - start; + if (remains < size_256MB) + break; + if (start & mask_256MB) { start = (start + size_256MB) & ~mask_256MB; continue; } - remains = end - start; while (remains >= size_256MB) { unsigned long index = start >> shift_256MB;