diff options
author | Ian Munsie <imunsie@au1.ibm.com> | 2014-10-08 04:54:58 -0400 |
---|---|---|
committer | Michael Ellerman <mpe@ellerman.id.au> | 2014-10-08 05:15:44 -0400 |
commit | a1dca3465a7be53980abab1e0d6646176fdc075f (patch) | |
tree | e01d711450175ec03ce894a0e9ec8969ce0ecedd /arch/powerpc/include/asm | |
parent | 80c49c7e4a397bb245d72a78e41640eeb0b6e953 (diff) |
powerpc/mm: Add new hash_page_mm()
This adds a new function hash_page_mm() based on the existing hash_page().
This version allows any struct mm to be passed in, rather than assuming
current. This is useful for servicing co-processor faults which are not in the
context of the current running process.
We need to be careful here as the current hash_page() assumes current in a few
places.
Signed-off-by: Ian Munsie <imunsie@au1.ibm.com>
Signed-off-by: Michael Neuling <mikey@neuling.org>
Signed-off-by: Michael Ellerman <mpe@ellerman.id.au>
Diffstat (limited to 'arch/powerpc/include/asm')
-rw-r--r-- | arch/powerpc/include/asm/mmu-hash64.h | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/arch/powerpc/include/asm/mmu-hash64.h b/arch/powerpc/include/asm/mmu-hash64.h index bd813c00ede2..aeebc94b2bce 100644 --- a/arch/powerpc/include/asm/mmu-hash64.h +++ b/arch/powerpc/include/asm/mmu-hash64.h | |||
@@ -324,6 +324,7 @@ extern int __hash_page_64K(unsigned long ea, unsigned long access, | |||
324 | unsigned int local, int ssize); | 324 | unsigned int local, int ssize); |
325 | struct mm_struct; | 325 | struct mm_struct; |
326 | unsigned int hash_page_do_lazy_icache(unsigned int pp, pte_t pte, int trap); | 326 | unsigned int hash_page_do_lazy_icache(unsigned int pp, pte_t pte, int trap); |
327 | extern int hash_page_mm(struct mm_struct *mm, unsigned long ea, unsigned long access, unsigned long trap); | ||
327 | extern int hash_page(unsigned long ea, unsigned long access, unsigned long trap); | 328 | extern int hash_page(unsigned long ea, unsigned long access, unsigned long trap); |
328 | int __hash_page_huge(unsigned long ea, unsigned long access, unsigned long vsid, | 329 | int __hash_page_huge(unsigned long ea, unsigned long access, unsigned long vsid, |
329 | pte_t *ptep, unsigned long trap, int local, int ssize, | 330 | pte_t *ptep, unsigned long trap, int local, int ssize, |