Home
last modified time | relevance | path

Searched refs:madvise (Results 1 – 25 of 109) sorted by relevance

12345

/linux-6.15/tools/testing/selftests/mm/
H A Dmadv_populate.c40 ret = madvise(addr, pagesize, MADV_POPULATE_READ); in sense_support()
44 ret = madvise(addr, pagesize, MADV_POPULATE_WRITE); in sense_support()
62 ret = madvise(addr, SIZE, MADV_POPULATE_READ); in test_prot_read()
65 ret = madvise(addr, SIZE, MADV_POPULATE_WRITE); in test_prot_read()
83 ret = madvise(addr, SIZE, MADV_POPULATE_READ); in test_prot_write()
87 ret = madvise(addr, SIZE, MADV_POPULATE_WRITE); in test_prot_write()
109 ret = madvise(addr, SIZE, MADV_POPULATE_READ); in test_holes()
112 ret = madvise(addr, SIZE, MADV_POPULATE_WRITE); in test_holes()
177 ret = madvise(addr, SIZE, MADV_POPULATE_READ); in test_populate_read()
199 ret = madvise(addr, SIZE, MADV_POPULATE_WRITE); in test_populate_write()
[all …]
H A Dguard-regions.c317 ASSERT_EQ(madvise(ptr, page_size, MADV_GUARD_INSTALL), 0); in TEST_F()
338 ASSERT_FALSE(madvise(ptr, page_size, MADV_GUARD_REMOVE)); in TEST_F()
631 ASSERT_EQ(madvise(ptr, page_size, MADV_GUARD_INSTALL), 0); in TEST_F()
670 ASSERT_EQ(madvise(&ptr[5 * page_size], 2 * page_size, in TEST_F()
685 ASSERT_EQ(madvise(&ptr[5 * page_size], 2 * page_size, in TEST_F()
858 int res = madvise(curr, page_size, MADV_GUARD_INSTALL); in TEST_F()
1351 ASSERT_EQ(madvise(ptr, 10 * page_size, MADV_FREE), 0); in TEST_F()
1413 ASSERT_EQ(madvise(ptr, 10 * page_size, MADV_COLD), 0); in TEST_F()
1423 ASSERT_EQ(madvise(ptr, 10 * page_size, MADV_PAGEOUT), 0); in TEST_F()
1870 ASSERT_EQ(madvise(&ptr[3 * page_size], 4 * page_size, in TEST_F()
[all …]
H A Dhugetlb-madvise.c117 ret = madvise(addr - base_page_size, NR_HUGE_PAGES * huge_page_size, in main()
126 ret = madvise(addr, (NR_HUGE_PAGES * huge_page_size) + base_page_size, in main()
151 ret = madvise(addr + base_page_size, in main()
161 if (madvise(addr, in main()
188 if (madvise(addr, NR_HUGE_PAGES * huge_page_size, MADV_DONTNEED)) { in main()
220 if (madvise(addr, NR_HUGE_PAGES * huge_page_size, MADV_DONTNEED)) { in main()
231 if (madvise(addr, NR_HUGE_PAGES * huge_page_size, MADV_DONTNEED)) { in main()
279 if (madvise(addr, NR_HUGE_PAGES * huge_page_size, MADV_DONTNEED)) { in main()
290 if (madvise(addr, NR_HUGE_PAGES * huge_page_size, MADV_REMOVE)) { in main()
335 if (madvise(addr, NR_HUGE_PAGES * huge_page_size, MADV_DONTNEED)) { in main()
[all …]
H A Dksm_functional_tests.c184 if (madvise(map, size, MADV_NOHUGEPAGE) && errno != EINVAL) { in __mmap_and_merge_range()
211 if (madvise(map, size, MADV_MERGEABLE)) { in __mmap_and_merge_range()
269 if (madvise(map, size, MADV_UNMERGEABLE)) { in test_unmerge()
315 if (madvise(map, size / 2, MADV_UNMERGEABLE)) { in test_unmerge_zero_pages()
356 if (madvise(map, size / 2, MADV_DONTNEED)) { in test_unmerge_discarded()
361 if (madvise(map, size, MADV_UNMERGEABLE)) { in test_unmerge_discarded()
421 if (madvise(map, size, MADV_UNMERGEABLE)) { in test_unmerge_uffd_wp()
648 if (madvise(map + size / 2, size / 2, MADV_UNMERGEABLE)) { in test_prot_none()
H A Dkhugepaged.c292 ret = madvise(p, size, MADV_COLLAPSE); in madvise_collapse_retry()
326 if (madvise(p, hpage_pmd_size, MADV_HUGEPAGE)) { in alloc_hpage()
634 madvise(p, page_size, MADV_DONTNEED); in alloc_at_fault()
721 if (madvise(p, page_size, MADV_PAGEOUT)) { in collapse_swapin_single_pte()
799 madvise(p, hpage_pmd_size, MADV_NOHUGEPAGE); in collapse_single_pte_entry_compound()
820 madvise(p, page_size, MADV_NOHUGEPAGE); in collapse_full_of_compound()
821 madvise(p, hpage_pmd_size, MADV_NOHUGEPAGE); in collapse_full_of_compound()
843 madvise(BASE_ADDR, hpage_pmd_size, MADV_HUGEPAGE); in collapse_compound_extreme()
849 madvise(BASE_ADDR, hpage_pmd_size, MADV_NOHUGEPAGE); in collapse_compound_extreme()
950 madvise(p, page_size, MADV_NOHUGEPAGE); in collapse_fork_compound()
[all …]
H A Dcow.c753 ret = madvise(mem, pagesize, MADV_NOHUGEPAGE); in do_run_with_base_page()
764 madvise(mem, pagesize, MADV_PAGEOUT); in do_run_with_base_page()
817 ret = madvise(mem, thpsize, MADV_HUGEPAGE); in do_run_with_thp()
925 madvise(mem, size, MADV_PAGEOUT); in do_run_with_thp()
1251 ret = madvise(mem, size, MADV_COLLAPSE); in do_test_anon_thp_collapse()
1263 ret = madvise(mem + size / 2, size / 2, MADV_DONTFORK); in do_test_anon_thp_collapse()
1271 ret = madvise(mem, size / 2, MADV_DONTFORK); in do_test_anon_thp_collapse()
1315 ret = madvise(mem, size, MADV_DOFORK); in do_test_anon_thp_collapse()
1325 ret = madvise(mem, size, MADV_COLLAPSE); in do_test_anon_thp_collapse()
1533 ret = madvise(mem, pmdsize, MADV_HUGEPAGE); in run_with_huge_zeropage()
[all …]
H A Duffd-unit-tests.c387 if (madvise(area_dst, page_size, MADV_DONTNEED)) in uffd_wp_unpopulated_test()
397 if (madvise(area_dst, page_size, MADV_DONTNEED)) in uffd_wp_unpopulated_test()
404 if (madvise(area_dst, page_size, MADV_DONTNEED)) in uffd_wp_unpopulated_test()
445 if (madvise(area_dst, page_size, MADV_DONTNEED)) in uffd_wp_fork_test_common()
452 madvise(area_dst, page_size, MADV_PAGEOUT); in uffd_wp_fork_test_common()
611 if (madvise(area_dst_alias, nr_pages * page_size, in uffd_minor_test_common()
1135 if (madvise(area_src, nr_pages * page_size, MADV_DONTFORK)) in uffd_move_test_common()
1220 if (madvise(area_dst, nr_pages * page_size, MADV_HUGEPAGE)) in uffd_move_pmd_test()
1228 if (madvise(area_dst, nr_pages * page_size, MADV_NOHUGEPAGE)) in uffd_move_pmd_split_test()
1237 if (madvise(area_src, nr_pages * page_size, MADV_NOHUGEPAGE)) { in prevent_hugepages()
[all …]
H A Dtranshuge-stress.c82 if (madvise(ptr, len, MADV_HUGEPAGE)) in main()
122 if (madvise(p, HPAGE_SIZE - psize(), MADV_DONTNEED)) in main()
H A Dgup_test.c241 madvise(p, size, MADV_HUGEPAGE); in main()
243 madvise(p, size, MADV_NOHUGEPAGE); in main()
H A Dsplit_huge_page_test.c100 madvise(result, len, MADV_HUGEPAGE); in allocate_zero_filled_hugepage()
159 madvise(one_page, len, MADV_HUGEPAGE); in split_pmd_thp_to_order()
211 madvise(one_page, len, MADV_HUGEPAGE); in split_pte_mapped_thp()
440 madvise(*addr, fd_size, MADV_HUGEPAGE); in create_pagecache_thp_and_fd()
H A D.gitignore7 hugetlb-madvise
H A Duffd-common.c45 if (madvise(rel_area, nr_pages * page_size, MADV_DONTNEED)) in anon_release_pages()
67 if (madvise(rel_area, nr_pages * page_size, MADV_DONTNEED)) in hugetlb_release_pages()
70 if (madvise(rel_area, nr_pages * page_size, MADV_REMOVE)) in hugetlb_release_pages()
121 if (madvise(rel_area, nr_pages * page_size, MADV_REMOVE)) in shmem_release_pages()
H A Dhugetlb_madv_vs_map.c47 madvise(huge_ptr, mmap_size, MADV_DONTNEED); in madv()
H A Dhugetlb_fault_after_madv.c49 madvise(huge_ptr, huge_page_size, MADV_DONTNEED); in madv()
/linux-6.15/Documentation/translations/zh_TW/admin-guide/mm/
H A Dksm.rst35madvise控制KSM
38 KSM僅在特定的地址空間區域時運行,即應用程序通過使用如下所示的madvise(2)系統調
41 int madvise(addr, length, MADV_MERGEABLE)
45 int madvise(addr, length, MADV_UNMERGEABLE)
51 如果KSM未被配置到正在運行的內核中,則madvise MADV_MERGEABLE 和 MADV_UNMERGEABLE
58 當該進程將超過 ``vm.max_map_count`` 的設定,則madvise可能返回ENOMEM。(請參閱文檔
61 與其他madvise調用一樣,它們在用戶地址空間的映射區域上使用:如果指定的範圍包含未
174 味着不好的madvise-applied策略,所以開發者或管理員必須重新考慮如何改變madvis策
177 的比例在64位CPU上超過64,或者在32位CPU上超過128,那麼應用程序的madvise策略應
185 是否或如何使用KSM。例如,如果cow_ksm增加得太快,用戶可以減少madvise(, , MADV_MERGEABLE)
/linux-6.15/Documentation/translations/zh_CN/admin-guide/mm/
H A Dksm.rst35madvise控制KSM
38 KSM仅在特定的地址空间区域时运行,即应用程序通过使用如下所示的madvise(2)系统调
41 int madvise(addr, length, MADV_MERGEABLE)
45 int madvise(addr, length, MADV_UNMERGEABLE)
51 如果KSM未被配置到正在运行的内核中,则madvise MADV_MERGEABLE 和 MADV_UNMERGEABLE
58 当该进程将超过 ``vm.max_map_count`` 的设定,则madvise可能返回ENOMEM。(请参阅文档
61 与其他madvise调用一样,它们在用户地址空间的映射区域上使用:如果指定的范围包含未
174 味着不好的madvise-applied策略,所以开发者或管理员必须重新考虑如何改变madvis策
177 的比例在64位CPU上超过64,或者在32位CPU上超过128,那么应用程序的madvise策略应
185 是否或如何使用KSM。例如,如果cow_ksm增加得太快,用户可以减少madvise(, , MADV_MERGEABLE)
/linux-6.15/tools/mm/
H A Dthp_swap_allocator_test.c76 if (madvise(addr, align_size, MADV_DONTNEED) != 0) in random_madvise_dontneed()
138 if (madvise(mem1, MEMSIZE_MTHP, MADV_HUGEPAGE) != 0) { in main()
152 if (madvise(mem2, MEMSIZE_SMALLFOLIO, MADV_NOHUGEPAGE) != 0) { in main()
162 madvise(mem1, MEMSIZE_MTHP, MADV_PAGEOUT); in main()
165 madvise(mem2, MEMSIZE_SMALLFOLIO, MADV_PAGEOUT); in main()
199 if (madvise(mem1, MEMSIZE_MTHP, MADV_PAGEOUT) != 0) { in main()
208 if (madvise(mem2, MEMSIZE_SMALLFOLIO, MADV_PAGEOUT) != 0) { in main()
/linux-6.15/Documentation/translations/zh_TW/admin-guide/mm/damon/
H A Dusage.rst212 - ``willneed``: 對有 ``MADV_WILLNEED`` 的區域調用 ``madvise()`` 。
213 - ``cold``: 對具有 ``MADV_COLD`` 的區域調用 ``madvise()`` 。
214 - ``pageout``: 爲具有 ``MADV_PAGEOUT`` 的區域調用 ``madvise()`` 。
215 - ``hugepage``: 爲帶有 ``MADV_HUGEPAGE`` 的區域調用 ``madvise()`` 。
216 - ``nohugepage``: 爲帶有 ``MADV_NOHUGEPAGE`` 的區域調用 ``madvise()``。
/linux-6.15/Documentation/translations/zh_CN/admin-guide/mm/damon/
H A Dusage.rst212 - ``willneed``: 对有 ``MADV_WILLNEED`` 的区域调用 ``madvise()`` 。
213 - ``cold``: 对具有 ``MADV_COLD`` 的区域调用 ``madvise()`` 。
214 - ``pageout``: 为具有 ``MADV_PAGEOUT`` 的区域调用 ``madvise()`` 。
215 - ``hugepage``: 为带有 ``MADV_HUGEPAGE`` 的区域调用 ``madvise()`` 。
216 - ``nohugepage``: 为带有 ``MADV_NOHUGEPAGE`` 的区域调用 ``madvise()``。
/linux-6.15/tools/testing/selftests/powerpc/tm/
H A Dtm-signal-context-force-tm.c69 ret = madvise(ucp->uc_link, sizeof(ucontext_t), MADV_DONTNEED); in usr_signal_handler()
138 if (madvise(ss.ss_sp, SIGSTKSZ, MADV_DONTNEED)) { in tm_trap_test()
/linux-6.15/Documentation/admin-guide/mm/
H A Dksm.rst30 Controlling KSM with madvise
34 has advised to be likely candidates for merging, by using the madvise(2)
37 int madvise(addr, length, MADV_MERGEABLE)
43 int madvise(addr, length, MADV_UNMERGEABLE)
50 If KSM is not configured into the running kernel, madvise MADV_MERGEABLE
59 or MADV_UNMERGEABLE region, the madvise may return ENOMEM if the process
62 Like other madvise calls, they are intended for use on mapped areas of
227 indicate poor use of madvise MADV_MERGEABLE.
266 ``ksm_merging_pages`` means a bad madvise-applied policy, so developers or
267 administrators have to rethink how to change madvise policy. Giving an example
[all …]
H A Dtranshuge.rst69 interface and using madvise(2) and prctl(2) system calls.
92 MADV_HUGEPAGE madvise regions.
100 madvise(MADV_HUGEPAGE) on their critical mmapped regions.
139 echo madvise >/sys/kernel/mm/transparent_hugepage/enabled
161 echo madvise >/sys/kernel/mm/transparent_hugepage/defrag
177 defer+madvise
179 only for regions that have used madvise(MADV_HUGEPAGE); all
184 madvise
385 Also respect madvise() hints;
388 Only allocate huge pages if requested with madvise();
[all …]
/linux-6.15/arch/um/os-Linux/
H A Dprocess.c102 err = madvise(addr, length, MADV_REMOVE); in os_drop_memory()
129 if (madvise(addr, UM_KERN_PAGE_SIZE, MADV_REMOVE) != 0) { in can_drop_memory()
H A Dmem.c43 if (madvise(start, len, MADV_DONTDUMP)) { in kasan_map_memory()
49 if (madvise(start, len, MADV_DONTFORK)) { in kasan_map_memory()
/linux-6.15/tools/testing/selftests/bpf/
H A Duprobe_multi.c110 madvise(addr, page_sz, MADV_POPULATE_READ); in trigger_uprobe()
112 madvise(addr, page_sz, MADV_PAGEOUT); in trigger_uprobe()

12345