Lines Matching refs:idx
126 return j->buf + j->reservations.idx;
146 static inline int journal_state_count(union journal_res_state s, int idx)
148 switch (idx) {
159 s->buf0_count += s->idx == 0;
160 s->buf1_count += s->idx == 1;
161 s->buf2_count += s->idx == 2;
162 s->buf3_count += s->idx == 3;
196 return vstruct_idx(j->buf[res->idx].data, res->offset);
253 static inline union journal_res_state journal_state_buf_put(struct journal *j, unsigned idx)
258 .buf0_count = idx == 0,
259 .buf1_count = idx == 1,
260 .buf2_count = idx == 2,
261 .buf3_count = idx == 3,
270 static inline void __bch2_journal_buf_put(struct journal *j, unsigned idx, u64 seq)
274 s = journal_state_buf_put(j, idx);
275 if (!journal_state_count(s, idx))
279 static inline void bch2_journal_buf_put(struct journal *j, unsigned idx, u64 seq)
283 s = journal_state_buf_put(j, idx);
284 if (!journal_state_count(s, idx)) {
308 bch2_journal_buf_put(j, res->idx, res->seq);
342 EBUG_ON(!journal_state_count(new, new.idx));
354 if (!journal_state_count(new, new.idx))
363 res->idx = old.idx;
365 res->seq = le64_to_cpu(j->buf[old.idx].data->seq);