Searched refs:mm (Results 176 - 200 of 2900) sorted by relevance

1234567891011>>

/linux-master/arch/arm64/mm/
H A Dcontpte.c6 #include <linux/mm.h>
11 static inline bool mm_is_user(struct mm_struct *mm) argument
19 if (unlikely(mm_is_efi(mm)))
21 return mm != &init_mm;
29 static void contpte_try_unfold_partial(struct mm_struct *mm, unsigned long addr, argument
38 contpte_try_unfold(mm, addr, ptep, __ptep_get(ptep));
44 contpte_try_unfold(mm, last_addr, last_ptep,
49 static void contpte_convert(struct mm_struct *mm, unsigned long addr, argument
52 struct vm_area_struct vma = TLB_FLUSH_VMA(mm, 0);
62 pte_t ptent = __ptep_get_and_clear(mm, add
76 __contpte_try_fold(struct mm_struct *mm, unsigned long addr, pte_t *ptep, pte_t pte) argument
140 __contpte_try_unfold(struct mm_struct *mm, unsigned long addr, pte_t *ptep, pte_t pte) argument
240 contpte_set_ptes(struct mm_struct *mm, unsigned long addr, pte_t *ptep, pte_t pte, unsigned int nr) argument
283 contpte_clear_full_ptes(struct mm_struct *mm, unsigned long addr, pte_t *ptep, unsigned int nr, int full) argument
291 contpte_get_and_clear_full_ptes(struct mm_struct *mm, unsigned long addr, pte_t *ptep, unsigned int nr, int full) argument
346 contpte_wrprotect_ptes(struct mm_struct *mm, unsigned long addr, pte_t *ptep, unsigned int nr) argument
[all...]
H A Dcontext.c3 * Based on arch/arm/mm/context.c
13 #include <linux/mm.h>
141 * If we find one, then we can update our mm to use newasid
144 * of the old ASID are updated to reflect the mm. Failure to do
158 static u64 new_context(struct mm_struct *mm) argument
161 u64 asid = atomic64_read(&mm->context.id);
179 if (refcount_read(&mm->context.pinned))
215 void check_and_switch_context(struct mm_struct *mm) argument
224 asid = atomic64_read(&mm->context.id);
248 asid = atomic64_read(&mm
273 arm64_mm_context_get(struct mm_struct *mm) argument
319 arm64_mm_context_put(struct mm_struct *mm) argument
349 cpu_do_switch_mm(phys_addr_t pgd_phys, struct mm_struct *mm) argument
[all...]
/linux-master/drivers/gpu/drm/i915/gem/
H A Di915_gem_pages.c29 obj->mm.madv = I915_MADV_DONTNEED;
40 obj->mm.get_page.sg_pos = pages->sgl;
41 obj->mm.get_page.sg_idx = 0;
42 obj->mm.get_dma_page.sg_pos = pages->sgl;
43 obj->mm.get_dma_page.sg_idx = 0;
45 obj->mm.pages = pages;
47 obj->mm.page_sizes.phys = i915_sg_dma_sizes(pages->sgl);
48 GEM_BUG_ON(!obj->mm.page_sizes.phys);
58 obj->mm.page_sizes.sg = 0;
60 if (obj->mm
[all...]
/linux-master/arch/parisc/kernel/
H A Dvdso.c11 #include <linux/mm.h>
32 current->mm->context.vdso_base = vma->vm_start;
50 * vDSO and insert it into the mm struct tree
58 struct mm_struct *mm = current->mm; local
62 if (mmap_write_lock_killable(mm))
76 map_base = mm->mmap_base;
83 vma = _install_special_mapping(mm, vdso_text_start, vdso_text_len,
88 do_munmap(mm, vdso_text_start, PAGE_SIZE, NULL);
91 current->mm
[all...]
/linux-master/include/drm/
H A Ddrm_buddy.h50 * drm_buddy_free* ownership is given back to the mm.
80 * the mm. Everything above is considered do-not-touch.
128 drm_buddy_block_size(struct drm_buddy *mm, argument
131 return mm->chunk_size << drm_buddy_block_order(block);
134 int drm_buddy_init(struct drm_buddy *mm, u64 size, u64 chunk_size);
136 void drm_buddy_fini(struct drm_buddy *mm);
141 int drm_buddy_alloc_blocks(struct drm_buddy *mm,
147 int drm_buddy_block_trim(struct drm_buddy *mm,
151 void drm_buddy_free_block(struct drm_buddy *mm, struct drm_buddy_block *block);
153 void drm_buddy_free_list(struct drm_buddy *mm, struc
[all...]
/linux-master/arch/s390/include/asm/
H A Dtlb.h16 * The modification of a pte of an active mm struct therefore is
74 __tlb_flush_mm_lazy(tlb->mm);
85 tlb->mm->context.flush_mm = 1;
88 if (mm_alloc_pgste(tlb->mm))
89 gmap_unlink(tlb->mm, (unsigned long *)pte, address);
96 * If the mm uses a two level page table the single pmd is freed
103 if (mm_pmd_folded(tlb->mm))
107 tlb->mm->context.flush_mm = 1;
116 * If the mm uses a four level page table the single p4d is freed
123 if (mm_p4d_folded(tlb->mm))
[all...]
/linux-master/arch/riscv/kernel/
H A Dvdso.c10 #include <linux/mm.h>
55 current->mm->context.vdso = (void *)new_vma->vm_start;
104 struct mm_struct *mm = task->mm; local
106 VMA_ITERATOR(vmi, mm, 0);
108 mmap_read_lock(mm);
119 mmap_read_unlock(mm);
209 static int __setup_additional_pages(struct mm_struct *mm, argument
229 ret = _install_special_mapping(mm, vdso_base, VVAR_SIZE,
235 mm
256 struct mm_struct *mm = current->mm; local
272 struct mm_struct *mm = current->mm; local
[all...]
/linux-master/mm/
H A Dmmap_lock.c5 #include <linux/mm.h>
156 #define TRACE_MMAP_LOCK_EVENT(type, mm, ...) \
160 memcg_path = get_mm_memcg_path(mm); \
161 trace_mmap_lock_##type(mm, \
180 #define TRACE_MMAP_LOCK_EVENT(type, mm, ...) \
181 trace_mmap_lock_##type(mm, "", ##__VA_ARGS__)
199 static const char *get_mm_memcg_path(struct mm_struct *mm) argument
202 struct mem_cgroup *memcg = get_mem_cgroup_from_mm(mm);
228 void __mmap_lock_do_trace_start_locking(struct mm_struct *mm, bool write) argument
230 TRACE_MMAP_LOCK_EVENT(start_locking, mm, writ
234 __mmap_lock_do_trace_acquire_returned(struct mm_struct *mm, bool write, bool success) argument
241 __mmap_lock_do_trace_released(struct mm_struct *mm, bool write) argument
[all...]
/linux-master/arch/powerpc/mm/book3s64/
H A Dhash_tlb.c6 * Derived from arch/ppc64/mm/init.c:
13 * Derived from "arch/i386/mm/init.c"
21 #include <linux/mm.h>
40 void hpte_need_flush(struct mm_struct *mm, unsigned long addr, argument
63 psize = get_slice_psize(mm, addr);
72 psize = pte_pagesize_index(mm, addr, pte); /* shutup gcc */
75 psize = pte_pagesize_index(mm, addr, pte);
90 vsid = get_user_vsid(&mm->context, addr, ssize);
104 flush_hash_page(vpn, rpte, psize, ssize, mm_is_thread_local(mm));
119 if (i != 0 && (mm !
224 flush_hash_table_pmd_range(struct mm_struct *mm, pmd_t *pmd, unsigned long addr) argument
[all...]
H A Dradix_tlb.c8 #include <linux/mm.h>
12 #include <linux/sched/mm.h>
368 static inline void _tlbiel_pid_multicast(struct mm_struct *mm, argument
371 struct cpumask *cpus = mm_cpumask(mm);
380 if (atomic_read(&mm->context.copros) > 0)
506 static inline void _tlbiel_va_multicast(struct mm_struct *mm, argument
510 struct cpumask *cpus = mm_cpumask(mm);
513 if (atomic_read(&mm->context.copros) > 0)
556 static inline void _tlbiel_va_range_multicast(struct mm_struct *mm, argument
561 struct cpumask *cpus = mm_cpumask(mm);
582 radix__local_flush_tlb_mm(struct mm_struct *mm) argument
596 radix__local_flush_all_mm(struct mm_struct *mm) argument
609 __flush_all_mm(struct mm_struct *mm, bool fullmm) argument
615 radix__local_flush_tlb_page_psize(struct mm_struct *mm, unsigned long vmaddr, int psize) argument
639 mm_needs_flush_escalation(struct mm_struct *mm) argument
663 exit_lazy_flush_tlb(struct mm_struct *mm, bool always_flush) argument
717 struct mm_struct *mm = arg; local
721 exit_flush_lazy_tlbs(struct mm_struct *mm) argument
735 exit_flush_lazy_tlbs(struct mm_struct *mm) argument
765 flush_type_needed(struct mm_struct *mm, bool fullmm) argument
834 radix__flush_tlb_mm(struct mm_struct *mm) argument
875 __flush_all_mm(struct mm_struct *mm, bool fullmm) argument
908 radix__flush_all_mm(struct mm_struct *mm) argument
914 radix__flush_tlb_page_psize(struct mm_struct *mm, unsigned long vmaddr, int psize) argument
1018 __radix__flush_tlb_range(struct mm_struct *mm, unsigned long start, unsigned long end) argument
1187 struct mm_struct *mm = tlb->mm; local
1235 __radix__flush_tlb_range_psize(struct mm_struct *mm, unsigned long start, unsigned long end, int psize, bool also_pwc) argument
1303 radix__flush_tlb_range_psize(struct mm_struct *mm, unsigned long start, unsigned long end, int psize) argument
1309 radix__flush_tlb_pwc_range_psize(struct mm_struct *mm, unsigned long start, unsigned long end, int psize) argument
1316 radix__flush_tlb_collapsed_pmd(struct mm_struct *mm, unsigned long addr) argument
[all...]
/linux-master/arch/loongarch/kernel/
H A Dvdso.c13 #include <linux/mm.h>
43 current->mm->context.vdso = (void *)(new_vma->vm_start);
133 struct mm_struct *mm = task->mm; local
136 VMA_ITERATOR(vmi, mm, 0);
138 mmap_read_lock(mm);
143 mmap_read_unlock(mm);
165 struct mm_struct *mm = current->mm; local
169 if (mmap_write_lock_killable(mm))
[all...]
/linux-master/arch/riscv/mm/
H A Dtlbflush.c3 #include <linux/mm.h>
142 static inline unsigned long get_mm_asid(struct mm_struct *mm) argument
145 atomic_long_read(&mm->context.id) & asid_mask : FLUSH_TLB_NO_ASID;
148 void flush_tlb_mm(struct mm_struct *mm) argument
150 __flush_tlb_range(mm_cpumask(mm), get_mm_asid(mm),
154 void flush_tlb_mm_range(struct mm_struct *mm, argument
158 __flush_tlb_range(mm_cpumask(mm), get_mm_asid(mm),
216 bool arch_tlbbatch_should_defer(struct mm_struct *mm) argument
221 arch_tlbbatch_add_pending(struct arch_tlbflush_unmap_batch *batch, struct mm_struct *mm, unsigned long uaddr) argument
228 arch_flush_tlb_batched_pending(struct mm_struct *mm) argument
[all...]
H A Dhugetlbpage.c30 pte_t *huge_pte_alloc(struct mm_struct *mm, argument
42 pgd = pgd_offset(mm, addr);
43 p4d = p4d_alloc(mm, pgd, addr);
47 pud = pud_alloc(mm, p4d, addr);
58 pte = huge_pmd_share(mm, vma, addr, pud);
60 pte = (pte_t *)pmd_alloc(mm, pud, addr);
64 pmd = pmd_alloc(mm, pud, addr);
70 pte = pte_alloc_huge(mm, pmd, addr & napot_cont_mask(order));
84 pte_t *huge_pte_offset(struct mm_struct *mm, argument
95 pgd = pgd_offset(mm, add
148 get_clear_contig(struct mm_struct *mm, unsigned long addr, pte_t *ptep, unsigned long pte_num) argument
169 get_clear_contig_flush(struct mm_struct *mm, unsigned long addr, pte_t *ptep, unsigned long pte_num) argument
200 clear_flush(struct mm_struct *mm, unsigned long addr, pte_t *ptep, unsigned long pgsize, unsigned long ncontig) argument
223 set_huge_pte_at(struct mm_struct *mm, unsigned long addr, pte_t *ptep, pte_t pte, unsigned long sz) argument
269 struct mm_struct *mm = vma->vm_mm; local
294 huge_ptep_get_and_clear(struct mm_struct *mm, unsigned long addr, pte_t *ptep) argument
309 huge_ptep_set_wrprotect(struct mm_struct *mm, unsigned long addr, pte_t *ptep) argument
349 huge_pte_clear(struct mm_struct *mm, unsigned long addr, pte_t *ptep, unsigned long sz) argument
[all...]
/linux-master/arch/parisc/include/asm/
H A Dmmu_context.h5 #include <linux/mm.h>
19 init_new_context(struct task_struct *tsk, struct mm_struct *mm) argument
21 BUG_ON(atomic_read(&mm->mm_users) != 1);
23 mm->context.space_id = alloc_sid();
29 destroy_context(struct mm_struct *mm) argument
31 free_sid(mm->context.space_id);
32 mm->context.space_id = 0;
84 * for a new mm created in the exec path. There's also
/linux-master/arch/alpha/kernel/
H A Dsmp.c18 #include <linux/sched/mm.h>
19 #include <linux/mm.h>
145 /* All kernel threads share the same mm context. */
626 struct mm_struct *mm = x; local
627 if (mm == current->active_mm && !asn_locked())
628 flush_tlb_current(mm);
630 flush_tlb_other(mm);
634 flush_tlb_mm(struct mm_struct *mm) argument
638 if (mm == current->active_mm) {
639 flush_tlb_current(mm);
661 struct mm_struct *mm; member in struct:flush_tlb_page_struct
669 struct mm_struct * mm = data->mm; local
681 struct mm_struct *mm = vma->vm_mm; local
721 struct mm_struct *mm = (struct mm_struct *) x; local
732 struct mm_struct *mm = vma->vm_mm; local
[all...]
/linux-master/mm/damon/
H A Dvaddr.c16 #include <linux/sched/mm.h>
44 struct mm_struct *mm; local
50 mm = get_task_mm(task);
52 return mm;
116 static int __damon_va_three_regions(struct mm_struct *mm, argument
120 VMA_ITERATOR(vmi, mm, 0);
176 struct mm_struct *mm; local
179 mm = damon_get_mm(t);
180 if (!mm)
183 mmap_read_lock(mm);
338 damon_hugetlb_mkold(pte_t *pte, struct mm_struct *mm, struct vm_area_struct *vma, unsigned long addr) argument
396 damon_va_mkold(struct mm_struct *mm, unsigned long addr) argument
407 __damon_va_prepare_access_check(struct mm_struct *mm, struct damon_region *r) argument
418 struct mm_struct *mm; local
540 damon_va_young(struct mm_struct *mm, unsigned long addr, unsigned long *folio_sz) argument
560 __damon_va_check_access(struct mm_struct *mm, struct damon_region *r, bool same_target, struct damon_attrs *attrs) argument
589 struct mm_struct *mm; local
637 struct mm_struct *mm; local
[all...]
/linux-master/arch/microblaze/mm/
H A Dfault.c2 * arch/microblaze/mm/fault.c
6 * Derived from "arch/ppc/mm/fault.c"
9 * Derived from "arch/i386/mm/fault.c"
29 #include <linux/mm.h>
90 struct mm_struct *mm = current->mm; local
109 if (unlikely(faulthandler_disabled() || !mm)) {
114 as is current->mm == NULL. */
115 pr_emerg("Page fault in user mode with faulthandler_disabled(), mm = %p\n",
116 mm);
[all...]
/linux-master/arch/m68k/mm/
H A Dfault.c3 * linux/arch/m68k/mm/fault.c
9 #include <linux/mm.h>
73 struct mm_struct *mm = current->mm; local
79 regs->sr, regs->pc, address, error_code, mm ? mm->pgd : NULL);
85 if (faulthandler_disabled() || !mm)
93 mmap_read_lock(mm);
95 vma = find_vma(mm, address);
110 vma = expand_stack(mm, addres
[all...]
/linux-master/drivers/firmware/efi/
H A Dfdtparams.c84 u64 __init efi_get_fdt_params(struct efi_memory_map_data *mm) argument
94 [MMBASE] = { &mm->phys_map, sizeof(mm->phys_map) },
95 [MMSIZE] = { &mm->size, sizeof(mm->size) },
96 [DCSIZE] = { &mm->desc_size, sizeof(mm->desc_size) },
97 [DCVERS] = { &mm->desc_version, sizeof(mm->desc_version) },
/linux-master/arch/arc/include/asm/
H A Dtlbflush.h9 #include <linux/mm.h>
12 void local_flush_tlb_mm(struct mm_struct *mm);
27 #define flush_tlb_mm(mm) local_flush_tlb_mm(mm)
37 extern void flush_tlb_mm(struct mm_struct *mm);
/linux-master/arch/csky/abiv1/
H A Dmmap.c5 #include <linux/mm.h>
28 struct mm_struct *mm = current->mm; local
58 vma = find_vma(mm, addr);
66 info.low_limit = mm->mmap_base;
/linux-master/arch/powerpc/include/asm/
H A Dhugetlb.h20 int slice_is_hugepage_only_range(struct mm_struct *mm, unsigned long addr,
23 static inline int is_hugepage_only_range(struct mm_struct *mm, argument
28 return slice_is_hugepage_only_range(mm, addr, len);
39 static inline pte_t huge_ptep_get_and_clear(struct mm_struct *mm, argument
42 return __pte(pte_update(mm, addr, ptep, ~0UL, 0, 1));
/linux-master/arch/csky/include/asm/
H A Dpgalloc.h7 #include <linux/mm.h>
13 static inline void pmd_populate_kernel(struct mm_struct *mm, pmd_t *pmd, argument
19 static inline void pmd_populate(struct mm_struct *mm, pmd_t *pmd, argument
27 static inline pte_t *pte_alloc_one_kernel(struct mm_struct *mm) argument
42 static inline pgd_t *pgd_alloc(struct mm_struct *mm) argument
/linux-master/arch/xtensa/mm/
H A Dtlb.c2 * arch/xtensa/mm/tlb.c
17 #include <linux/mm.h>
58 /* If mm is current, we simply assign the current task a new ASID, thus,
59 * invalidating all previous tlb entries. If mm is someone else's user mapping,
64 void local_flush_tlb_mm(struct mm_struct *mm) argument
68 if (mm == current->active_mm) {
71 mm->context.asid[cpu] = NO_CONTEXT;
72 activate_context(mm, cpu);
75 mm->context.asid[cpu] = NO_CONTEXT;
76 mm
93 struct mm_struct *mm = vma->vm_mm; local
130 struct mm_struct* mm = vma->vm_mm; local
177 struct mm_struct *mm = task->mm; local
[all...]
/linux-master/arch/sparc/include/asm/
H A Dhugetlb.h16 void set_huge_pte_at(struct mm_struct *mm, unsigned long addr,
18 void __set_huge_pte_at(struct mm_struct *mm, unsigned long addr,
22 pte_t huge_ptep_get_and_clear(struct mm_struct *mm, unsigned long addr,
33 static inline void huge_ptep_set_wrprotect(struct mm_struct *mm, argument
37 __set_huge_pte_at(mm, addr, ptep, pte_wrprotect(old_pte));

Completed in 249 milliseconds

1234567891011>>