Lines Matching refs:chunk_md
242 const struct pcpu_block_md *chunk_md = &chunk->chunk_md;
245 chunk_md->contig_hint == 0)
248 return pcpu_size_to_slot(chunk_md->contig_hint * PCPU_MIN_ALLOC_SIZE);
703 struct pcpu_block_md *chunk_md = &chunk->chunk_md;
707 if (!full_scan && chunk_md->scan_hint) {
708 bit_off = chunk_md->scan_hint_start + chunk_md->scan_hint;
709 chunk_md->contig_hint_start = chunk_md->scan_hint_start;
710 chunk_md->contig_hint = chunk_md->scan_hint;
711 chunk_md->scan_hint = 0;
713 bit_off = chunk_md->first_free;
714 chunk_md->contig_hint = 0;
719 pcpu_block_update(chunk_md, bit_off, bit_off + bits);
768 struct pcpu_block_md *chunk_md = &chunk->chunk_md;
874 if (pcpu_region_overlap(chunk_md->scan_hint_start,
875 chunk_md->scan_hint_start +
876 chunk_md->scan_hint,
879 chunk_md->scan_hint = 0;
886 if (pcpu_region_overlap(chunk_md->contig_hint_start,
887 chunk_md->contig_hint_start +
888 chunk_md->contig_hint,
907 * over the block metadata to update chunk_md->contig_hint.
908 * chunk_md->contig_hint may be off by up to a page, but it will never be more
1004 pcpu_block_update(&chunk->chunk_md,
1061 struct pcpu_block_md *chunk_md = &chunk->chunk_md;
1070 bit_off = ALIGN(chunk_md->contig_hint_start, align) -
1071 chunk_md->contig_hint_start;
1072 if (bit_off + alloc_bits > chunk_md->contig_hint)
1075 bit_off = pcpu_next_hint(chunk_md, alloc_bits);
1170 struct pcpu_block_md *chunk_md = &chunk->chunk_md;
1203 if (bit_off == chunk_md->first_free)
1204 chunk_md->first_free = find_next_zero_bit(
1229 struct pcpu_block_md *chunk_md = &chunk->chunk_md;
1251 chunk_md->first_free = min(chunk_md->first_free, bit_off);
1275 pcpu_init_md_block(&chunk->chunk_md, pcpu_chunk_map_bits(chunk));
1374 chunk->chunk_md.first_free = offset_bits;