| /kernel/linux/linux-4.19/Documentation/power/ |
| D | swsusp-and-swap-files.txt | 1 Using swap files with software suspend (swsusp) 4 The Linux kernel handles swap files almost in the same way as it handles swap 5 partitions and there are only two differences between these two types of swap 7 (1) swap files need not be contiguous, 8 (2) the header of a swap file is not in the first block of the partition that 10 already taken care of by the swap-handling code, but (2) has to be taken into 13 In principle the location of a swap file's header may be determined with the 15 filesystem holding the swap file to be mounted, and if this filesystem is 17 identify a swap file swsusp uses the name of the partition that holds the file 18 and the offset from the beginning of the partition at which the swap file's [all …]
|
| D | swsusp.txt | 27 Swap partition: 31 Swap file: 44 . If you would like to write hibernation image to swap and then suspend 92 powerdowns. You must explicitly specify the swap partition to resume from with 164 encryption) and arbitrary backends for writing the image (eg to swap 197 * SUSPEND all but swap device and parents 200 * SUSPEND swap device and parents 203 Oh no, that does not work, if swap device or its parents uses DMA, 206 * SUSPEND all but swap device and parents 207 * FREEZE swap device and parents [all …]
|
| /kernel/linux/linux-4.19/Documentation/vm/ |
| D | frontswap.rst | 7 Frontswap provides a "transcendent memory" interface for swap pages. 9 swapped pages are saved in RAM (or a RAM-like device) instead of a swap disk. 20 a "backing" store for a swap device. The storage is assumed to be 31 with the specified swap device number (aka "type"). A "store" will 37 associated with the swap type (e.g., like swapoff) and notify the "device" 38 to refuse further stores with that swap type. 42 to swap out a page, it first attempts to use frontswap. If the store returns 46 page can be written to swap as usual. 50 in swap device writes is lost (and also a non-trivial performance advantage) 61 frontswap can be measured (across all swap devices) with: [all …]
|
| D | swap_numa.rst | 4 Automatically bind swap device to numa node 7 If the system has more than one swap device and swap device has the node 8 information, we can make use of this information to decide which swap 15 Swap device has priority and that decides the order of it to be used. To make 17 for swap devices. e.g. on a 2 node machine, assume 2 swap devices swapA and 24 Then node 0 will use the two swap devices in the order of swapA then swapB and 25 node 1 will use the two swap devices in the order of swapB then swapA. Note 28 A more complex example on a 4 node machine. Assume 6 swap devices are going to 31 The way to swap them on is the same as above:: 44 swapA and swapB will be used in a round robin mode before any other swap device. [all …]
|
| D | zswap.rst | 10 Zswap is a lightweight compressed cache for swap pages. It takes pages that are 13 for potentially reduced swap I/O. This trade-off can also result in a 15 faster than reads from a swap device. 28 dramatically reduce their swap I/O pressure, avoiding heavy handed I/O 31 * Users with SSDs as swap devices can extend the life of the device by 34 Zswap evicts pages from compressed cache on an LRU basis to the backing swap 51 pages out of the compressed pool, a swapoff on the swap device(s) will 60 the backing swap device in the case that the compressed pool is full. 80 When a swap page is passed from frontswap to zswap, zswap maintains a mapping 81 of the swap entry, a combination of the swap type and swap offset, to the zpool [all …]
|
| /kernel/linux/linux-5.10/Documentation/vm/ |
| D | frontswap.rst | 7 Frontswap provides a "transcendent memory" interface for swap pages. 9 swapped pages are saved in RAM (or a RAM-like device) instead of a swap disk. 20 a "backing" store for a swap device. The storage is assumed to be 31 with the specified swap device number (aka "type"). A "store" will 37 associated with the swap type (e.g., like swapoff) and notify the "device" 38 to refuse further stores with that swap type. 42 to swap out a page, it first attempts to use frontswap. If the store returns 46 page can be written to swap as usual. 50 in swap device writes is lost (and also a non-trivial performance advantage) 61 frontswap can be measured (across all swap devices) with: [all …]
|
| D | swap_numa.rst | 4 Automatically bind swap device to numa node 7 If the system has more than one swap device and swap device has the node 8 information, we can make use of this information to decide which swap 15 Swap device has priority and that decides the order of it to be used. To make 17 for swap devices. e.g. on a 2 node machine, assume 2 swap devices swapA and 24 Then node 0 will use the two swap devices in the order of swapA then swapB and 25 node 1 will use the two swap devices in the order of swapB then swapA. Note 28 A more complex example on a 4 node machine. Assume 6 swap devices are going to 31 The way to swap them on is the same as above:: 44 swapA and swapB will be used in a round robin mode before any other swap device. [all …]
|
| D | zswap.rst | 10 Zswap is a lightweight compressed cache for swap pages. It takes pages that are 13 for potentially reduced swap I/O. This trade-off can also result in a 15 faster than reads from a swap device. 28 dramatically reduce their swap I/O pressure, avoiding heavy handed I/O 31 * Users with SSDs as swap devices can extend the life of the device by 34 Zswap evicts pages from compressed cache on an LRU basis to the backing swap 53 pages out of the compressed pool, a swapoff on the swap device(s) will 62 the backing swap device in the case that the compressed pool is full. 83 When a swap page is passed from frontswap to zswap, zswap maintains a mapping 84 of the swap entry, a combination of the swap type and swap offset, to the zpool [all …]
|
| /kernel/linux/linux-5.10/Documentation/power/ |
| D | swsusp-and-swap-files.rst | 2 Using swap files with software suspend (swsusp) 7 The Linux kernel handles swap files almost in the same way as it handles swap 8 partitions and there are only two differences between these two types of swap 10 (1) swap files need not be contiguous, 11 (2) the header of a swap file is not in the first block of the partition that 13 already taken care of by the swap-handling code, but (2) has to be taken into 16 In principle the location of a swap file's header may be determined with the 18 filesystem holding the swap file to be mounted, and if this filesystem is 20 identify a swap file swsusp uses the name of the partition that holds the file 21 and the offset from the beginning of the partition at which the swap file's [all …]
|
| D | swsusp.rst | 2 Swap suspend 34 Swap partition: 38 Swap file: 51 - If you would like to write hibernation image to swap and then suspend 102 powerdowns. You must explicitly specify the swap partition to resume from with 185 encryption) and arbitrary backends for writing the image (eg to swap 224 * SUSPEND all but swap device and parents 227 * SUSPEND swap device and parents 230 Oh no, that does not work, if swap device or its parents uses DMA, 233 * SUSPEND all but swap device and parents [all …]
|
| /kernel/linux/linux-5.10/mm/ |
| D | swap_state.c | 6 * Swap reorganised 29.12.95, Stephen Tweedie 13 #include <linux/swap.h> 81 /* Avoid get_swap_device() to warn for bad swap entry */ in total_swapcache_pages() 101 printk("%lu pages in swap cache\n", total_swapcache_pages()); in show_swap_cache_info() 102 printk("Swap cache stats: add %lu, delete %lu, find %lu/%lu\n", in show_swap_cache_info() 105 printk("Free swap = %ldkB\n", in show_swap_cache_info() 107 printk("Total swap = %lukB\n", total_swap_pages << (PAGE_SHIFT - 10)); in show_swap_cache_info() 181 * been verified to be in the swap cache. 210 * add_to_swap - allocate swap space for a page 211 * @page: page we want to move to swap [all …]
|
| D | swapfile.c | 6 * Swap reorganised 29.12.95, Stephen Tweedie 16 #include <linux/swap.h> 57 * Some modules use swappable objects and may try to swap them out under 59 * check to see if any swap space is available. 66 static const char Bad_file[] = "Bad swap file entry "; 67 static const char Unused_file[] = "Unused swap file entry "; 68 static const char Bad_offset[] = "Bad swap offset entry "; 69 static const char Unused_offset[] = "Unused swap offset entry "; 116 /* Reclaim the swap entry anyway if possible */ 119 * Reclaim the swap entry if there are no more mappings of the [all …]
|
| D | swap_slots.c | 3 * Manage cache of swap slots to be used for and returned from 4 * swap. 10 * We allocate the swap slots from the global pool and put 21 * The swap entry allocated is marked with SWAP_HAS_CACHE 25 * The swap slots cache is protected by a mutex instead of 42 /* Serialize swap slots cache enable/disable operations */ 209 * a swap device; in __drain_swap_slots_cache() 210 * 2) disabling of swap slot cache, when we run low in __drain_swap_slots_cache() 211 * on swap slots when allocating memory and need in __drain_swap_slots_cache() 212 * to return swap slots to global pool. in __drain_swap_slots_cache() [all …]
|
| /kernel/linux/linux-4.19/mm/ |
| D | swap_state.c | 6 * Swap reorganised 29.12.95, Stephen Tweedie 13 #include <linux/swap.h> 101 printk("%lu pages in swap cache\n", total_swapcache_pages()); in show_swap_cache_info() 102 printk("Swap cache stats: add %lu, delete %lu, find %lu/%lu\n", in show_swap_cache_info() 105 printk("Free swap = %ldkB\n", in show_swap_cache_info() 107 printk("Total swap = %lukB\n", total_swap_pages << (PAGE_SHIFT - 10)); in show_swap_cache_info() 175 * been verified to be in the swap cache. 202 * add_to_swap - allocate swap space for a page 203 * @page: page we want to move to swap 205 * Allocate swap space for the page and add the page to the [all …]
|
| D | swapfile.c | 5 * Swap reorganised 29.12.95, Stephen Tweedie 15 #include <linux/swap.h> 56 * Some modules use swappable objects and may try to swap them out under 58 * check to see if any swap space is available. 65 static const char Bad_file[] = "Bad swap file entry "; 66 static const char Unused_file[] = "Unused swap file entry "; 67 static const char Bad_offset[] = "Bad swap offset entry "; 68 static const char Unused_offset[] = "Unused swap offset entry "; 115 /* returns 1 if swap entry is freed */ 142 * swapon tell device that all the old swap contents can be discarded, [all …]
|
| D | swap_slots.c | 3 * Manage cache of swap slots to be used for and returned from 4 * swap. 10 * We allocate the swap slots from the global pool and put 21 * The swap entry allocated is marked with SWAP_HAS_CACHE 25 * The swap slots cache is protected by a mutex instead of 42 /* Serialize swap slots cache enable/disable operations */ 210 * a swap device; in __drain_swap_slots_cache() 211 * 2) disabling of swap slot cache, when we run low in __drain_swap_slots_cache() 212 * on swap slots when allocating memory and need in __drain_swap_slots_cache() 213 * to return swap slots to global pool. in __drain_swap_slots_cache() [all …]
|
| /kernel/linux/linux-5.10/include/linux/ |
| D | swap.h | 23 #define SWAP_FLAG_PREFER 0x8000 /* set if swap priority specified */ 26 #define SWAP_FLAG_DISCARD 0x10000 /* enable discard for swap */ 27 #define SWAP_FLAG_DISCARD_ONCE 0x20000 /* discard swap area at swapon-time */ 42 * be swapped to. The swap type and the offset into that swap type are 51 * Use some of the swap files numbers for other purposes. This 99 * Magic header for a swap area. The first part of the union is 100 * what the swap magic looks like for the old (limited to 128MB) 101 * swap area format, the second part of the union adds - in the 105 * Having the magic at the end of the PAGE_SIZE makes detecting swap 113 char magic[10]; /* SWAP-SPACE or SWAPSPACE2 */ [all …]
|
| /kernel/linux/linux-4.19/include/linux/ |
| D | swap.h | 21 #define SWAP_FLAG_PREFER 0x8000 /* set if swap priority specified */ 24 #define SWAP_FLAG_DISCARD 0x10000 /* enable discard for swap */ 25 #define SWAP_FLAG_DISCARD_ONCE 0x20000 /* discard swap area at swapon-time */ 40 * be swapped to. The swap type and the offset into that swap type are 49 * Use some of the swap files numbers for other purposes. This 97 * Magic header for a swap area. The first part of the union is 98 * what the swap magic looks like for the old (limited to 128MB) 99 * swap area format, the second part of the union adds - in the 103 * Having the magic at the end of the PAGE_SIZE makes detecting swap 111 char magic[10]; /* SWAP-SPACE or SWAPSPACE2 */ [all …]
|
| /kernel/linux/linux-4.19/Documentation/ABI/testing/ |
| D | sysfs-kernel-mm-swap | 1 What: /sys/kernel/mm/swap/ 6 What: /sys/kernel/mm/swap/vma_ra_enabled 9 Description: Enable/disable VMA based swap readahead. 11 If set to true, the VMA based swap readahead algorithm 13 VMA, and the global swap readahead algorithm will be 15 false, the global swap readahead algorithm will be
|
| /kernel/linux/linux-5.10/Documentation/ABI/testing/ |
| D | sysfs-kernel-mm-swap | 1 What: /sys/kernel/mm/swap/ 6 What: /sys/kernel/mm/swap/vma_ra_enabled 9 Description: Enable/disable VMA based swap readahead. 11 If set to true, the VMA based swap readahead algorithm 13 VMA, and the global swap readahead algorithm will be 15 false, the global swap readahead algorithm will be
|
| /kernel/linux/linux-4.19/Documentation/cgroup-v1/ |
| D | memory.txt | 41 - accounting anonymous pages, file caches, swap caches usage and limiting them. 43 - optionally, memory+swap usage can be accounted and limited. 62 memory.memsw.usage_in_bytes # show current usage for memory+Swap 65 memory.memsw.limit_in_bytes # set/show limit of memory+Swap usage 67 memory.memsw.failcnt # show the number of memory+Swap hits limits 69 memory.memsw.max_usage_in_bytes # show max memory+Swap usage recorded 186 causing page fault. So, we avoid accounting at swap-in I/O. 209 2.4 Swap Extension (CONFIG_MEMCG_SWAP) 211 Swap Extension allows you to record charge for swap. A swapped-in page is 214 When swap is accounted, following files are added. [all …]
|
| D | memcg_test.txt | 36 Called when swp_entry's refcnt goes down to 0. A charge against swap 58 4.1 Swap-in. 59 At swap-in, the page is taken from swap-cache. There are 2 cases. 65 4.2 Swap-out. 66 At swap-out, typical state transition is below. 68 (a) add to swap cache. (marked as SwapCache) 72 (c) write back to swap. 73 (d) delete from swap cache. (remove from SwapCache) 97 - Both on radix-tree and SwapCache. This happens at swap-in 98 and swap-out, [all …]
|
| /kernel/linux/linux-5.10/arch/arm/vdso/ |
| D | vdsomunge.c | 101 static Elf32_Word read_elf_word(Elf32_Word word, bool swap) in read_elf_word() argument 103 return swap ? swab32(word) : word; in read_elf_word() 106 static Elf32_Half read_elf_half(Elf32_Half half, bool swap) in read_elf_half() argument 108 return swap ? swab16(half) : half; in read_elf_half() 111 static void write_elf_word(Elf32_Word val, Elf32_Word *dst, bool swap) in write_elf_word() argument 113 *dst = swap ? swab32(val) : val; in write_elf_word() 125 bool swap; in main() local 159 swap = inhdr->e_ident[EI_DATA] != HOST_ORDER; in main() 161 if (read_elf_half(inhdr->e_type, swap) != ET_DYN) in main() 164 if (read_elf_half(inhdr->e_machine, swap) != EM_ARM) in main() [all …]
|
| /kernel/linux/linux-5.10/drivers/net/wireless/ath/ath10k/ |
| D | swap.c | 6 /* This file has implementation for code swap logic. With code swap feature, 28 /* Parse swap bin and copy the content to host allocated memory. in ath10k_swap_code_seg_fill() 47 ath10k_err(ar, "refusing an invalid swap file\n"); in ath10k_swap_code_seg_fill() 64 ath10k_err(ar, "failed to parse invalid swap file\n"); in ath10k_swap_code_seg_fill() 98 ath10k_err(ar, "refusing code swap bin because it is too big %zu > %d\n", in ath10k_swap_code_seg_alloc() 133 ath10k_dbg(ar, ATH10K_DBG_BOOT, "boot found firmware code swap binary\n"); in ath10k_swap_code_seg_configure() 141 ath10k_err(ar, "failed to write Code swap segment information (%d)\n", in ath10k_swap_code_seg_configure() 178 ath10k_err(ar, "failed to allocate fw code swap segment\n"); in ath10k_swap_code_seg_init() 186 ath10k_warn(ar, "failed to initialize fw code swap segment: %d\n", in ath10k_swap_code_seg_init()
|
| /kernel/linux/linux-4.19/arch/arm/vdso/ |
| D | vdsomunge.c | 114 static Elf32_Word read_elf_word(Elf32_Word word, bool swap) in read_elf_word() argument 116 return swap ? swab32(word) : word; in read_elf_word() 119 static Elf32_Half read_elf_half(Elf32_Half half, bool swap) in read_elf_half() argument 121 return swap ? swab16(half) : half; in read_elf_half() 124 static void write_elf_word(Elf32_Word val, Elf32_Word *dst, bool swap) in write_elf_word() argument 126 *dst = swap ? swab32(val) : val; in write_elf_word() 138 bool swap; in main() local 172 swap = inhdr->e_ident[EI_DATA] != HOST_ORDER; in main() 174 if (read_elf_half(inhdr->e_type, swap) != ET_DYN) in main() 177 if (read_elf_half(inhdr->e_machine, swap) != EM_ARM) in main() [all …]
|