Lines Matching defs:offset

467 static struct bpos alloc_gens_pos(struct bpos pos, unsigned *offset)
469 *offset = pos.offset & KEY_TYPE_BUCKET_GENS_MASK;
471 pos.offset >>= KEY_TYPE_BUCKET_GENS_BITS;
475 static struct bpos bucket_gens_pos_to_alloc(struct bpos pos, unsigned offset)
477 pos.offset <<= KEY_TYPE_BUCKET_GENS_BITS;
478 pos.offset += offset;
482 static unsigned alloc_gen(struct bkey_s_c k, unsigned offset)
485 ? bkey_s_c_to_bucket_gens(k).v->gens[offset]
533 unsigned offset;
534 struct bpos pos = alloc_gens_pos(iter.pos, &offset);
551 g.v.gens[offset] = gen;
577 u64 start = bucket_gens_pos_to_alloc(k.k->p, 0).offset;
578 u64 end = bucket_gens_pos_to_alloc(bpos_nosnap_successor(k.k->p), 0).offset;
613 *bucket_gen(ca, k.k->p.offset) = bch2_alloc_to_v4(k, &a)->gen;
683 iter.pos.offset,
702 unsigned offset;
703 struct bpos pos = alloc_gens_pos(bucket, &offset);
727 g->v.gens[offset] = gen;
765 !bch2_bucket_is_open_safe(c, new.k->p.inode, new.k->p.offset)) {
852 new.k->p.inode, new.k->p.offset,
863 *bucket_gen(ca, new.k->p.offset) = new_a->gen;
877 !bch2_bucket_is_open(c, new.k->p.inode, new.k->p.offset) &&
882 !bch2_bucket_is_open(c, new.k->p.inode, new.k->p.offset) &&
896 struct bucket *g = gc_bucket(ca, new.k->p.offset);
938 end = bkey_min(end, POS(iter->pos.inode, iter->pos.offset + U32_MAX - 1));
948 BUG_ON(next.offset >= iter->pos.offset + U32_MAX);
956 bch2_key_resize(hole, next.offset - iter->pos.offset);
971 if (bucket->offset < ca->mi.first_bucket) {
972 bucket->offset = ca->mi.first_bucket;
977 bucket->offset = 0;
1012 bch2_key_resize(hole, ca->mi.nbuckets - bucket.offset);
1040 alloc_k.k->p.inode, alloc_k.k->p.offset))
1180 freespace_iter->pos.offset,
1181 end->offset)) {
1193 min_t(u64, U32_MAX, end->offset -
1194 freespace_iter->pos.offset));
1240 bucket_gens_pos_to_alloc(k.k->p, i).offset,
1286 pos.offset &= ~(~0ULL << 56);
1287 genbits = iter->pos.offset & (~0ULL << 56);
1297 bch2_btree_id_str(iter->btree_id), pos.inode, pos.offset))
1310 iter->pos.offset,
1341 u64 start = bucket_gens_pos_to_alloc(k.k->p, 0).offset;
1342 u64 end = bucket_gens_pos_to_alloc(bpos_nosnap_successor(k.k->p), 0).offset;
1691 if (bch2_bucket_is_open_safe(c, pos.inode, pos.offset)) {
1698 pos.inode, pos.offset)) {
1750 if (discard_in_flight_add(c, SPOS(iter.pos.inode, iter.pos.offset, true)))
1763 k.k->p.offset * ca->mi.bucket_size,
1884 bucket.offset * ca->mi.bucket_size,
1924 struct bpos bucket = u64_to_bucket(lru_k.k->p.offset);
1936 if (bch2_bucket_is_open_safe(c, bucket.inode, bucket.offset))
1972 trace_and_count(c, bucket_invalidate, c, bucket.inode, bucket.offset, cached_sectors);
2062 __func__, iter.pos.offset, ca->mi.nbuckets);