[PATCH] ARM: mm: Compile out HIGHMEM specific code when itss undefined

From: Tzu-Jung Lee
Date: Fri Sep 16 2011 - 12:48:15 EST


Explicitly compile out HIGHMEM specific code to eliminate compile-time errors
when built with -O0.

Change-Id: I98237f11aef07864017c67fb1a69b86f28a46e80

diff --git a/arch/arm/mm/dma-mapping.c b/arch/arm/mm/dma-mapping.c
index 4771dba..10d1e3c 100644
--- a/arch/arm/mm/dma-mapping.c
+++ b/arch/arm/mm/dma-mapping.c
@@ -456,6 +456,7 @@ static void dma_cache_maint_page(struct page *page, unsigned long offset,
size_t size, enum dma_data_direction dir,
void (*op)(const void *, size_t, int))
{
+#ifdef CONFIG_HIGHMEM
/*
* A single sg entry may refer to multiple physically contiguous
* pages. But we still need to process highmem pages individually.
@@ -494,6 +495,7 @@ static void dma_cache_maint_page(struct page *page, unsigned long offset,
page++;
left -= len;
} while (left);
+#endif
}

void ___dma_page_cpu_to_dev(struct page *page, unsigned long off,
diff --git a/arch/arm/mm/flush.c b/arch/arm/mm/flush.c
index 2b269c9..3349df2 100644
--- a/arch/arm/mm/flush.c
+++ b/arch/arm/mm/flush.c
@@ -167,6 +167,7 @@ void copy_to_user_page(struct vm_area_struct *vma, struct page *page,

void __flush_dcache_page(struct address_space *mapping, struct page *page)
{
+#ifdef CONFIG_HIGHMEM
/*
* Writeback any data associated with the kernel mapping of this
* page. This ensures that data in the physical page is mutually
@@ -186,7 +187,7 @@ void __flush_dcache_page(struct address_space *mapping, struct page *page)
kunmap_atomic(addr);
}
}
-
+#endif
/*
* If this is a page cache page, and we have an aliasing VIPT cache,
* we only need to do one flush - which would be at the relevant
--
1.7.6.1

--
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/