[PATCH] ARM: l2x0: Check the correct address range

From: Kyungmin Park
Date: Thu Nov 18 2010 - 20:40:42 EST


From: Boojin Kim <boojin.kim@xxxxxxxxxxx>

When flush or clean the 1MiB, it doesn't flush or clean all since it doesn't check the correct address. So Check the correct address range.

Signed-off-by: Boojin Kim <boojin.kim@xxxxxxxxxxx>
Signed-off-by: Kyungmin Park <kyungmin.park@xxxxxxxxxxx>
---
diff --git a/arch/arm/mm/cache-l2x0.c b/arch/arm/mm/cache-l2x0.c
index 170c9bb..50599d9 100644
--- a/arch/arm/mm/cache-l2x0.c
+++ b/arch/arm/mm/cache-l2x0.c
@@ -195,7 +195,7 @@ static void l2x0_clean_range(unsigned long start, unsigned long end)
void __iomem *base = l2x0_base;
unsigned long flags;

- if ((end - start) >= l2x0_size) {
+ if ((end - start + 1) >= l2x0_size) {
l2x0_clean_all();
return;
}
@@ -225,7 +225,7 @@ static void l2x0_flush_range(unsigned long start, unsigned long end)
void __iomem *base = l2x0_base;
unsigned long flags;

- if ((end - start) >= l2x0_size) {
+ if ((end - start + 1) >= l2x0_size) {
l2x0_flush_all();
return;
}
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/