| /linux/include/linux/ |
| H A D | huge_mm.h | 75 * Mask of all large folio orders supported for anonymous THP; all orders up to 82 * Mask of all large folio orders supported for file THP. Folios in a DAX 92 * Mask of all large folio orders supported for THP. 198 static inline int highest_order(unsigned long orders) in highest_order() argument 200 return fls_long(orders) - 1; in highest_order() 203 static inline int next_order(unsigned long *orders, int prev) in next_order() argument 205 *orders &= ~BIT(prev); in next_order() 206 return highest_order(*orders); in next_order() 241 * Filter the bitfield of input orders to the ones suitable for use in the vma. 243 * All orders that pass the checks are returned as a bitfield. [all …]
|
| H A D | ihex.h | 4 * firmware loaded in strange orders rather than a single big blob, but
|
| /linux/drivers/gpu/drm/ttm/tests/ |
| H A D | ttm_pool_test.c | 250 pt = &pool->caching[caching].orders[order]; in ttm_pool_alloc_order_caching_match() 279 pt_pool = &pool->caching[pool_caching].orders[order]; in ttm_pool_alloc_caching_mismatch() 280 pt_tt = &pool->caching[tt_caching].orders[order]; in ttm_pool_alloc_caching_mismatch() 313 pt_pool = &pool->caching[caching].orders[order]; in ttm_pool_alloc_order_mismatch() 314 pt_tt = &pool->caching[caching].orders[0]; in ttm_pool_alloc_order_mismatch() 354 pt = &pool->caching[caching].orders[order]; in ttm_pool_free_dma_alloc() 385 pt = &pool->caching[caching].orders[order]; in ttm_pool_free_no_dma_alloc() 405 pt = &pool->caching[caching].orders[order]; in ttm_pool_fini_basic()
|
| /linux/tools/testing/selftests/mm/ |
| H A D | thp_settings.c | 203 unsigned long orders = thp_supported_orders(); in thp_read_settings() local 230 if (!((1 << i) & orders)) { in thp_read_settings() 255 unsigned long orders = thp_supported_orders(); in thp_write_settings() local 281 if (!((1 << i) & orders)) in thp_write_settings() 352 unsigned long orders = 0; in __thp_supported_orders() local 369 orders |= 1UL << i; in __thp_supported_orders() 372 return orders; in __thp_supported_orders()
|
| H A D | split_huge_page_test.c | 125 * folio orders 131 * @orders: output folio order array 135 * all folios within the range and record their orders. All order-0 pages will 138 * NOTE: the function is used to check folio orders after a split is performed, 145 int pagemap_fd, int kpageflags_fd, int orders[], int nr_orders) in gather_after_split_folio_orders() argument 153 if (!orders) in gather_after_split_folio_orders() 175 orders[0]++; in gather_after_split_folio_orders() 210 orders[cur_order]++; in gather_after_split_folio_orders() 225 orders[cur_order]++; in gather_after_split_folio_orders() 230 int pagemap_fd, int kpageflags_fd, int orders[], int nr_orders) in check_after_split_folio_orders() argument [all …]
|
| H A D | uffd-wp-mremap.c | 25 unsigned long orders; in detect_thp_sizes() local 33 orders = thp_supported_orders(); in detect_thp_sizes() 35 for (i = 0; orders && count < max; i++) { in detect_thp_sizes() 36 if (!(orders & (1UL << i))) in detect_thp_sizes() 38 orders &= ~(1UL << i); in detect_thp_sizes()
|
| H A D | cow.c | 47 unsigned long orders; in detect_thp_sizes() local 55 orders = 1UL << sz2ord(pmdsize, pagesize); in detect_thp_sizes() 56 orders |= thp_supported_orders(); in detect_thp_sizes() 58 for (i = 0; orders && count < max; i++) { in detect_thp_sizes() 59 if (!(orders & (1UL << i))) in detect_thp_sizes() 61 orders &= ~(1UL << i); in detect_thp_sizes()
|
| /linux/tools/memory-model/Documentation/ |
| H A D | glossary.txt | 29 a special operation that includes a load and which orders that 117 Fully Ordered: An operation such as smp_mb() that orders all of 120 that orders all of its CPU's prior accesses, itself, and 167 a special operation that includes a store and which orders that
|
| H A D | cheatsheet.txt | 34 SELF: Orders self, as opposed to accesses before and/or after 35 SV: Orders later accesses to the same variable
|
| H A D | recipes.txt | 236 The smp_store_release() macro orders any prior accesses against the 237 store, while the smp_load_acquire macro orders the load against any 277 smp_store_release(), but the rcu_dereference() macro orders the load only 314 The smp_wmb() macro orders prior stores against later stores, and the 315 smp_rmb() macro orders prior loads against later loads. Therefore, if
|
| H A D | ordering.txt | 11 1. Barriers (also known as "fences"). A barrier orders some or 67 First, the smp_mb() full memory barrier orders all of the CPU's prior 115 synchronize_srcu() and so on. However, these primitives have orders
|
| /linux/arch/s390/kvm/ |
| H A D | sigp.c | 266 /* handle unknown orders in user space */ in __prepare_sigp_unknown() 280 * SIGP RESTART, SIGP STOP, and SIGP STOP AND STORE STATUS orders in handle_sigp_dst() 283 * interrupt, we need to return any new non-reset orders "busy". in handle_sigp_dst() 298 * their orders, while the guest cannot observe a in handle_sigp_dst() 299 * difference when issuing other orders from two in handle_sigp_dst()
|
| /linux/arch/powerpc/mm/ |
| H A D | mmu_context.c | 56 * This full barrier orders the store to the cpumask above vs in switch_mm_irqs_off() 69 * radix which orders earlier stores to clear the PTEs before in switch_mm_irqs_off()
|
| /linux/arch/arm64/boot/dts/renesas/ |
| H A D | white-hawk-csi-dsi.dtsi | 24 line-orders = <MEDIA_BUS_CSI2_CPHY_LINE_ORDER_ABC 47 line-orders = <MEDIA_BUS_CSI2_CPHY_LINE_ORDER_ABC
|
| /linux/kernel/ |
| H A D | kexec_handover.c | 97 struct xarray orders; member 128 .orders = XARRAY_INIT(kho_out.ser.track.orders, 0), 169 physxa = xa_load(&track->orders, order); in __kho_unpreserve() 195 physxa = xa_load(&track->orders, order); in __kho_preserve_order() 204 physxa = xa_cmpxchg(&track->orders, order, NULL, new_physxa, in __kho_preserve_order() 378 xa_for_each(&ser->track.orders, order, physxa) { in kho_mem_serialize() 1076 xa_for_each(&kho_out.ser.track.orders, order, physxa) { in kho_abort() 1086 xa_destroy(&kho_out.ser.track.orders); in kho_abort()
|
| /linux/Documentation/ |
| H A D | atomic_t.txt | 194 smp_mb__before_atomic() orders all earlier accesses against the RMW op 195 itself and all accesses following it, and smp_mb__after_atomic() orders all 226 a RELEASE because it orders preceding instructions against both the read
|
| /linux/Documentation/userspace-api/media/v4l/ |
| H A D | field-order.rst | 80 If multiple field orders are possible the 81 driver must choose one of the possible field orders during
|
| /linux/mm/ |
| H A D | huge_memory.c | 103 unsigned long orders) in __thp_vma_allowable_orders() argument 110 /* Check the intersection of requested and supported orders. */ in __thp_vma_allowable_orders() 118 orders &= supported_orders; in __thp_vma_allowable_orders() 119 if (!orders) in __thp_vma_allowable_orders() 130 return in_pf ? orders : 0; in __thp_vma_allowable_orders() 142 * filtering out the unsuitable orders. in __thp_vma_allowable_orders() 148 int order = highest_order(orders); in __thp_vma_allowable_orders() 151 while (orders) { in __thp_vma_allowable_orders() 155 order = next_order(&orders, order); in __thp_vma_allowable_orders() 158 if (!orders) in __thp_vma_allowable_orders() [all …]
|
| H A D | memory.c | 4464 unsigned long orders) in thp_swap_suitable_orders() argument 4468 order = highest_order(orders); in thp_swap_suitable_orders() 4475 while (orders) { in thp_swap_suitable_orders() 4479 order = next_order(&orders, order); in thp_swap_suitable_orders() 4482 return orders; in thp_swap_suitable_orders() 4488 unsigned long orders; in alloc_swap_folio() local 4514 * Get a list of all the (large) orders below PMD_ORDER that are enabled in alloc_swap_folio() 4517 orders = thp_vma_allowable_orders(vma, vma->vm_flags, TVA_PAGEFAULT, in alloc_swap_folio() 4519 orders = thp_vma_suitable_orders(vma, vmf->address, orders); in alloc_swap_folio() 4520 orders = thp_swap_suitable_orders(swp_offset(entry), in alloc_swap_folio() [all …]
|
| H A D | shmem.c | 1800 * Only allow inherit orders if the top-level value is 'force', which in shmem_allowable_huge_orders() 1820 unsigned long orders) in shmem_suitable_orders() argument 1828 orders = thp_vma_suitable_orders(vma, vmf->address, orders); in shmem_suitable_orders() 1829 if (!orders) in shmem_suitable_orders() 1834 order = highest_order(orders); in shmem_suitable_orders() 1835 while (orders) { in shmem_suitable_orders() 1849 order = next_order(&orders, order); in shmem_suitable_orders() 1852 return orders; in shmem_suitable_orders() 1857 unsigned long orders) in shmem_suitable_orders() argument 1879 struct mm_struct *fault_mm, unsigned long orders) in shmem_alloc_and_add_folio() argument [all …]
|
| /linux/Documentation/admin-guide/mm/ |
| H A D | transhuge.rst | 630 lower orders or small pages. 634 instead falls back to using huge pages with lower orders or 647 and instead falls back to using huge pages with lower orders or 652 falls back to using huge pages with lower orders or small pages 679 smaller orders. This can happen for a variety of reasons but a
|
| /linux/samples/bpf/ |
| H A D | tc_l2_redirect_user.c | 59 /* bpf_tunnel_key.remote_ipv4 expects host byte orders */ in main()
|
| /linux/drivers/s390/block/ |
| H A D | dasd_eckd.h | 56 /* Define Subsystem Function / Orders */ 60 * Perform Subsystem Function / Orders 67 * Perform Subsystem Function / Sub-Orders
|
| /linux/arch/s390/include/uapi/asm/ |
| H A D | raw3270.h | 13 /* Buffer Control Orders */
|
| /linux/tools/testing/selftests/rcutorture/bin/ |
| H A D | kvm-check-branches.sh | 24 # reduces the disk space required by about two orders of magnitude for
|