diff options
author | Chris Metcalf <cmetcalf@tilera.com> | 2010-08-13 08:52:19 -0400 |
---|---|---|
committer | Chris Metcalf <cmetcalf@tilera.com> | 2010-08-13 08:52:19 -0400 |
commit | c745a8a11fa1df6078bfc61fc29492ed43f71c2b (patch) | |
tree | 2db1cdf9cd0d0e892f4f92de1fd2700ac319f04a /arch/tile/mm | |
parent | 1fcbe027b5d29ec9cd0eeb753c14fb366ae852ac (diff) |
arch/tile: Various cleanups.
This change rolls up random cleanups not representing any actual bugs.
- Remove a stale CONFIG_ value from the default tile_defconfig
- Remove unused tns_atomic_xxx() family of methods from <asm/atomic.h>
- Optimize get_order() using Tile's "clz" instruction
- Fix a bad hypervisor upcall name (not currently used in Linux anyway)
- Use __copy_in_user_inatomic() name for consistency, and export it
- Export some additional hypervisor driver I/O upcalls and some homecache calls
- Remove the obfuscating MEMCPY_TEST_WH64 support code
- Other stray comment cleanups, #if 0 removal, etc.
Signed-off-by: Chris Metcalf <cmetcalf@tilera.com>
Diffstat (limited to 'arch/tile/mm')
-rw-r--r-- | arch/tile/mm/fault.c | 8 | ||||
-rw-r--r-- | arch/tile/mm/homecache.c | 3 |
2 files changed, 11 insertions, 0 deletions
diff --git a/arch/tile/mm/fault.c b/arch/tile/mm/fault.c index 0011f06b4fe2..704f3e8a4385 100644 --- a/arch/tile/mm/fault.c +++ b/arch/tile/mm/fault.c | |||
@@ -567,6 +567,14 @@ do_sigbus: | |||
567 | * since that might indicate we have not yet squirreled the SPR | 567 | * since that might indicate we have not yet squirreled the SPR |
568 | * contents away and can thus safely take a recursive interrupt. | 568 | * contents away and can thus safely take a recursive interrupt. |
569 | * Accordingly, the hypervisor passes us the PC via SYSTEM_SAVE_1_2. | 569 | * Accordingly, the hypervisor passes us the PC via SYSTEM_SAVE_1_2. |
570 | * | ||
571 | * Note that this routine is called before homecache_tlb_defer_enter(), | ||
572 | * which means that we can properly unlock any atomics that might | ||
573 | * be used there (good), but also means we must be very sensitive | ||
574 | * to not touch any data structures that might be located in memory | ||
575 | * that could migrate, as we could be entering the kernel on a dataplane | ||
576 | * cpu that has been deferring kernel TLB updates. This means, for | ||
577 | * example, that we can't migrate init_mm or its pgd. | ||
570 | */ | 578 | */ |
571 | struct intvec_state do_page_fault_ics(struct pt_regs *regs, int fault_num, | 579 | struct intvec_state do_page_fault_ics(struct pt_regs *regs, int fault_num, |
572 | unsigned long address, | 580 | unsigned long address, |
diff --git a/arch/tile/mm/homecache.c b/arch/tile/mm/homecache.c index 97c478e7be27..fb3b4a55cec4 100644 --- a/arch/tile/mm/homecache.c +++ b/arch/tile/mm/homecache.c | |||
@@ -29,6 +29,7 @@ | |||
29 | #include <linux/timex.h> | 29 | #include <linux/timex.h> |
30 | #include <linux/cache.h> | 30 | #include <linux/cache.h> |
31 | #include <linux/smp.h> | 31 | #include <linux/smp.h> |
32 | #include <linux/module.h> | ||
32 | 33 | ||
33 | #include <asm/page.h> | 34 | #include <asm/page.h> |
34 | #include <asm/sections.h> | 35 | #include <asm/sections.h> |
@@ -348,6 +349,7 @@ pte_t pte_set_home(pte_t pte, int home) | |||
348 | 349 | ||
349 | return pte; | 350 | return pte; |
350 | } | 351 | } |
352 | EXPORT_SYMBOL(pte_set_home); | ||
351 | 353 | ||
352 | /* | 354 | /* |
353 | * The routines in this section are the "static" versions of the normal | 355 | * The routines in this section are the "static" versions of the normal |
@@ -403,6 +405,7 @@ struct page *homecache_alloc_pages(gfp_t gfp_mask, | |||
403 | homecache_change_page_home(page, order, home); | 405 | homecache_change_page_home(page, order, home); |
404 | return page; | 406 | return page; |
405 | } | 407 | } |
408 | EXPORT_SYMBOL(homecache_alloc_pages); | ||
406 | 409 | ||
407 | struct page *homecache_alloc_pages_node(int nid, gfp_t gfp_mask, | 410 | struct page *homecache_alloc_pages_node(int nid, gfp_t gfp_mask, |
408 | unsigned int order, int home) | 411 | unsigned int order, int home) |