linux/arch/sh/mm
Matt Fleming a2767cfb1d sh: Don't allocate smaller sized mappings on every iteration
Currently, we've got the less than ideal situation where if we need to
allocate a 256MB mapping we'll allocate four entries like so,

	 entry 1: 128MB
	 entry 2:  64MB
	 entry 3:  16MB
	 entry 4:  16MB

This is because as we execute the loop in pmb_remap() we will
progressively try mapping the remaining address space with smaller and
smaller sizes. This isn't good because the size we use on one iteration
may be the perfect size to use on the next iteration, for instance when
the initial size is divisible by one of the PMB mapping sizes.

With this patch, we now only need two entries in the PMB to map 256MB of
address space,

	  entry 1: 128MB
	  entry 2: 128MB

Signed-off-by: Matt Fleming <matt@console-pimps.org>
Signed-off-by: Paul Mundt <lethal@linux-sh.org>
2009-10-09 11:26:35 +09:00
..
asids-debugfs.c
cache-debugfs.c
cache-sh2.c
cache-sh2a.c Revert "sh: Kill off now redundant local irq disabling." 2009-09-01 21:12:55 +09:00
cache-sh3.c
cache-sh4.c sh: Sprinkle __uses_jump_to_uncached 2009-10-09 11:23:57 +09:00
cache-sh5.c Revert "sh: Kill off now redundant local irq disabling." 2009-09-01 21:12:55 +09:00
cache-sh7705.c sh: Sprinkle __uses_jump_to_uncached 2009-10-09 11:23:57 +09:00
cache.c sh: Use more aggressive dcache purging in kmap teardown. 2009-09-08 16:21:00 +09:00
consistent.c
extable_32.c
extable_64.c
fault_32.c perf: Do the big rename: Performance Counters -> Performance Events 2009-09-21 14:28:04 +02:00
fault_64.c
flush-sh4.c
hugetlbpage.c
init.c kcore: use registerd physmem information 2009-09-23 07:39:41 -07:00
ioremap_32.c sh: Try PMB mapping based on physical address, not mapping size 2009-10-09 11:25:10 +09:00
ioremap_64.c
Kconfig sh: Add initial support for SH7757 CPU subtype 2009-08-21 17:25:47 +09:00
kmap.c sh: Use more aggressive dcache purging in kmap teardown. 2009-09-08 16:21:00 +09:00
Makefile sh: Build fix for disabled caches. 2009-08-19 17:57:01 +09:00
mmap.c
nommu.c sh: Fix up and optimize the kmap_coherent() interface. 2009-09-03 17:21:10 +09:00
numa.c
pmb-fixed.c
pmb.c sh: Don't allocate smaller sized mappings on every iteration 2009-10-09 11:26:35 +09:00
tlb-pteaex.c
tlb-sh3.c
tlb-sh4.c Merge branch 'master' into sh/smp 2009-09-01 13:54:14 +09:00
tlb-sh5.c
tlbflush_32.c
tlbflush_64.c perf: Do the big rename: Performance Counters -> Performance Events 2009-09-21 14:28:04 +02:00