Linux MIPS Architecture development
 help / color / mirror / Atom feed
* [patch] mips, mm: avoid using HPAGE constants without CONFIG_HUGETLB_PAGE
@ 2011-11-20  2:56 David Rientjes
  2011-11-20  5:27 ` Hillf Danton
  0 siblings, 1 reply; 4+ messages in thread
From: David Rientjes @ 2011-11-20  2:56 UTC (permalink / raw)
  To: Ralf Baechle; +Cc: Hillf Danton, linux-mips

HPAGE_{MASK,SHIFT,SIZE} are only defined with CONFIG_HUGETLB_PAGE, so
make sure to never use them unless that option is enabled.

Signed-off-by: David Rientjes <rientjes@google.com>
---
 arch/mips/mm/tlb-r4k.c |   13 ++++++++-----
 1 files changed, 8 insertions(+), 5 deletions(-)

diff --git a/arch/mips/mm/tlb-r4k.c b/arch/mips/mm/tlb-r4k.c
--- a/arch/mips/mm/tlb-r4k.c
+++ b/arch/mips/mm/tlb-r4k.c
@@ -124,9 +124,11 @@ void local_flush_tlb_range(struct vm_area_struct *vma, unsigned long start,
 
 		ENTER_CRITICAL(flags);
 		if (huge) {
+#ifdef CONFIG_HUGETLB_PAGE
 			start = round_down(start, HPAGE_SIZE);
 			end = round_up(end, HPAGE_SIZE);
 			size = (end - start) >> HPAGE_SHIFT;
+#endif
 		} else {
 			start = round_down(start, PAGE_SIZE << 1);
 			end = round_up(end, PAGE_SIZE << 1);
@@ -135,15 +137,16 @@ void local_flush_tlb_range(struct vm_area_struct *vma, unsigned long start,
 		if (size <= current_cpu_data.tlbsize/2) {
 			int oldpid = read_c0_entryhi();
 			int newpid = cpu_asid(cpu, mm);
+			unsigned long incr = PAGE_SIZE << 1;
 
-			while (start < end) {
+#ifdef CONFIG_HUGETLB_PAGE
+			if (huge)
+				incr = HPAGE_SIZE;
+#endif
+			for (; start < end; start += incr) {
 				int idx;
 
 				write_c0_entryhi(start | newpid);
-				if (huge)
-					start += HPAGE_SIZE;
-				else
-					start += (PAGE_SIZE << 1);
 				mtc0_tlbw_hazard();
 				tlb_probe();
 				tlb_probe_hazard();

^ permalink raw reply	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2011-11-21 22:32 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2011-11-20  2:56 [patch] mips, mm: avoid using HPAGE constants without CONFIG_HUGETLB_PAGE David Rientjes
2011-11-20  5:27 ` Hillf Danton
2011-11-21 19:25   ` David Daney
2011-11-21 22:31     ` David Rientjes

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox