| /linux/Documentation/driver-api/cxl/allocation/ |
| H A D | page-allocator.rst | 29 CXL capacity may be onlined in :code:`ZONE_NORMAL` or :code:`ZONE_MOVABLE`. 35 marked :code:`GFP_KERNEL` from :code:`ZONE_MOVABLE`. Kernel allocations are 39 To simplify this, the page allocator will prefer :code:`ZONE_MOVABLE` over 40 :code:`ZONE_NORMAL` by default, but if :code:`ZONE_MOVABLE` is depleted, it 47 into :code:`ZONE_NORMAL`, with no :code:`ZONE_MOVABLE` capacity present. The 49 :code:`ZONE_MOVABLE`. 52 :code:`ZONE_MOVABLE` as a valid allocation target. This is because, as of 61 Because the local node does not have :code:`ZONE_MOVABLE`, the CXL node is 65 This configuration also means that if the DRAM ndoe has :code:`ZONE_MOVABLE` 67 prefer CXL :code:`ZONE_MOVABLE` pages over DRAM :code:`ZONE_NORMAL` pages.
|
| H A D | hugepages.rst | 31 CXL capacity onlined in :code:`ZONE_MOVABLE` is not eligible for 1GB Gigantic
|
| /linux/Documentation/admin-guide/mm/ |
| H A D | memory-hotplug.rst | 6 a focus on System RAM, including ZONE_MOVABLE support. 170 ZONE_MOVABLE by:: 222 Having the memory provided by memory block managed by ZONE_MOVABLE significantly 355 ``online_movable`` specifies onlining to ZONE_MOVABLE. 371 cannot be offlined. ``Movable`` indicates ZONE_MOVABLE. 407 set, the kernel will default to ZONE_MOVABLE when 470 command line parameter: default to ZONE_MOVABLE 475 try onlining memory blocks to ZONE_MOVABLE if 494 completely to ZONE_MOVABLE or completely to 498 onlined to ZONE_MOVABLE as possible, [all …]
|
| /linux/Documentation/translations/zh_CN/mm/ |
| H A D | physical_memory.rst | 58 * ``ZONE_MOVABLE`` 是指可访问的普通内存区域,就像 ``ZONE_NORMAL`` 59 一样。不同之处在于 ``ZONE_MOVABLE`` 中的大多数页面内容是可移动的。 61 之间移动。通常,在内存热插拔期间填充 ``ZONE_MOVABLE``,在启动时也可 96 启动时,``ZONE_DMA32``、``ZONE_NORMAL`` 和 ``ZONE_MOVABLE`` 97 位于节点0,而 ``ZONE_NORMAL`` 和 ``ZONE_MOVABLE`` 位于节点1::
|
| /linux/Documentation/driver-api/cxl/linux/ |
| H A D | memory-hotplug.rst | 30 3) Online in :code:`ZONE_MOVABLE` 33 while :code:`ZONE_MOVABLE` implies this capacity should only be used for 36 :code:`ZONE_MOVABLE` attempts to retain the hotplug-ability of a memory block 67 Systems with extremely large amounts of :code:`ZONE_MOVABLE` memory (e.g.
|
| H A D | early-boot.rst | 41 SystemRAM in ZONE_NORMAL or ZONE_MOVABLE). 66 If placed in :code:`ZONE_MOVABLE`, the memory will not be available for most
|
| /linux/Documentation/mm/ |
| H A D | physical_memory.rst | 61 * ``ZONE_MOVABLE`` is for normal accessible memory, just like ``ZONE_NORMAL``. 62 The difference is that the contents of most pages in ``ZONE_MOVABLE`` is 65 ``ZONE_MOVABLE`` is populated during memory hotplug, but it may be 103 ``ZONE_NORMAL`` and ``ZONE_MOVABLE`` on node 0, and ``ZONE_NORMAL`` and 104 ``ZONE_MOVABLE`` on node 1:: 354 a node contains ``ZONE_DMA32``, ``ZONE_NORMAL`` and ``ZONE_MOVABLE`` and the 355 highest zone of a memory allocation is ``ZONE_MOVABLE``, the order of the zones 356 from which the page allocator allocates memory is ``ZONE_MOVABLE`` > 411 allocate memory from is ``ZONE_MOVABLE``, the amount of memory reserved in 412 this zone for this allocation is ``lowmem_reserve[ZONE_MOVABLE]`` when [all …]
|
| /linux/mm/ |
| H A D | memory_hotplug.c | 797 if (zone_idx(zone) == ZONE_MOVABLE) { in auto_movable_stats_account_zone() 1020 return &NODE_DATA(nid)->node_zones[ZONE_MOVABLE]; in auto_movable_zone_for_pfn() 1030 struct zone *movable_zone = &NODE_DATA(nid)->node_zones[ZONE_MOVABLE]; in default_zone_for_pfn() 1057 return &NODE_DATA(nid)->node_zones[ZONE_MOVABLE]; in zone_for_pfn_range() 1073 const bool movable = zone_idx(zone) == ZONE_MOVABLE; in adjust_present_page_count() 2330 if (page && zone_idx(page_zone(page)) == ZONE_MOVABLE) in try_offline_memory_block()
|
| H A D | mm_init.c | 339 if (zone_index == ZONE_MOVABLE) in find_usable_zone_for_movable() 809 if (mirrored_kernelcore && zone == ZONE_MOVABLE) { in overlap_memmap_init() 1173 if (zone_type == ZONE_MOVABLE) { in adjust_zone_range_for_zone_movable() 1252 if (zone_type == ZONE_MOVABLE && in zone_absent_pages_in_node() 1756 for (zone_type = 0; zone_type <= ZONE_MOVABLE - 1; zone_type++) { in check_for_memory() 1845 if (zone == ZONE_MOVABLE) in free_area_init() 1862 if (i == ZONE_MOVABLE) in free_area_init()
|
| H A D | page_isolation.c | 72 if (zone_idx(zone) == ZONE_MOVABLE) in has_unmovable_pages()
|
| H A D | migrate.c | 2194 if (is_highmem_idx(zidx) || zidx == ZONE_MOVABLE) in alloc_migration_target() 2621 ZONE_MOVABLE, ALLOC_CMA)) in migrate_balanced_pgdat() 2695 folio_order(folio), ZONE_MOVABLE); in migrate_misplaced_folio_prepare()
|
| H A D | page_alloc.c | 242 [ZONE_MOVABLE] = 0, 2872 ZONE_MOVABLE, 0)) { in free_frozen_page_commit() 6352 if (!is_highmem(zone) && zone_idx(zone) != ZONE_MOVABLE) in __setup_per_zone_wmarks() 6362 if (is_highmem(zone) || zone_idx(zone) == ZONE_MOVABLE) { in __setup_per_zone_wmarks()
|
| H A D | mempolicy.c | 2010 BUG_ON(dynamic_policy_zone == ZONE_MOVABLE); in apply_policy_zone() 2021 dynamic_policy_zone = ZONE_MOVABLE; in apply_policy_zone()
|
| H A D | Kconfig | 540 hotplug memory into ZONE_MOVABLE. This memory will generally 547 available to allocate page structs to describe ZONE_MOVABLE.
|
| /linux/include/linux/ |
| H A D | mmzone.h | 867 ZONE_MOVABLE, enumerator 1263 return page_zonenum(page) == ZONE_MOVABLE; in is_zone_movable_page() 1268 return folio_zonenum(folio) == ZONE_MOVABLE; in folio_is_zone_movable() 1637 (idx == ZONE_MOVABLE && movable_zone == ZONE_HIGHMEM)); in is_highmem_idx()
|
| H A D | mempolicy.h | 154 if (k > policy_zone && k != ZONE_MOVABLE) in check_highest_zone()
|
| H A D | gfp.h | 131 | (ZONE_MOVABLE << (___GFP_MOVABLE | ___GFP_HIGHMEM) * GFP_ZONES_SHIFT)\
|
| /linux/include/trace/events/ |
| H A D | mmflags.h | 305 EMe(ZONE_MOVABLE,"Movable")
|
| /linux/drivers/virtio/ |
| H A D | virtio_mem.c | 2256 if (page_zonenum(page) != ZONE_MOVABLE) in virtio_mem_bbm_bb_is_movable()
|
| /linux/Documentation/admin-guide/ |
| H A D | kernel-parameters.txt | 2783 movable memory in its own zone, ZONE_MOVABLE. In the 2785 ZONE_MOVABLE, kernelcore memory will take priority and 2786 other nodes will have a larger ZONE_MOVABLE. 2788 ZONE_MOVABLE is used for the allocation of pages that
|
| /linux/kernel/sched/ |
| H A D | fair.c | 1825 ZONE_MOVABLE, 0)) in pgdat_free_space_enough()
|