diff options
author | Paul Mundt <lethal@linux-sh.org> | 2011-05-31 00:10:26 -0400 |
---|---|---|
committer | Paul Mundt <lethal@linux-sh.org> | 2011-05-31 00:10:26 -0400 |
commit | 8181d3ef26ed1d9eb21e2cdcac374e1f457fdc06 (patch) | |
tree | 1a081f09ebcf2a84de899ddeadd0e4c5e48b50d2 /arch/sh/include/asm | |
parent | 54525552c6ccfd867e819845da14be994e303218 (diff) | |
parent | 55922c9d1b84b89cb946c777fddccb3247e7df2c (diff) |
Merge branch 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux-2.6 into sh-fixes-for-linus
Diffstat (limited to 'arch/sh/include/asm')
-rw-r--r-- | arch/sh/include/asm/kgdb.h | 1 | ||||
-rw-r--r-- | arch/sh/include/asm/ptrace.h | 6 | ||||
-rw-r--r-- | arch/sh/include/asm/suspend.h | 1 | ||||
-rw-r--r-- | arch/sh/include/asm/tlb.h | 28 | ||||
-rw-r--r-- | arch/sh/include/asm/unistd_32.h | 3 | ||||
-rw-r--r-- | arch/sh/include/asm/unistd_64.h | 3 |
6 files changed, 26 insertions, 16 deletions
diff --git a/arch/sh/include/asm/kgdb.h b/arch/sh/include/asm/kgdb.h index 4235e228d921..f3613952d1ae 100644 --- a/arch/sh/include/asm/kgdb.h +++ b/arch/sh/include/asm/kgdb.h | |||
@@ -34,5 +34,6 @@ static inline void arch_kgdb_breakpoint(void) | |||
34 | 34 | ||
35 | #define CACHE_FLUSH_IS_SAFE 1 | 35 | #define CACHE_FLUSH_IS_SAFE 1 |
36 | #define BREAK_INSTR_SIZE 2 | 36 | #define BREAK_INSTR_SIZE 2 |
37 | #define GDB_ADJUSTS_BREAK_OFFSET | ||
37 | 38 | ||
38 | #endif /* __ASM_SH_KGDB_H */ | 39 | #endif /* __ASM_SH_KGDB_H */ |
diff --git a/arch/sh/include/asm/ptrace.h b/arch/sh/include/asm/ptrace.h index de167d3a1a80..40725b4a8018 100644 --- a/arch/sh/include/asm/ptrace.h +++ b/arch/sh/include/asm/ptrace.h | |||
@@ -40,9 +40,8 @@ | |||
40 | #include <asm/system.h> | 40 | #include <asm/system.h> |
41 | 41 | ||
42 | #define user_mode(regs) (((regs)->sr & 0x40000000)==0) | 42 | #define user_mode(regs) (((regs)->sr & 0x40000000)==0) |
43 | #define user_stack_pointer(_regs) ((unsigned long)(_regs)->regs[15]) | ||
44 | #define kernel_stack_pointer(_regs) ((unsigned long)(_regs)->regs[15]) | 43 | #define kernel_stack_pointer(_regs) ((unsigned long)(_regs)->regs[15]) |
45 | #define instruction_pointer(regs) ((unsigned long)(regs)->pc) | 44 | #define GET_USP(regs) ((regs)->regs[15]) |
46 | 45 | ||
47 | extern void show_regs(struct pt_regs *); | 46 | extern void show_regs(struct pt_regs *); |
48 | 47 | ||
@@ -139,6 +138,9 @@ static inline unsigned long profile_pc(struct pt_regs *regs) | |||
139 | 138 | ||
140 | return pc; | 139 | return pc; |
141 | } | 140 | } |
141 | #define profile_pc profile_pc | ||
142 | |||
143 | #include <asm-generic/ptrace.h> | ||
142 | #endif /* __KERNEL__ */ | 144 | #endif /* __KERNEL__ */ |
143 | 145 | ||
144 | #endif /* __ASM_SH_PTRACE_H */ | 146 | #endif /* __ASM_SH_PTRACE_H */ |
diff --git a/arch/sh/include/asm/suspend.h b/arch/sh/include/asm/suspend.h index 64eb41a063e8..e14567a7e9a1 100644 --- a/arch/sh/include/asm/suspend.h +++ b/arch/sh/include/asm/suspend.h | |||
@@ -3,7 +3,6 @@ | |||
3 | 3 | ||
4 | #ifndef __ASSEMBLY__ | 4 | #ifndef __ASSEMBLY__ |
5 | #include <linux/notifier.h> | 5 | #include <linux/notifier.h> |
6 | static inline int arch_prepare_suspend(void) { return 0; } | ||
7 | 6 | ||
8 | #include <asm/ptrace.h> | 7 | #include <asm/ptrace.h> |
9 | 8 | ||
diff --git a/arch/sh/include/asm/tlb.h b/arch/sh/include/asm/tlb.h index 75abb38dffd5..6c308d8b9a50 100644 --- a/arch/sh/include/asm/tlb.h +++ b/arch/sh/include/asm/tlb.h | |||
@@ -23,8 +23,6 @@ struct mmu_gather { | |||
23 | unsigned long start, end; | 23 | unsigned long start, end; |
24 | }; | 24 | }; |
25 | 25 | ||
26 | DECLARE_PER_CPU(struct mmu_gather, mmu_gathers); | ||
27 | |||
28 | static inline void init_tlb_gather(struct mmu_gather *tlb) | 26 | static inline void init_tlb_gather(struct mmu_gather *tlb) |
29 | { | 27 | { |
30 | tlb->start = TASK_SIZE; | 28 | tlb->start = TASK_SIZE; |
@@ -36,17 +34,13 @@ static inline void init_tlb_gather(struct mmu_gather *tlb) | |||
36 | } | 34 | } |
37 | } | 35 | } |
38 | 36 | ||
39 | static inline struct mmu_gather * | 37 | static inline void |
40 | tlb_gather_mmu(struct mm_struct *mm, unsigned int full_mm_flush) | 38 | tlb_gather_mmu(struct mmu_gather *tlb, struct mm_struct *mm, unsigned int full_mm_flush) |
41 | { | 39 | { |
42 | struct mmu_gather *tlb = &get_cpu_var(mmu_gathers); | ||
43 | |||
44 | tlb->mm = mm; | 40 | tlb->mm = mm; |
45 | tlb->fullmm = full_mm_flush; | 41 | tlb->fullmm = full_mm_flush; |
46 | 42 | ||
47 | init_tlb_gather(tlb); | 43 | init_tlb_gather(tlb); |
48 | |||
49 | return tlb; | ||
50 | } | 44 | } |
51 | 45 | ||
52 | static inline void | 46 | static inline void |
@@ -57,8 +51,6 @@ tlb_finish_mmu(struct mmu_gather *tlb, unsigned long start, unsigned long end) | |||
57 | 51 | ||
58 | /* keep the page table cache within bounds */ | 52 | /* keep the page table cache within bounds */ |
59 | check_pgt_cache(); | 53 | check_pgt_cache(); |
60 | |||
61 | put_cpu_var(mmu_gathers); | ||
62 | } | 54 | } |
63 | 55 | ||
64 | static inline void | 56 | static inline void |
@@ -91,7 +83,21 @@ tlb_end_vma(struct mmu_gather *tlb, struct vm_area_struct *vma) | |||
91 | } | 83 | } |
92 | } | 84 | } |
93 | 85 | ||
94 | #define tlb_remove_page(tlb,page) free_page_and_swap_cache(page) | 86 | static inline void tlb_flush_mmu(struct mmu_gather *tlb) |
87 | { | ||
88 | } | ||
89 | |||
90 | static inline int __tlb_remove_page(struct mmu_gather *tlb, struct page *page) | ||
91 | { | ||
92 | free_page_and_swap_cache(page); | ||
93 | return 1; /* avoid calling tlb_flush_mmu */ | ||
94 | } | ||
95 | |||
96 | static inline void tlb_remove_page(struct mmu_gather *tlb, struct page *page) | ||
97 | { | ||
98 | __tlb_remove_page(tlb, page); | ||
99 | } | ||
100 | |||
95 | #define pte_free_tlb(tlb, ptep, addr) pte_free((tlb)->mm, ptep) | 101 | #define pte_free_tlb(tlb, ptep, addr) pte_free((tlb)->mm, ptep) |
96 | #define pmd_free_tlb(tlb, pmdp, addr) pmd_free((tlb)->mm, pmdp) | 102 | #define pmd_free_tlb(tlb, pmdp, addr) pmd_free((tlb)->mm, pmdp) |
97 | #define pud_free_tlb(tlb, pudp, addr) pud_free((tlb)->mm, pudp) | 103 | #define pud_free_tlb(tlb, pudp, addr) pud_free((tlb)->mm, pudp) |
diff --git a/arch/sh/include/asm/unistd_32.h b/arch/sh/include/asm/unistd_32.h index bb7d2702c2c9..3432008d2888 100644 --- a/arch/sh/include/asm/unistd_32.h +++ b/arch/sh/include/asm/unistd_32.h | |||
@@ -374,8 +374,9 @@ | |||
374 | #define __NR_clock_adjtime 361 | 374 | #define __NR_clock_adjtime 361 |
375 | #define __NR_syncfs 362 | 375 | #define __NR_syncfs 362 |
376 | #define __NR_sendmmsg 363 | 376 | #define __NR_sendmmsg 363 |
377 | #define __NR_setns 364 | ||
377 | 378 | ||
378 | #define NR_syscalls 364 | 379 | #define NR_syscalls 365 |
379 | 380 | ||
380 | #ifdef __KERNEL__ | 381 | #ifdef __KERNEL__ |
381 | 382 | ||
diff --git a/arch/sh/include/asm/unistd_64.h b/arch/sh/include/asm/unistd_64.h index 46327cea1e5c..ec9898665f23 100644 --- a/arch/sh/include/asm/unistd_64.h +++ b/arch/sh/include/asm/unistd_64.h | |||
@@ -395,10 +395,11 @@ | |||
395 | #define __NR_clock_adjtime 372 | 395 | #define __NR_clock_adjtime 372 |
396 | #define __NR_syncfs 373 | 396 | #define __NR_syncfs 373 |
397 | #define __NR_sendmmsg 374 | 397 | #define __NR_sendmmsg 374 |
398 | #define __NR_setns 375 | ||
398 | 399 | ||
399 | #ifdef __KERNEL__ | 400 | #ifdef __KERNEL__ |
400 | 401 | ||
401 | #define NR_syscalls 375 | 402 | #define NR_syscalls 376 |
402 | 403 | ||
403 | #define __ARCH_WANT_IPC_PARSE_VERSION | 404 | #define __ARCH_WANT_IPC_PARSE_VERSION |
404 | #define __ARCH_WANT_OLD_READDIR | 405 | #define __ARCH_WANT_OLD_READDIR |