Lines Matching defs:slice
97 static int slice_low_has_vma(struct mm_struct *mm, unsigned long slice)
99 return !slice_area_is_free(mm, slice << SLICE_LOW_SHIFT,
103 static int slice_high_has_vma(struct mm_struct *mm, unsigned long slice)
105 unsigned long start = slice << SLICE_HIGH_SHIFT;
191 /* Write the new slice psize bits */
255 * Compute which slice addr is part of;
256 * set *boundary_addr to the start or end boundary of that slice
258 * return boolean indicating if the slice is marked as available in the
265 unsigned long slice;
267 slice = GET_LOW_SLICE_INDEX(addr);
268 *boundary_addr = (slice + end) << SLICE_LOW_SHIFT;
269 return !!(available->low_slices & (1u << slice));
271 slice = GET_HIGH_SLICE_INDEX(addr);
272 *boundary_addr = (slice + end) ?
273 ((slice + end) << SLICE_HIGH_SHIFT) : SLICE_LOW_TOP;
274 return !!test_bit(slice, available->high_slices);
302 * available slices only and ends at a slice boundary.
304 * extend it to cover the next available slice.
353 * available slices only and starts at a slice boundary.
355 * extend it to cover the previous available slice.
458 * slice mask cache to be recalculated because it should
609 * Try to allocate the context before we do slice convert
700 * Set all slice psizes to the default.
751 * "convert" back a slice with no VMAs to the standard page size, only
785 /* With radix we don't use slice, so derive it from vma*/