Benjamin Herrenschmidt
9e1b32caa5
mm: Pass virtual address to [__]p{te,ud,md}_free_tlb()
...
mm: Pass virtual address to [__]p{te,ud,md}_free_tlb()
Upcoming paches to support the new 64-bit "BookE" powerpc architecture
will need to have the virtual address corresponding to PTE page when
freeing it, due to the way the HW table walker works.
Basically, the TLB can be loaded with "large" pages that cover the whole
virtual space (well, sort-of, half of it actually) represented by a PTE
page, and which contain an "indirect" bit indicating that this TLB entry
RPN points to an array of PTEs from which the TLB can then create direct
entries. Thus, in order to invalidate those when PTE pages are deleted,
we need the virtual address to pass to tlbilx or tlbivax instructions.
The old trick of sticking it somewhere in the PTE page struct page sucks
too much, the address is almost readily available in all call sites and
almost everybody implemets these as macros, so we may as well add the
argument everywhere. I added it to the pmd and pud variants for consistency.
Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Acked-by: David Howells <dhowells@redhat.com> [MN10300 & FRV]
Acked-by: Nick Piggin <npiggin@suse.de>
Acked-by: Martin Schwidefsky <schwidefsky@de.ibm.com> [s390]
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2009-07-27 12:10:38 -07:00
..
allocpercpu.c
percpu: __percpu_depopulate_mask can take a const mask
2009-04-06 13:44:15 -07:00
backing-dev.c
Fix congestion_wait() sync/async vs read/write confusion
2009-07-10 20:31:53 +02:00
bootmem.c
kmemleak: Add callbacks to the bootmem allocator
2009-07-08 14:25:14 +01:00
bounce.c
block: remove some includings of blktrace_api.h
2009-06-16 11:19:36 +02:00
debug-pagealloc.c
generic debug pagealloc
2009-04-01 08:59:13 -07:00
dmapool.c
dmapools: protect page_list walk in show_pools()
2009-06-30 18:56:00 -07:00
fadvise.c
readahead: move max_sane_readahead() calls into force_page_cache_readahead()
2009-06-16 19:47:28 -07:00
failslab.c
kmemtrace, mm: fix slab.h dependency problem in mm/failslab.c
2009-04-03 12:23:01 +02:00
filemap.c
mm: mark page accessed before we write_end()
2009-07-06 13:57:03 -07:00
filemap_xip.c
mm: do_xip_mapping_read: fix length calculation
2009-04-02 19:04:49 -07:00
fremap.c
Do not account for the address space used by hugetlbfs using VM_ACCOUNT
2009-02-10 10:48:42 -08:00
highmem.c
block: remove some includings of blktrace_api.h
2009-06-16 11:19:36 +02:00
hugetlb.c
hugetlb: fault flags instead of write_access
2009-06-23 11:23:33 -07:00
init-mm.c
mm: consolidate init_mm definition
2009-06-16 19:47:28 -07:00
internal.h
vmscan: do not unconditionally treat zones that fail zone_reclaim() as full
2009-06-16 19:47:45 -07:00
Kconfig
Merge branch 'akpm'
2009-06-16 19:50:13 -07:00
Kconfig.debug
kmemcheck: enable in the x86 Kconfig
2009-06-15 15:49:15 +02:00
kmemcheck.c
kmemcheck: add hooks for the page allocator
2009-06-15 15:48:33 +02:00
kmemleak-test.c
kmemleak: Simple testing module for kmemleak
2009-06-11 17:04:19 +01:00
kmemleak.c
kmemleak: Allow partial freeing of memory blocks
2009-07-08 14:25:14 +01:00
maccess.c
[S390] maccess: add weak attribute to probe_kernel_write
2009-06-12 10:27:37 +02:00
madvise.c
mm: madvise(): correct return code
2009-06-16 19:47:40 -07:00
Makefile
Merge branch 'akpm'
2009-06-16 19:50:13 -07:00
memcontrol.c
Fix congestion_wait() sync/async vs read/write confusion
2009-07-10 20:31:53 +02:00
memory.c
mm: Pass virtual address to [__]p{te,ud,md}_free_tlb()
2009-07-27 12:10:38 -07:00
memory_hotplug.c
page-allocator: reset wmark_min and inactive ratio of zone when hotplug happens
2009-06-16 19:47:42 -07:00
mempolicy.c
page allocator: do not check NUMA node ID when the caller knows the node is valid
2009-06-16 19:47:32 -07:00
mempool.c
migrate.c
migration: only migrate_prep() once per move_pages()
2009-06-16 19:47:41 -07:00
mincore.c
[CVE-2009-0029] System call wrappers part 14
2009-01-14 14:15:24 +01:00
mlock.c
mm: remove CONFIG_UNEVICTABLE_LRU config option
2009-06-16 19:47:42 -07:00
mm_init.c
mmap.c
Merge branch 'perfcounters-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip
2009-06-11 14:01:07 -07:00
mmu_notifier.c
mmzone.c
[ARM] Double check memmap is actually valid with a memmap has unexpected holes V2
2009-05-18 11:22:24 +01:00
mprotect.c
perf_counter: Add mmap event hooks to mprotect()
2009-06-08 23:10:43 +02:00
mremap.c
[CVE-2009-0029] System call wrappers part 13
2009-01-14 14:15:23 +01:00
msync.c
[CVE-2009-0029] System call wrappers part 13
2009-01-14 14:15:23 +01:00
nommu.c
Merge git://git.kernel.org/pub/scm/linux/kernel/git/lethal/sh-2.6
2009-07-01 11:46:30 -07:00
oom_kill.c
oom: only oom kill exiting tasks with attached memory
2009-06-16 19:47:45 -07:00
page-writeback.c
Fix congestion_wait() sync/async vs read/write confusion
2009-07-10 20:31:53 +02:00
page_alloc.c
Merge branch 'kmemleak' of git://linux-arm.org/linux-2.6
2009-07-12 12:24:35 -07:00
page_cgroup.c
memcg: remove some redundant checks
2009-06-18 13:03:47 -07:00
page_io.c
mm: remove file argument from swap_readpage()
2009-06-16 19:47:44 -07:00
page_isolation.c
pagewalk.c
pdflush.c
Revert "mm: add /proc controls for pdflush threads"
2009-05-15 11:32:24 +02:00
percpu.c
x86: implement percpu_alloc kernel parameter
2009-06-22 11:56:24 +09:00
prio_tree.c
quicklist.c
cpumask: replace node_to_cpumask with cpumask_of_node.
2009-03-13 14:49:46 +10:30
readahead.c
readahead: introduce context readahead algorithm
2009-06-16 19:47:30 -07:00
rmap.c
memcg: add file-based RSS accounting
2009-06-18 13:03:47 -07:00
shmem.c
Get "no acls for this inode" right, fix shmem breakage
2009-06-24 16:58:48 -04:00
shmem_acl.c
switch shmem to inode->i_acl
2009-06-24 08:17:06 -04:00
slab.c
SLAB: Fix lockdep annotations
2009-06-29 09:57:10 +03:00
slob.c
fix RCU-callback-after-kmem_cache_destroy problem in sl[aou]b
2009-06-26 12:10:47 +03:00
slub.c
kmemleak: Trace the kmalloc_large* functions in slub
2009-07-08 14:25:14 +01:00
sparse-vmemmap.c
sparse.c
mm: mminit_validate_memmodel_limits(): remove redundant test
2009-04-01 08:59:11 -07:00
swap.c
mm: fix Committed_AS underflow on large NR_CPUS environment
2009-05-02 15:36:10 -07:00
swap_state.c
mm: remove file argument from swap_readpage()
2009-06-16 19:47:44 -07:00
swapfile.c
memcg: fix swap accounting
2009-06-18 13:03:47 -07:00
thrash.c
mm: pass mm to grab_swap_token
2009-06-23 12:50:05 -07:00
truncate.c
mm: remove __invalidate_mapping_pages variant
2009-06-16 19:47:43 -07:00
util.c
Merge branches 'slab/documentation', 'slab/fixes', 'slob/cleanups' and 'slub/fixes' into for-linus
2009-06-17 08:30:15 +03:00
vmalloc.c
Merge branch 'for-linus' of git://linux-arm.org/linux-2.6
2009-06-11 14:15:57 -07:00
vmscan.c
Fix congestion_wait() sync/async vs read/write confusion
2009-07-10 20:31:53 +02:00
vmstat.c
vmscan: count the number of times zone_reclaim() scans and fails
2009-06-16 19:47:46 -07:00