X-Git-Url: http://ftp.safe.ca/?p=safe%2Fjmp%2Flinux-2.6;a=blobdiff_plain;f=arch%2Farm%2Fmm%2Fhighmem.c;fp=arch%2Farm%2Fmm%2Fhighmem.c;h=086816b205b8cf25c9d178c9d56c44a654e2ff9f;hp=77b030f5ec09fa2dfbbcc562f345eb0ec04e3092;hb=19189faf4e846626dc963410347427b4f7cec286;hpb=7f95d48056f1569a9e97e78e6f1557c7172bf6ac diff --git a/arch/arm/mm/highmem.c b/arch/arm/mm/highmem.c index 77b030f..086816b 100644 --- a/arch/arm/mm/highmem.c +++ b/arch/arm/mm/highmem.c @@ -48,7 +48,16 @@ void *kmap_atomic(struct page *page, enum km_type type) debug_kmap_atomic(type); - kmap = kmap_high_get(page); +#ifdef CONFIG_DEBUG_HIGHMEM + /* + * There is no cache coherency issue when non VIVT, so force the + * dedicated kmap usage for better debugging purposes in that case. + */ + if (!cache_is_vivt()) + kmap = NULL; + else +#endif + kmap = kmap_high_get(page); if (kmap) return kmap;