summaryrefslogtreecommitdiff
path: root/include/asm-ppc64/pgalloc.h
AgeCommit message (Collapse)Author
2005-11-19powerpc: Trivially merge several headers from asm-ppc64 to asm-powerpcPaul Mackerras
For these, I have just done the lame-o merge where the file ends up looking like: #ifndef CONFIG_PPC64 #include <asm-ppc/foo.h> #else ... contents from asm-ppc64/foo.h #endif so nothing has changed, really, except that we reduce include/asm-ppc64 a bit more. Signed-off-by: Paul Mackerras <paulus@samba.org>
2005-11-10[PATCH] powerpc: 64k pages pmd alloc fixBenjamin Herrenschmidt
This patch makes the kernel use a different kmem cache for PMD pages as they are smaller than PTE pages. Avoids waste of memory. Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org> Signed-off-by: Paul Mackerras <paulus@samba.org>
2005-11-06[PATCH] ppc64: support 64k pagesBenjamin Herrenschmidt
Adds a new CONFIG_PPC_64K_PAGES which, when enabled, changes the kernel base page size to 64K. The resulting kernel still boots on any hardware. On current machines with 4K pages support only, the kernel will maintain 16 "subpages" for each 64K page transparently. Note that while real 64K capable HW has been tested, the current patch will not enable it yet as such hardware is not released yet, and I'm still verifying with the firmware architects the proper to get the information from the newer hypervisors. Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
2005-08-29[PATCH] Four level pagetables for ppc64David Gibson
Implement 4-level pagetables for ppc64 This patch implements full four-level page tables for ppc64, thereby extending the usable user address range to 44 bits (16T). The patch uses a full page for the tables at the bottom and top level, and a quarter page for the intermediate levels. It uses full 64-bit pointers at every level, thus also increasing the addressable range of physical memory. This patch also tweaks the VSID allocation to allow matching range for user addresses (this halves the number of available contexts) and adds some #if and BUILD_BUG sanity checks. Signed-off-by: David Gibson <dwg@au1.ibm.com> Signed-off-by: Paul Mackerras <paulus@samba.org>
2005-05-01[PATCH] ppc64: update to use the new 4L headersBenjamin Herrenschmidt
This patch converts ppc64 to use the generic pgtable-nopud.h instead of the "fixup" header. Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
2005-03-28[PATCH] include cleanup in pgalloc.hHerbert Pötzl
This patch cleans up asm-*/pgalloc.h by removing the generous includes which are obsoleted (duplicated) by including linux/mm.h (and friends) They are double checked and verified by the PLM cross compiling service (the patched kernel gives the same warnings/errors as the unpatched) http://osdl.org/plm-cgi/plm?module=patch_info&patch_id=4313 Signed-off-by: Herbert Pötzl <herbert@13thfloor.at> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
2005-02-23[PPC]: Use new set_pte_at() w/mm+address args.David S. Miller
Based almost entirely upon an earlier patch by Benjamin Herrenschmidt. Signed-off-by: David S. Miller <davem@davemloft.net>
2004-08-26[PATCH] include asm/page.h for virt_to_page()Dave Hansen
asm/page.h seems to be the accepted place to declare virt_to_page() on a vast majority of architectures. This patch makes sure that a few files which use that function also directly include the header. Signed-off-by: Dave Hansen <haveblue@us.ibm.com> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
2004-06-17[PATCH] ppc64: uninline __pte_free_tlb()Andrew Morton
The pgalloc.h changes broke ppc64: In file included from include/asm-generic/tlb.h:18, from include/asm/tlb.h:24, from arch/ppc64/mm/hash_utils.c:48: include/asm/pgalloc.h: In function `__pte_free_tlb': include/asm/pgalloc.h:110: dereferencing pointer to incomplete type include/asm/pgalloc.h:111: dereferencing pointer to incomplete type Uninlining __pte_free_tlb() fixes that. Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
2004-05-22[PATCH] rmap 12 pgtable remove rmapAndrew Morton
From: Hugh Dickins <hugh@veritas.com> Remove the support for pte_chain rmap from page table initialization, just continue to maintain nr_page_table_pages (but only for user page tables - it also counted vmalloc page tables before, little need, and I'm unsure if per-cpu stats are safe early enough on all arches). mm/memory.c is the only core file affected. But ppc and ppc64 have found the old rmap page table initialization useful to support their ptep_test_and_clear_young: so transfer rmap's initialization to them (even on kernel page tables? well, okay).
2004-05-06[PATCH] ppc64: Fix nasty typo in PTE freeing codeBenjamin Herrenschmidt
There is a typo in the PTE freeing code causing us to possibly overflow the batch structure. Obvious fix (look at the closing parentheses).
2004-01-18[PATCH] ppc64: Fix {pte,pmd}_free vs. hash_page race by relaying actual ↵Andrew Morton
deallocation with RCU, from Ben Herrenschmidt From: Anton Blanchard <anton@samba.org> Fix {pte,pmd}_free vs. hash_page race by relaying actual deallocation with RCU, from Ben Herrenschmidt
2003-09-20ppc64: slabify ppc64 pagetables, from Bill IrwinAnton Blanchard
2003-04-20[PATCH] use __GFP_REPEAT in pmd_alloc_one()Andrew Morton
Convert all pmd_alloc_one() implementations to use __GFP_REPEAT
2003-04-20[PATCH] use __GFP_REPEAT in pte_alloc_one()Andrew Morton
Remove all the open-coded retry loops in various architectures, use __GFP_REPEAT. It could be that at some time in the future we change __GFP_REPEAT to give up after ten seconds or so, so all the checks for failed allocations are retained.
2002-09-14ppc64: DISCONTIGMEM updates, rework to be like x86 versionAnton Blanchard
2002-08-27[PATCH] reduced TLB invalidation rateAndrew Morton
It has been noticed that across a kernel build many calls to tlb_flush_mmu() do not have anything to flush, apparently because glibc is mmapping a file over a previously-mapped region which has no faulted-in ptes. This patch detects this case and optimises away a little over one third of the tlb invalidations. The functions which potentially cause an invalidate are tlb_remove_tlb_entry(), pte_free_tlb() and pmd_free_tlb(). These have been front-ended in asm-generic/tlb.h and the per-arch versions now have leading double-underscores. The generic versions tag the mmu_gather_t as needing a flush and then call the arch-specific version. tlb_flush_mmu() looks at tlb->need_flush and if it sees that no real activity has happened, the invalidation is avoided. The success rate is displayed in /proc/meminfo for the while. This should be removed later.
2002-06-03ppc64: copy_user_page and clear_user_page now take a page *Anton Blanchard
ppc64: updates for mmu gather code
2002-04-13ppc64: Paca -> paca, Naca -> naca from Dave EngebretsenAnton Blanchard
2002-04-09ppc64: Fix up some warnings in the pagetable allocation codeAnton Blanchard
2002-03-16ppc64: updates for 2.5.7-pre1 - futexes, Anton Blanchard
2002-02-22ppc64: update for pte in highmem changesAnton Blanchard
2002-02-15Add ppc64 support. This includes both pSeries (RS/6000) andAnton Blanchard
iSeries (AS/400). There are no changes outside of include/asm-ppc64 and arch/ppc64 in this changeset.