/linux/arch/sparc/include/asm/ |
H A D | cacheflush_32.h | 10 #define flush_cache_mm(mm) \ argument 11 sparc32_cachetlb_ops->cache_mm(mm) 12 #define flush_cache_dup_mm(mm) \ argument 13 sparc32_cachetlb_ops->cache_mm(mm) 33 #define flush_sig_insns(mm,insn_addr) \ argument 34 sparc32_cachetlb_ops->sig_insns(mm, insn_addr)
|
/linux/arch/parisc/include/asm/ |
H A D | mmu_context.h | 19 init_new_context(struct task_struct *tsk, struct mm_struct *mm) in init_new_context() argument 21 BUG_ON(atomic_read(&mm->mm_users) != 1); in init_new_context() 23 mm->context.space_id = alloc_sid(); in init_new_context() 29 destroy_context(struct mm_struct *mm) in destroy_context() argument 31 free_sid(mm->context.space_id); in destroy_context() 32 mm->context.space_id = 0; in destroy_context()
|
/linux/mm/ |
H A D | mlock.c | 470 struct mm_struct *mm = vma->vm_mm; in mlock_fixup() local 476 is_vm_hugetlb_page(vma) || vma == get_gate_vma(current->mm) || in mlock_fixup() 495 mm->locked_vm += nr_pages; in mlock_fixup() 519 VMA_ITERATOR(vmi, current->mm, start); in apply_vma_lock_flags() 571 static unsigned long count_mm_mlocked_page_nr(struct mm_struct *mm, in count_mm_mlocked_page_nr() argument 577 VMA_ITERATOR(vmi, mm, start); in count_mm_mlocked_page_nr() 630 if (mmap_write_lock_killable(current->mm)) in do_mlock() 633 locked += current->mm->locked_vm; in do_mlock() 641 locked -= count_mm_mlocked_page_nr(current->mm, in do_mlock() 649 mmap_write_unlock(current->mm); in do_mlock() [all …]
|
H A D | mprotect.c | 3 * mm/mprotect.c 515 struct mm_struct *mm = vma->vm_mm; in change_protection_range() 521 pgd = pgd_offset(mm, addr); in change_protection() 607 struct mm_struct *mm = vma->vm_mm; in mprotect_fixup() 632 error = walk_page_range(current->mm, start, end, in mprotect_fixup() 649 if (!may_expand_vm(mm, newflags, nrpages) && in mprotect_fixup() 650 may_expand_vm(mm, oldflags, nrpages)) in mprotect_fixup() 655 if (security_vm_enough_memory_mm(mm, charged)) in mprotect_fixup() 696 vm_stat_account(mm, oldflags, -nrpages); in do_mprotect_pkey() 697 vm_stat_account(mm, newflag in do_mprotect_pkey() 493 struct mm_struct *mm = vma->vm_mm; change_protection_range() local 585 struct mm_struct *mm = vma->vm_mm; mprotect_fixup() local [all...] |
/linux/drivers/gpu/drm/i915/gem/ |
H A D | i915_gem_ttm.c | 119 if (obj->mm.n_placements <= 1) in i915_ttm_select_tt_caching() 161 unsigned int num_allowed = obj->mm.n_placements; in i915_ttm_placement_from_obj() 165 i915_ttm_place_from_region(num_allowed ? obj->mm.placements[0] : in i915_ttm_placement_from_obj() 166 obj->mm.region, &places[0], obj->bo_offset, in i915_ttm_placement_from_obj() 171 i915_ttm_place_from_region(obj->mm.placements[i], in i915_ttm_placement_from_obj() 186 struct intel_memory_region *mr = i915->mm.regions[INTEL_MEMORY_SYSTEM]; in i915_ttm_tt_shmem_populate() 428 if (obj->mm.madv == __I915_MADV_PURGED) in i915_ttm_purge() 451 obj->mm.madv = __I915_MADV_PURGED; in i915_ttm_purge() 480 switch (obj->mm.madv) { in i915_ttm_shrink() 573 page_alignment = obj->mm.region->min_page_size; in i915_ttm_resource_get_st() [all …]
|
H A D | i915_gem_userptr.c | 74 return mmu_interval_notifier_insert(&obj->userptr.notifier, current->mm, in i915_gem_userptr_init__mmu_notifier() 176 obj->mm.dirty = false; in i915_gem_userptr_put_pages() 179 if (obj->mm.dirty && trylock_page(page)) { in i915_gem_userptr_put_pages() 204 obj->mm.dirty = false; in i915_gem_userptr_put_pages() 241 if (obj->userptr.notifier.mm != current->mm) in i915_gem_object_userptr_submit_init() 352 if (!obj->userptr.notifier.mm) in i915_gem_userptr_release() 356 obj->userptr.notifier.mm = NULL; in i915_gem_userptr_release() 401 probe_range(struct mm_struct *mm, unsigned long addr, unsigned long len) in probe_range() argument 403 VMA_ITERATOR(vmi, mm, addr); in probe_range() 407 mmap_read_lock(mm); in probe_range() [all …]
|
H A D | i915_gem_lmem.c | 23 offset -= obj->mm.region->region.start; in i915_gem_object_lmem_io_map() 25 return io_mapping_map_wc(&obj->mm.region->iomap, offset, size); in i915_gem_object_lmem_io_map() 44 struct intel_memory_region *mr = READ_ONCE(obj->mm.region); in i915_gem_object_is_lmem() 68 struct intel_memory_region *mr = READ_ONCE(obj->mm.region); in __i915_gem_object_is_lmem() 105 return i915_gem_object_create_region(i915->mm.regions[INTEL_REGION_LMEM_0], in __i915_gem_object_create_lmem_with_ps() 141 return i915_gem_object_create_region(i915->mm.regions[INTEL_REGION_LMEM_0], in i915_gem_object_create_lmem()
|
/linux/include/trace/events/ |
H A D | mmap.h | 29 __entry->total_vm = current->mm->total_vm; 99 TP_PROTO(struct mm_struct *mm), 101 TP_ARGS(mm), 104 __field(struct mm_struct *, mm) 109 __entry->mm = mm; 110 __entry->mt = &mm->mm_mt;
|
/linux/arch/nios2/mm/ |
H A D | fault.c | 48 struct mm_struct *mm = tsk->mm; in do_page_fault() local 81 if (faulthandler_disabled() || !mm) in do_page_fault() 90 vma = lock_mm_and_find_vma(mm, address, regs); in do_page_fault() 158 mmap_read_unlock(mm); in do_page_fault() 166 mmap_read_unlock(mm); in do_page_fault() 204 mmap_read_unlock(mm); in do_page_fault() 211 mmap_read_unlock(mm); in do_page_fault()
|
/linux/arch/mips/math-emu/ |
H A D | dsemul.c | 77 mm_context_t *mm_ctx = ¤t->mm->context; in alloc_emuframe() 122 static void free_emuframe(int idx, struct mm_struct *mm) in free_emuframe() argument 124 mm_context_t *mm_ctx = &mm->context; in free_emuframe() 163 if (tsk->mm) in dsemul_thread_cleanup() 164 free_emuframe(fr_idx, tsk->mm); in dsemul_thread_cleanup() 198 free_emuframe(fr_idx, current->mm); in dsemul_thread_rollback() 202 void dsemul_mm_cleanup(struct mm_struct *mm) in dsemul_mm_cleanup() argument 204 mm_context_t *mm_ctx = &mm->context; in dsemul_mm_cleanup() 277 free_emuframe(fr_idx, current->mm); in mips_dsemul()
|
/linux/drivers/gpu/drm/i915/gvt/ |
H A D | gtt.h | 185 static inline void intel_vgpu_mm_get(struct intel_vgpu_mm *mm) in intel_vgpu_mm_get() argument 187 kref_get(&mm->ref); in intel_vgpu_mm_get() 192 static inline void intel_vgpu_mm_put(struct intel_vgpu_mm *mm) in intel_vgpu_mm_put() argument 194 kref_put(&mm->ref, _intel_vgpu_mm_release); in intel_vgpu_mm_put() 197 static inline void intel_vgpu_destroy_mm(struct intel_vgpu_mm *mm) in intel_vgpu_destroy_mm() argument 199 intel_vgpu_mm_put(mm); in intel_vgpu_destroy_mm() 269 int intel_vgpu_pin_mm(struct intel_vgpu_mm *mm); 271 void intel_vgpu_unpin_mm(struct intel_vgpu_mm *mm); 273 unsigned long intel_vgpu_gma_to_gpa(struct intel_vgpu_mm *mm,
|
/linux/Documentation/ABI/testing/ |
H A D | sysfs-kernel-mm-cma | 1 What: /sys/kernel/mm/cma/ 5 /sys/kernel/mm/cma/ contains a subdirectory for each CMA 9 /sys/kernel/mm/cma/<cma-heap-name> directory) contains the 15 What: /sys/kernel/mm/cma/<cma-heap-name>/alloc_pages_success 21 What: /sys/kernel/mm/cma/<cma-heap-name>/alloc_pages_fail 27 What: /sys/kernel/mm/cma/<cma-heap-name>/release_pages_success
|
/linux/arch/m68k/include/asm/ |
H A D | tlbflush.h | 78 static inline void flush_tlb_mm(struct mm_struct *mm) in flush_tlb_mm() argument 80 if (mm == current->active_mm) in flush_tlb_mm() 139 static inline void flush_tlb_mm (struct mm_struct *mm) in flush_tlb_mm() argument 146 sun3_put_context(mm->context); in flush_tlb_mm() 188 struct mm_struct *mm = vma->vm_mm; in flush_tlb_range() local 194 sun3_put_context(mm->context); in flush_tlb_range() 200 if(pmeg_ctx[seg] == mm->context) { in flush_tlb_range() 250 static inline void flush_tlb_mm(struct mm_struct *mm) in flush_tlb_mm() argument
|
/linux/drivers/gpu/drm/i915/ |
H A D | i915_mm.c | 25 #include <linux/mm.h> 33 struct mm_struct *mm; member 59 set_pte_at(r->mm, addr, pte, in remap_sg() 78 set_pte_at(r->mm, addr, pte, pte_mkspecial(pfn_pte(r->pfn, r->prot))); in remap_pfn() 92 * Note: this is only safe if the mm semaphore is held when called. 104 r.mm = vma->vm_mm; in remap_io_mapping() 109 err = apply_to_page_range(r.mm, addr, size, remap_pfn, &r); in remap_io_mapping() 128 * Note: this is only safe if the mm semaphore is held when called. 136 .mm = vma->vm_mm, in remap_io_sg() 157 err = apply_to_page_range(r.mm, add [all...] |
/linux/arch/openrisc/include/asm/ |
H A D | pgalloc.h | 28 #define pmd_populate_kernel(mm, pmd, pte) \ argument 31 static inline void pmd_populate(struct mm_struct *mm, pmd_t *pmd, in pmd_populate() argument 42 static inline pgd_t *pgd_alloc(struct mm_struct *mm) in pgd_alloc() argument 61 extern inline pgd_t *pgd_alloc(struct mm_struct *mm) 67 extern pte_t *pte_alloc_one_kernel(struct mm_struct *mm);
|
/linux/drivers/vfio/ |
H A D | vfio_iommu_spapr_tce.c | 69 struct mm_struct *mm; member 77 if (container->mm) { in tce_iommu_mm_set() 78 if (container->mm == current->mm) in tce_iommu_mm_set() 82 BUG_ON(!current->mm); in tce_iommu_mm_set() 83 container->mm = current->mm; in tce_iommu_mm_set() 84 mmgrab(container->mm); in tce_iommu_mm_set() 94 ret = mm_iommu_put(container->mm, tcemem->mem); in tce_iommu_prereg_free() 115 mem = mm_iommu_get(container->mm, vaddr, size >> PAGE_SHIFT); in tce_iommu_unregister_pages() 131 mm_iommu_put(container->mm, mem); in tce_iommu_unregister_pages() 148 mem = mm_iommu_get(container->mm, vaddr, entries); in tce_iommu_register_pages() [all …]
|
/linux/Documentation/translations/zh_CN/mm/ |
H A D | hmm.rst | 3 :Original: Documentation/mm/hmm.rst 100 struct page可以与现有的 mm 机制进行最简单、最干净的集成。再次,HMM 仅提供帮助程序, 120 struct mm_struct *mm, unsigned long start, 131 如果请求写访问,它将在丢失或只读条目上触发缺页异常(见下文)。缺页异常使用通用的 mm 缺 150 if (!mmget_not_zero(interval_sub->notifier.mm)) 155 mmap_read_lock(mm); 158 mmap_read_unlock(mm); 163 mmap_read_unlock(mm); 213 的信息,HMM 将自身挂接到 mm 代码的各个位置,以处理对设备内存支持的地址的任何访问。 251 整体迁移步骤类似于在系统内存中迁移 NUMA 页面(see Documentation/mm/page_migration.rst) ,
|
/linux/arch/riscv/mm/ |
H A D | fault.c | 105 bad_area(struct pt_regs *regs, struct mm_struct *mm, int code, in bad_area() argument 108 mmap_read_unlock(mm); in bad_area() 227 struct mm_struct *mm; in handle_page_fault() local 237 mm = tsk->mm; in handle_page_fault() 265 if (unlikely(faulthandler_disabled() || !mm)) { in handle_page_fault() 290 vma = lock_vma_under_rcu(mm, addr); in handle_page_fault() 322 vma = lock_mm_and_find_vma(mm, addr, regs); in handle_page_fault() 337 bad_area(regs, mm, code, addr); in handle_page_fault() 374 mmap_read_unlock(mm); in handle_page_fault()
|
/linux/drivers/gpu/drm/ttm/tests/ |
H A D | ttm_mock_manager.c | 30 struct drm_buddy *mm = &manager->mm; in ttm_mock_manager_alloc() local 53 err = drm_buddy_alloc_blocks(mm, fpfn, lpfn, alloc_size, in ttm_mock_manager_alloc() 66 drm_buddy_free_list(mm, &mock_res->blocks, 0); in ttm_mock_manager_alloc() 78 struct drm_buddy *mm = &manager->mm; in ttm_mock_manager_free() local 81 drm_buddy_free_list(mm, &mock_res->blocks, 0); in ttm_mock_manager_free() 105 err = drm_buddy_init(&manager->mm, size, PAGE_SIZE); in ttm_mock_manager_init() 141 drm_buddy_fini(&mock_man->mm); in ttm_mock_manager_fini()
|
/linux/kernel/ |
H A D | tsacct.c | 93 struct mm_struct *mm; in xacct_add_tsk() local 100 mm = get_task_mm(p); in xacct_add_tsk() 101 if (mm) { in xacct_add_tsk() 103 stats->hiwater_rss = get_mm_hiwater_rss(mm) * PAGE_SIZE / KB; in xacct_add_tsk() 104 stats->hiwater_vm = get_mm_hiwater_vm(mm) * PAGE_SIZE / KB; in xacct_add_tsk() 105 mmput(mm); in xacct_add_tsk() 129 if (!likely(tsk->mm)) in __acct_update_integrals() 144 tsk->acct_rss_mem1 += delta * get_mm_rss(tsk->mm) >> 10; in __acct_update_integrals() 145 tsk->acct_vm_mem1 += delta * READ_ONCE(tsk->mm->total_vm) >> 10; in __acct_update_integrals()
|
/linux/arch/arm/kernel/ |
H A D | vdso.c | 49 current->mm->context.vdso = new_vma->vm_start; in vdso_mremap() 220 static int install_vvar(struct mm_struct *mm, unsigned long addr) in install_vvar() argument 224 vma = _install_special_mapping(mm, addr, PAGE_SIZE, in install_vvar() 232 void arm_install_vdso(struct mm_struct *mm, unsigned long addr) in arm_install_vdso() argument 237 mm->context.vdso = 0; in arm_install_vdso() 242 if (install_vvar(mm, addr)) in arm_install_vdso() 249 vma = _install_special_mapping(mm, addr, len, in arm_install_vdso() 254 mm->context.vdso = addr; in arm_install_vdso()
|
/linux/arch/xtensa/mm/ |
H A D | fault.c | 91 struct mm_struct *mm = current->mm; in do_page_fault() local 113 if (faulthandler_disabled() || !mm) { in do_page_fault() 134 vma = lock_mm_and_find_vma(mm, address, regs); in do_page_fault() 192 mmap_read_unlock(mm); in do_page_fault() 199 mmap_read_unlock(mm); in do_page_fault() 213 mmap_read_unlock(mm); in do_page_fault() 221 mmap_read_unlock(mm); in do_page_fault()
|
/linux/arch/sh/mm/ |
H A D | pgtable.c | 34 pgd_t *pgd_alloc(struct mm_struct *mm) in pgd_alloc() argument 39 void pgd_free(struct mm_struct *mm, pgd_t *pgd) in pgd_free() argument 45 void pud_populate(struct mm_struct *mm, pud_t *pud, pmd_t *pmd) in pud_populate() argument 50 pmd_t *pmd_alloc_one(struct mm_struct *mm, unsigned long address) in pmd_alloc_one() argument 55 void pmd_free(struct mm_struct *mm, pmd_t *pmd) in pmd_free() argument
|
/linux/arch/riscv/include/asm/ |
H A D | hugetlb.h | 21 void huge_pte_clear(struct mm_struct *mm, unsigned long addr, 25 void set_huge_pte_at(struct mm_struct *mm, 30 pte_t huge_ptep_get_and_clear(struct mm_struct *mm, 38 void huge_ptep_set_wrprotect(struct mm_struct *mm, 47 pte_t huge_ptep_get(struct mm_struct *mm, unsigned long addr, pte_t *ptep);
|
/linux/drivers/gpu/drm/nouveau/ |
H A D | nouveau_svm.c | 117 struct mm_struct *mm; in nouveau_svmm_bind() local 163 mm = get_task_mm(current); in nouveau_svmm_bind() 164 if (!mm) { in nouveau_svmm_bind() 167 mmap_read_lock(mm); in nouveau_svmm_bind() 170 mmap_read_unlock(mm); in nouveau_svmm_bind() 171 mmput(mm); in nouveau_svmm_bind() 179 vma = find_vma_intersection(mm, addr, end); in nouveau_svmm_bind() 198 mmap_read_unlock(mm); in nouveau_svmm_bind() 199 mmput(mm); in nouveau_svmm_bind() 358 mmap_write_lock(current->mm); in nouveau_svmm_init() [all …]
|