/linux-6.15/include/linux/ |
D | balloon_compaction.h | 5 * Common interface definitions for making balloon pages movable by compaction. 7 * Balloon page migration makes use of the general non-lru movable page 10 * page->private is used to reference the responsible balloon device. 16 * performing balloon page compaction. In order to sort out these racy scenarios 17 * and safely perform balloon's page compaction and migration we must, always, 20 * i. when updating a balloon's page ->mapping element, strictly do it under 27 * ii. isolation or dequeueing procedure must remove the page from balloon 31 * the aforementioned balloon page corner case, as well as to ensure the simple 32 * set of exposed rules are satisfied while we are dealing with balloon pages 48 * Balloon device information descriptor. [all …]
|
/linux-6.15/mm/ |
D | balloon_compaction.c | 5 * Common interface for making balloon pages movable by compaction. 31 * balloon_page_list_enqueue() - inserts a list of pages into the balloon page 33 * @b_dev_info: balloon device descriptor where we will insert a new page to 36 * Driver must call this function to properly enqueue balloon pages before 60 * balloon_page_list_dequeue() - removes pages from balloon's page list and 62 * @b_dev_info: balloon device descriptor where we will grab a page from. 67 * balloon pages before definitively releasing it back to the guest system. 71 * Note that this function may fail to dequeue some pages even if the balloon 92 * to be released by the balloon driver. in balloon_page_list_dequeue() 117 * balloon_page_alloc - allocates a new page for insertion into the balloon [all …]
|
/linux-6.15/drivers/misc/ |
D | vmw_balloon.c | 3 * VMware Balloon driver. 8 * acts like a "balloon" that can be inflated to reclaim physical pages by 11 * other guests. The balloon can also be deflated to allow the guest to 38 MODULE_DESCRIPTION("VMware Memory Control (Balloon) Driver"); 54 /* Magic number for the balloon mount-point */ 140 * @VMW_BALLOON_CMD_GET_TARGET: Gets the balloon target size. 143 * to be deflated from the balloon. 150 * balloon (up to 512). 157 * that would be invoked when the balloon 271 * @size: balloon actual size in basic page size (frames). [all …]
|
/linux-6.15/Documentation/ABI/stable/ |
D | sysfs-devices-system-xen_memory | 6 The maximum number of times the balloon driver will 7 attempt to increase the balloon before giving up. See 24 The current number of times that the balloon driver 25 has attempted to increase the size of the balloon. 36 increase the balloon. Each time the balloon cannot be 69 Amount (in KiB) of high memory in the balloon. 77 balloon.
|
/linux-6.15/drivers/virtio/ |
D | virtio_balloon.c | 3 * Virtio balloon implementation, inspired by Dor Laor and Marcelo 23 * Balloon device works in 4K page units. So each page is pointed to by 24 * multiple balloon pages. All memory counters in this driver are in balloon 59 /* Balloon's own wq for cpu-intensive work items */ 61 /* The free page reporting work item submitted to the balloon wq */ 64 /* The balloon servicing is delegated to a freezable workqueue. */ 68 /* Prevent updating balloon when it is being canceled. */ 93 /* Number of balloon pages we've told the Host we're not using. */ 123 /* State for keeping the wakeup_source active while adjusting the balloon */ 142 /* Convert pfn from Linux page size to balloon page size. */ in page_to_balloon_pfn() [all …]
|
/linux-6.15/drivers/xen/ |
D | balloon.c | 2 * Xen balloon driver - enables returning/claiming memory to/from Xen. 73 #include <xen/balloon.h> 115 * BP_ECANCELED: error, balloon operation canceled. 125 /* Main waiting point for xen-balloon thread. */ 146 /* balloon_append: add the given page to the balloon. */ 165 /* balloon_retrieve: rescue a page from the balloon, if it is not empty. */ 467 * and add to balloon. in decrease_reservation() 505 * by the balloon lock), or with changes to the Xen hard limit, but we will 674 /* The balloon may be too large now. Shrink it if needed. */ in xen_free_ballooned_pages() 707 * decreasing from current_pages to balloon down the initial in balloon_add_regions() [all …]
|
D | Kconfig | 6 bool "Xen memory balloon driver" 9 The balloon driver allows the Xen domain to request more memory from 14 bool "Memory hotplug support for Xen balloon driver" 18 Memory hotplug support for Xen balloon driver allows expanding memory 170 The resulting buffer is similar to one allocated by the balloon 175 cannot work with scattered buffers provided by the balloon driver, 342 having to balloon out RAM regions in order to obtain physical memory
|
D | xen-balloon.c | 2 * Xen balloon driver - enables returning/claiming memory to/from Xen. 44 #include <xen/balloon.h> 72 /* The balloon driver will take care of adding memory now. */ in watch_target() 119 pr_err("Failed to set balloon watcher\n"); in balloon_init_watcher()
|
D | Makefile | 3 obj-y += grant-table.o features.o balloon.o manage.o time.o 18 obj-$(CONFIG_XEN_BALLOON) += xen-balloon.o
|
D | xlate_mmu.c | 43 #include <xen/balloon.h> 237 pr_warn("%s Couldn't balloon alloc %ld pages rc:%d\n", __func__, in xen_xlate_map_ballooned_pages()
|
/linux-6.15/include/uapi/linux/ |
D | virtio_balloon.h | 33 /* The feature bitmap for virtio balloon */ 36 #define VIRTIO_BALLOON_F_DEFLATE_ON_OOM 2 /* Deflate balloon on OOM */ 41 /* Size of a PFN in the balloon interface. */ 49 /* Number of pages we've actually got in balloon. */
|
D | virtio_ids.h | 36 #define VIRTIO_ID_BALLOON 5 /* virtio balloon */ 44 #define VIRTIO_ID_MEMORY_BALLOON 13 /* virtio memory balloon */ 78 #define VIRTIO_TRANS_ID_BALLOON 0x1002 /* transitional virtio balloon */
|
D | vboxguest.h | 315 /** The size of the balloon in chunks of 1MB. */ 319 * true = allocate balloon memory in R3. 333 * balloon and adjust the size. Or it will set handle_in_r3 = true and R3 is
|
/linux-6.15/drivers/hv/ |
D | hv_balloon.c | 116 __u64 balloon:1; member 267 * Message to ask the guest to allocate memory - balloon up message. 281 * Balloon response message; this message is sent from the guest 282 * to the host in response to the balloon message. 303 * Un-balloon message; this message is sent from the host 326 * Un-balloon response message; this message is sent from the guest 1144 * balloon. Compute this and add it to the pressure report. in post_status() 1147 * asking us to balloon them out. in post_status() 1272 /* Refuse to balloon below the floor. */ in balloon_up() 1274 pr_info("Balloon request will be partially fulfilled. %s\n", in balloon_up() [all …]
|
D | Kconfig | 52 tristate "Microsoft Hyper-V Balloon driver" 56 Select this option to enable Hyper-V Balloon driver.
|
/linux-6.15/drivers/virt/vboxguest/ |
D | vboxguest_core.h | 35 /** VBox guest memory balloon. */ 43 /** The current number of chunks in the balloon. */ 45 /** The maximum number of chunks in the balloon. */ 102 /** Memory balloon information. */
|
D | vmmdev.h | 61 /* Memory balloon size changed. */ 329 /** struct vmmdev_memballoon_info - Memory-balloon info structure. */ 333 /** Balloon size in megabytes. */ 346 /** struct vmmdev_memballoon_change - Change the size of the balloon. */
|
D | vboxguest_core.c | 265 * vbg_balloon_inflate - Inflate the balloon by one chunk. The caller 266 * owns the balloon mutex. 318 * vbg_balloon_deflate - Deflate the balloon by one chunk. The caller 319 * owns the balloon mutex. 354 * the host wants the balloon to be and adjust accordingly. 366 * change the guest memory balloon according to the returned value. in vbg_balloon_work() 391 vbg_err("%s: illegal balloon size %u (max=%u)\n", in vbg_balloon_work()
|
/linux-6.15/drivers/gpu/drm/i915/ |
D | i915_vgpu.c | 198 "balloon space: range [ 0x%lx - 0x%lx ] %lu KiB.\n", in vgt_balloon_space() 210 * intel_vgt_balloon - balloon out reserved graphics address trunks 213 * This function is called at the initialization stage, to balloon out the 326 drm_info(&dev_priv->drm, "VGT balloon successfully\n"); in intel_vgt_balloon() 336 drm_err(&dev_priv->drm, "VGT balloon fail\n"); in intel_vgt_balloon()
|
/linux-6.15/arch/x86/xen/ |
D | enlighten_pvh.c | 57 * Reserve e820 UNUSABLE regions to inflate the memory balloon. 63 * ratio signaled in EXTRA_MEM_RATIO) in order to inflate the balloon driver at
|
/linux-6.15/Documentation/admin-guide/mm/ |
D | memory-hotplug.rst | 606 - Memory ballooning without balloon compaction is incompatible with 607 ZONE_MOVABLE. Only some implementations, such as virtio-balloon and 608 pseries CMM, fully support balloon compaction. 611 disabled. In that case, balloon inflation will only perform unmovable 658 boot and can apply to memory blocks hotplugged via the XEN balloon and the 659 Hyper-V balloon.
|
/linux-6.15/include/xen/ |
D | balloon.h | 3 * Xen balloon functionality
|
D | xen.h | 70 #include <xen/balloon.h>
|
/linux-6.15/Documentation/mm/ |
D | free_page_reporting.rst | 10 For the driver, typically a balloon driver, to use of this functionality
|
/linux-6.15/arch/powerpc/platforms/pseries/ |
D | cmm.c | 70 MODULE_PARM_DESC(min_mem_mb, "Minimum amount of memory (in MB) to not balloon. " 520 /* balloon page list reference */ in cmm_migratepage() 545 /* balloon page list reference */ in cmm_migratepage()
|