Lines Matching refs:cons_pos
316 unsigned long cons_pos, prod_pos, over_pos; in ringbuf_avail_data_sz() local
318 cons_pos = smp_load_acquire(&rb->consumer_pos); in ringbuf_avail_data_sz()
323 return prod_pos - max(cons_pos, over_pos); in ringbuf_avail_data_sz()
326 return prod_pos - cons_pos; in ringbuf_avail_data_sz()
432 unsigned long cons_pos, in bpf_ringbuf_has_space() argument
450 if (new_prod_pos - cons_pos > rb->mask) in bpf_ringbuf_has_space()
464 unsigned long cons_pos, prod_pos, new_prod_pos, pend_pos, over_pos, flags; in __bpf_ringbuf_reserve() local
475 cons_pos = smp_load_acquire(&rb->consumer_pos); in __bpf_ringbuf_reserve()
493 if (!bpf_ringbuf_has_space(rb, new_prod_pos, cons_pos, pend_pos)) { in __bpf_ringbuf_reserve()
560 unsigned long rec_pos, cons_pos; in bpf_ringbuf_commit() local
578 cons_pos = smp_load_acquire(&rb->consumer_pos) & rb->mask; in bpf_ringbuf_commit()
582 else if (cons_pos == rec_pos && !(flags & BPF_RB_NO_WAKEUP)) in bpf_ringbuf_commit()
751 u64 cons_pos, prod_pos; in __bpf_user_ringbuf_peek() local
759 cons_pos = smp_load_acquire(&rb->consumer_pos); in __bpf_user_ringbuf_peek()
760 if (cons_pos >= prod_pos) in __bpf_user_ringbuf_peek()
763 hdr = (u32 *)((uintptr_t)rb->data + (uintptr_t)(cons_pos & rb->mask)); in __bpf_user_ringbuf_peek()
771 if (total_len > prod_pos - cons_pos) in __bpf_user_ringbuf_peek()
789 smp_store_release(&rb->consumer_pos, cons_pos + total_len); in __bpf_user_ringbuf_peek()
797 (uintptr_t)((cons_pos + BPF_RINGBUF_HDR_SZ) & rb->mask)); in __bpf_user_ringbuf_peek()