Lines Matching full:allocation

89  * fdblocks to ensure user allocation does not overcommit the space the
108 * aside a few blocks which will not be reserved in delayed allocation.
122 * allocation maximum size to the size the AG. However, we cannot use all the
319 xfs_alloc_arg_t *args, /* allocation argument structure */ in xfs_alloc_compute_aligned()
391 * for contiguous allocation from the remaining free space if the file in xfs_alloc_compute_diff()
439 xfs_alloc_arg_t *args) /* allocation argument structure */ in xfs_alloc_fix_len()
530 * that is passed to us. This should be done at the end of any allocation or
765 * allocation after the AGF has been read in.
873 * Read in the allocation group free block array.
920 * Block allocation algorithm and data structures.
937 * Set up cursors, etc. in the extent allocation cursor. This function can be
961 * attempt a small allocation. in xfs_alloc_cur_setup()
1002 * Check an extent for allocation and track the best available candidate in the
1003 * allocation structure. The cursor is deactivated if it has entered an out of
1004 * range state based on allocation arguments. Optionally return the extent
1005 * extent geometry and allocation status if requested by the caller.
1062 * the candidate extent size. Compare locality for near allocation mode. in xfs_alloc_cur_check()
1088 * We're done if we found a perfect allocation. This only deactivates in xfs_alloc_cur_check()
1102 * Complete an allocation of a candidate extent. Remove the extent from both
1131 * Locality allocation lookup algorithm. This expects a cntbt cursor and uses
1186 * Increment the search key until we find at least one allocation in xfs_alloc_cntbt_iter()
1207 struct xfs_alloc_arg *args, /* allocation argument structure */ in xfs_alloc_ag_vextent_small()
1222 * allocation. Make sure to respect minleft even when pulling from the in xfs_alloc_ag_vextent_small()
1290 * Can't do the allocation, give up. in xfs_alloc_ag_vextent_small()
1316 xfs_alloc_arg_t *args) /* allocation argument structure */ in xfs_alloc_ag_vextent_exact()
1448 * current allocation candidate. in xfs_alloc_walk_iter()
1513 * off the end of the tree. If no allocation candidate is found at this in xfs_alloc_ag_vextent_locality()
1520 * allocation requests and fragmented free space. On the other hand, the in xfs_alloc_ag_vextent_locality()
1521 * bnobt is able to satisfy most smaller allocation requests much more in xfs_alloc_ag_vextent_locality()
1523 * free space and sets of free extents for larger allocation requests in xfs_alloc_ag_vextent_locality()
1668 * Allocate a variable extent near bno in the allocation group agno.
1754 * retry the allocation again. If we get an -EAGAIN in xfs_alloc_ag_vextent_near()
1757 * the allocation can be retried. in xfs_alloc_ag_vextent_near()
1775 /* fix up btrees on a successful allocation */ in xfs_alloc_ag_vextent_near()
1784 * Allocate a variable extent anywhere in the allocation group agno.
1871 * retry the allocation again. If we get an -EAGAIN in xfs_alloc_ag_vextent_size()
1874 * the allocation can be retried. in xfs_alloc_ag_vextent_size()
1971 * retry the allocation again. If we get an -EAGAIN in xfs_alloc_ag_vextent_size()
1974 * the allocation can be retried. in xfs_alloc_ag_vextent_size()
2383 * Visible (exported) allocation/free functions.
2490 * not. If we are freeing blocks, we always allow it, otherwise the allocation
2492 * permit the requested allocation to take place.
2511 /* do we have enough contiguous free space for the allocation? */ in xfs_alloc_space_available()
2518 * Do we have enough free space remaining for the allocation? Don't in xfs_alloc_space_available()
2530 * extent allocation. in xfs_alloc_space_available()
2741 * allocation if the system went down. Now we want to cancel the paused work
2822 * Decide whether to use this allocation group for this allocation.
2827 struct xfs_alloc_arg *args, /* allocation argument structure */ in xfs_alloc_fix_freelist()
2835 struct xfs_alloc_arg targs; /* local allocation arguments */ in xfs_alloc_fix_freelist()
2941 * many allocation operations in a transaction. AGFL frees are in xfs_alloc_fix_freelist()
2945 * real allocation can proceed. in xfs_alloc_fix_freelist()
3130 * Put the block on the freelist for the allocation group.
3362 * Read in the allocation group header (free/alloc section).
3389 * Read in the allocation group header (free/alloc section) and initialise the
3490 * Pre-process allocation arguments to set initial state that we don't require
3491 * callers to set up correctly, as well as bounds check the allocation args
3548 * Prepare an AG for allocation. If the AG is not prepared to accept the
3549 * allocation, return failure.
3585 * Post-process allocation results to account for the allocation if it succeed
3589 * hiding it behind a "successful" NULLFSBLOCK allocation.
3605 * to do BMBT block allocation, we have to do a new allocation. in xfs_alloc_vextent_finish()
3608 * ABBA AGF deadlocks because a future allocation attempt in this in xfs_alloc_vextent_finish()
3612 * this point we must update the "first allocation" tracker to point at in xfs_alloc_vextent_finish()
3614 * the next allocation attempt to be modified appropriately to avoid in xfs_alloc_vextent_finish()
3623 * If the allocation failed with an error or we had an ENOSPC result, in xfs_alloc_vextent_finish()
3624 * preserve the returned error whilst also marking the allocation result in xfs_alloc_vextent_finish()
3626 * capture the error will still treat it as a failed allocation. in xfs_alloc_vextent_finish()
3676 * you need an exact sized allocation without locality constraints, this is the
3716 * If the incoming allocation type is XFS_ALLOCTYPE_NEAR_BNO, it means the
3717 * allocation attempts in @start_agno have locality information. If we fail to
3719 * we attempt to allocation in as there is no locality optimisation possible for
3723 * failed" return point. The allocation finish still needs the perag, and
3724 * so the caller will release it once they've finished the allocation.
3759 * Allocation is supposed to succeed now, so break out of the in xfs_alloc_vextent_iterate_ags()
3781 * constraining flags by the caller, drop them and retry the allocation in xfs_alloc_vextent_iterate_ags()
3797 * to allocate blocks. It starts with a near allocation attempt in the initial
3856 * filesystem attempting blocking allocation. This does not wrap or try a second
3927 * viable candidates in the AG, then fail the allocation.