/arch/x86/include/asm/ |
D | mmu_context.h | 13 struct mm_struct *next) in paravirt_activate_mm() argument 33 static inline void switch_mm(struct mm_struct *prev, struct mm_struct *next, in switch_mm() argument 38 if (likely(prev != next)) { in switch_mm() 41 percpu_write(cpu_tlbstate.active_mm, next); in switch_mm() 43 cpumask_set_cpu(cpu, mm_cpumask(next)); in switch_mm() 46 load_cr3(next->pgd); in switch_mm() 54 if (unlikely(prev->context.ldt != next->context.ldt)) in switch_mm() 55 load_LDT_nolock(&next->context); in switch_mm() 60 BUG_ON(percpu_read(cpu_tlbstate.active_mm) != next); in switch_mm() 62 if (!cpumask_test_and_set_cpu(cpu, mm_cpumask(next))) { in switch_mm() [all …]
|
D | switch_to.h | 6 struct task_struct *next); 31 #define switch_to(prev, next, last) \ argument 66 : [next_sp] "m" (next->thread.sp), \ 67 [next_ip] "m" (next->thread.ip), \ 71 [next] "d" (next) \ 104 #define switch_to(prev, next, last) \ argument 118 : [next] "S" (next), [prev] "D" (prev), \
|
/arch/powerpc/include/asm/ |
D | mmu_context.h | 20 extern void switch_mmu_context(struct mm_struct *prev, struct mm_struct *next); 35 extern void switch_cop(struct mm_struct *next); 43 static inline void switch_mm(struct mm_struct *prev, struct mm_struct *next, in switch_mm() argument 47 cpumask_set_cpu(smp_processor_id(), mm_cpumask(next)); in switch_mm() 51 tsk->thread.pgdir = next->pgd; in switch_mm() 56 get_paca()->pgd = next->pgd; in switch_mm() 59 if (prev == next) in switch_mm() 64 if (prev->context.acop || next->context.acop) in switch_mm() 65 switch_cop(next); in switch_mm() 81 switch_slb(tsk, next); in switch_mm() [all …]
|
/arch/ia64/include/asm/ |
D | switch_to.h | 34 extern void ia64_account_on_switch (struct task_struct *prev, struct task_struct *next); 51 #define __switch_to(prev,next,last) do { \ argument 52 IA64_ACCOUNT_ON_SWITCH(prev, next); \ 55 if (IA64_HAS_EXTRA_STATE(next)) \ 56 ia64_load_extra(next); \ 57 ia64_psr(task_pt_regs(next))->dfh = !ia64_is_local_fpu_owner(next); \ 58 (last) = ia64_switch_to((next)); \ 68 # define switch_to(prev,next,last) do { \ argument 74 __switch_to(prev, next, last); \ 84 # define switch_to(prev,next,last) __switch_to(prev, next, last) argument
|
/arch/blackfin/mm/ |
D | sram-alloc.c | 31 struct sram_piece *next; member 78 per_cpu(free_l1_ssram_head, cpu).next = in l1sram_init() 80 if (!per_cpu(free_l1_ssram_head, cpu).next) { in l1sram_init() 85 per_cpu(free_l1_ssram_head, cpu).next->paddr = (void *)get_l1_scratch_start_cpu(cpu) + reserve; in l1sram_init() 86 per_cpu(free_l1_ssram_head, cpu).next->size = L1_SCRATCH_LENGTH - reserve; in l1sram_init() 87 per_cpu(free_l1_ssram_head, cpu).next->pid = 0; in l1sram_init() 88 per_cpu(free_l1_ssram_head, cpu).next->next = NULL; in l1sram_init() 90 per_cpu(used_l1_ssram_head, cpu).next = NULL; in l1sram_init() 106 per_cpu(free_l1_data_A_sram_head, cpu).next = in l1_data_sram_init() 108 if (!per_cpu(free_l1_data_A_sram_head, cpu).next) { in l1_data_sram_init() [all …]
|
/arch/parisc/include/asm/ |
D | mmu_context.h | 52 static inline void switch_mm(struct mm_struct *prev, struct mm_struct *next, struct task_struct *ts… in switch_mm() argument 55 if (prev != next) { in switch_mm() 56 mtctl(__pa(next->pgd), 25); in switch_mm() 57 load_context(next->context); in switch_mm() 63 static inline void activate_mm(struct mm_struct *prev, struct mm_struct *next) in activate_mm() argument 73 BUG_ON(next == &init_mm); /* Should never happen */ in activate_mm() 75 if (next->context == 0) in activate_mm() 76 next->context = alloc_sid(); in activate_mm() 78 switch_mm(prev,next,current); in activate_mm()
|
/arch/score/include/asm/ |
D | mmu_context.h | 72 static inline void switch_mm(struct mm_struct *prev, struct mm_struct *next, in switch_mm() argument 78 if ((next->context ^ asid_cache) & ASID_VERSION_MASK) in switch_mm() 79 get_new_mmu_context(next); in switch_mm() 81 pevn_set(next->context); in switch_mm() 82 TLBMISS_HANDLER_SETUP_PGD(next->pgd); in switch_mm() 102 activate_mm(struct mm_struct *prev, struct mm_struct *next) in activate_mm() argument 107 get_new_mmu_context(next); in activate_mm() 108 pevn_set(next->context); in activate_mm() 109 TLBMISS_HANDLER_SETUP_PGD(next->pgd); in activate_mm()
|
D | switch_to.h | 4 extern void *resume(void *last, void *next, void *next_ti); 6 #define switch_to(prev, next, last) \ argument 8 (last) = resume(prev, next, task_thread_info(next)); \
|
/arch/tile/include/asm/ |
D | cacheflush.h | 87 char *next = (char *)((long)buffer & -L2_CACHE_BYTES); in __inv_buffer() local 89 while (next < finish) { in __inv_buffer() 90 __insn_inv(next); in __inv_buffer() 91 next += CHIP_INV_STRIDE(); in __inv_buffer() 98 char *next = (char *)((long)buffer & -L2_CACHE_BYTES); in __flush_buffer() local 100 while (next < finish) { in __flush_buffer() 101 __insn_flush(next); in __flush_buffer() 102 next += CHIP_FLUSH_STRIDE(); in __flush_buffer() 109 char *next = (char *)((long)buffer & -L2_CACHE_BYTES); in __finv_buffer() local 111 while (next < finish) { in __finv_buffer() [all …]
|
D | switch_to.h | 36 #define prepare_arch_switch(next) _prepare_arch_switch(next) argument 37 void _prepare_arch_switch(struct task_struct *next); 40 #define switch_to(prev, next, last) ((last) = _switch_to((prev), (next))) argument 42 struct task_struct *next); 46 struct task_struct *next,
|
/arch/frv/include/asm/ |
D | mmu_context.h | 35 #define switch_mm(prev, next, tsk) \ argument 37 if (prev != next) \ 38 change_mm_context(&prev->context, &next->context, next->pgd); \ 41 #define activate_mm(prev, next) \ argument 43 change_mm_context(&prev->context, &next->context, next->pgd); \
|
/arch/sh/include/asm/ |
D | switch_to_64.h | 21 struct task_struct *next, 24 #define switch_to(prev,next,last) \ argument 26 if (last_task_used_math != next) { \ 27 struct pt_regs *regs = next->thread.uregs; \ 30 last = sh64_switch_to(prev, &prev->thread, next, \ 31 &next->thread); \
|
/arch/mn10300/kernel/ |
D | kprobes.c | 133 u8 opc, *pc, *sp, *next; in find_nextpc() local 135 next = 0; in find_nextpc() 144 next = pc + size; in find_nextpc() 152 next = pc + x8; in find_nextpc() 160 next = pc + x16; in find_nextpc() 168 next = pc + x32; in find_nextpc() 174 next = (u8 *)regs->mdr; in find_nextpc() 183 next = (u8 *)x32; in find_nextpc() 189 next = pc + 2; in find_nextpc() 195 next = (u8 *)regs->a0; in find_nextpc() [all …]
|
/arch/blackfin/include/asm/ |
D | switch_to.h | 21 asmlinkage struct task_struct *resume(struct task_struct *prev, struct task_struct *next); 24 #define switch_to(prev,next,last) \ argument 28 memcpy (L1_SCRATCH_TASK_INFO, &task_thread_info(next)->l1_task_info, \ 30 (last) = resume (prev, next); \ 33 #define switch_to(prev, next, last) \ argument 35 (last) = resume(prev, next); \
|
/arch/arm/mm/ |
D | idmap.c | 17 unsigned long next; in idmap_add_pmd() local 31 next = pmd_addr_end(addr, end); in idmap_add_pmd() 34 } while (pmd++, addr = next, addr != end); in idmap_add_pmd() 54 unsigned long next; in idmap_add_pud() local 57 next = pud_addr_end(addr, end); in idmap_add_pud() 58 idmap_add_pmd(pud, addr, next, prot); in idmap_add_pud() 59 } while (pud++, addr = next, addr != end); in idmap_add_pud() 64 unsigned long prot, next; in identity_mapping_add() local 72 next = pgd_addr_end(addr, end); in identity_mapping_add() 73 idmap_add_pud(pgd, addr, next, prot); in identity_mapping_add() [all …]
|
/arch/hexagon/include/asm/ |
D | mmu_context.h | 66 static inline void switch_mm(struct mm_struct *prev, struct mm_struct *next, in switch_mm() argument 75 if (next->context.generation < prev->context.generation) { in switch_mm() 77 next->pgd[l1] = init_mm.pgd[l1]; in switch_mm() 79 next->context.generation = prev->context.generation; in switch_mm() 82 __vmnewmap((void *)next->context.ptbase); in switch_mm() 88 static inline void activate_mm(struct mm_struct *prev, struct mm_struct *next) in activate_mm() argument 93 switch_mm(prev, next, current_thread_info()->task); in activate_mm()
|
/arch/xtensa/include/asm/ |
D | mmu_context.h | 100 activate_mm(struct mm_struct *prev, struct mm_struct *next) in activate_mm() argument 104 __get_new_mmu_context(next); in activate_mm() 105 __load_mmu_context(next); in activate_mm() 109 static inline void switch_mm(struct mm_struct *prev, struct mm_struct *next, in switch_mm() argument 116 if (next->context == NO_CONTEXT || ((next->context^asid) & ~ASID_MASK)) in switch_mm() 117 __get_new_mmu_context(next); in switch_mm() 119 __load_mmu_context(next); in switch_mm()
|
/arch/m32r/include/asm/ |
D | mmu_context.h | 122 struct mm_struct *next, struct task_struct *tsk) in switch_mm() argument 128 if (prev != next) { in switch_mm() 130 cpumask_set_cpu(cpu, mm_cpumask(next)); in switch_mm() 133 *(volatile unsigned long *)MPTB = (unsigned long)next->pgd; in switch_mm() 134 activate_context(next); in switch_mm() 138 if (!cpumask_test_and_set_cpu(cpu, mm_cpumask(next))) in switch_mm() 139 activate_context(next); in switch_mm() 145 #define activate_mm(prev, next) \ argument 146 switch_mm((prev), (next), NULL) 155 #define switch_mm(prev,next,tsk) do { } while (0) argument [all …]
|
/arch/unicore32/include/asm/ |
D | mmu_context.h | 47 switch_mm(struct mm_struct *prev, struct mm_struct *next, in switch_mm() argument 52 if (!cpumask_test_and_set_cpu(cpu, mm_cpumask(next)) || prev != next) in switch_mm() 53 cpu_switch_mm(next->pgd, next); in switch_mm() 57 #define activate_mm(prev, next) switch_mm(prev, next, NULL) argument
|
/arch/powerpc/mm/ |
D | gup.c | 61 unsigned long next; in gup_pmd_range() local 68 next = pmd_addr_end(addr, end); in gup_pmd_range() 73 addr, next, write, pages, nr)) in gup_pmd_range() 75 } else if (!gup_pte_range(pmd, addr, next, write, pages, nr)) in gup_pmd_range() 77 } while (pmdp++, addr = next, addr != end); in gup_pmd_range() 85 unsigned long next; in gup_pud_range() local 92 next = pud_addr_end(addr, end); in gup_pud_range() 97 addr, next, write, pages, nr)) in gup_pud_range() 99 } else if (!gup_pmd_range(pud, addr, next, write, pages, nr)) in gup_pud_range() 101 } while (pudp++, addr = next, addr != end); in gup_pud_range() [all …]
|
/arch/sparc/include/asm/ |
D | switch_to_64.h | 6 #define prepare_arch_switch(next) \ argument 20 #define switch_to(prev, next, last) \ argument 25 : : "r" (__thread_flag_byte_ptr(task_thread_info(next))[TI_FLAG_BYTE_CURRENT_DS]));\ 27 task_thread_info(next); \ 58 : "0" (task_thread_info(next)), \
|
/arch/mn10300/include/asm/ |
D | switch_to.h | 22 #define switch_fpu(prev, next) \ argument 31 #define switch_fpu(prev, next) do {} while (0) argument 37 struct thread_struct *next, 40 #define switch_to(prev, next, last) \ argument 42 switch_fpu(prev, next); \ 44 (last) = __switch_to(&(prev)->thread, &(next)->thread, (prev)); \
|
/arch/s390/include/asm/ |
D | switch_to.h | 79 #define switch_to(prev,next,last) do { \ argument 84 if (next->mm) { \ 85 restore_fp_regs(&next->thread.fp_regs); \ 86 restore_access_regs(&next->thread.acrs[0]); \ 87 update_per_regs(next); \ 89 prev = __switch_to(prev,next); \
|
/arch/sparc/mm/ |
D | gup.c | 72 unsigned long next; in gup_pmd_range() local 79 next = pmd_addr_end(addr, end); in gup_pmd_range() 82 if (!gup_pte_range(pmd, addr, next, write, pages, nr)) in gup_pmd_range() 84 } while (pmdp++, addr = next, addr != end); in gup_pmd_range() 92 unsigned long next; in gup_pud_range() local 99 next = pud_addr_end(addr, end); in gup_pud_range() 102 if (!gup_pmd_range(pud, addr, next, write, pages, nr)) in gup_pud_range() 104 } while (pudp++, addr = next, addr != end); in gup_pud_range() 114 unsigned long next; in get_user_pages_fast() local 146 next = pgd_addr_end(addr, end); in get_user_pages_fast() [all …]
|
/arch/sh/mm/ |
D | gup.c | 120 unsigned long next; in gup_pmd_range() local 127 next = pmd_addr_end(addr, end); in gup_pmd_range() 130 if (!gup_pte_range(pmd, addr, next, write, pages, nr)) in gup_pmd_range() 132 } while (pmdp++, addr = next, addr != end); in gup_pmd_range() 140 unsigned long next; in gup_pud_range() local 147 next = pud_addr_end(addr, end); in gup_pud_range() 150 if (!gup_pmd_range(pud, addr, next, write, pages, nr)) in gup_pud_range() 152 } while (pudp++, addr = next, addr != end); in gup_pud_range() 166 unsigned long next; in __get_user_pages_fast() local 188 next = pgd_addr_end(addr, end); in __get_user_pages_fast() [all …]
|