Lines Matching refs:rb
195 struct packet_ring_buffer *rb,
515 const struct packet_ring_buffer *rb, in packet_lookup_frame() argument
522 pg_vec_pos = position / rb->frames_per_block; in packet_lookup_frame()
523 frame_offset = position % rb->frames_per_block; in packet_lookup_frame()
525 h.raw = rb->pg_vec[pg_vec_pos].buffer + in packet_lookup_frame()
526 (frame_offset * rb->frame_size); in packet_lookup_frame()
535 struct packet_ring_buffer *rb, in packet_current_frame() argument
538 return packet_lookup_frame(po, rb, rb->head, status); in packet_current_frame()
655 struct packet_ring_buffer *rb, in init_prb_bdqc() argument
659 struct tpacket_kbdq_core *p1 = GET_PBDQC_FROM_RB(rb); in init_prb_bdqc()
1028 static void prb_clear_blk_fill_status(struct packet_ring_buffer *rb) in prb_clear_blk_fill_status() argument
1031 struct tpacket_kbdq_core *pkc = GET_PBDQC_FROM_RB(rb); in prb_clear_blk_fill_status()
1181 const struct packet_ring_buffer *rb, in prb_lookup_block() argument
1185 struct tpacket_kbdq_core *pkc = GET_PBDQC_FROM_RB(rb); in prb_lookup_block()
1193 static int prb_previous_blk_num(struct packet_ring_buffer *rb) in prb_previous_blk_num() argument
1196 if (rb->prb_bdqc.kactive_blk_num) in prb_previous_blk_num()
1197 prev = rb->prb_bdqc.kactive_blk_num-1; in prb_previous_blk_num()
1199 prev = rb->prb_bdqc.knum_blocks-1; in prb_previous_blk_num()
1205 struct packet_ring_buffer *rb, in __prb_previous_block() argument
1208 unsigned int previous = prb_previous_blk_num(rb); in __prb_previous_block()
1209 return prb_lookup_block(po, rb, previous, status); in __prb_previous_block()
1213 struct packet_ring_buffer *rb, in packet_previous_rx_frame() argument
1217 return packet_previous_frame(po, rb, status); in packet_previous_rx_frame()
1219 return __prb_previous_block(po, rb, status); in packet_previous_rx_frame()
1223 struct packet_ring_buffer *rb) in packet_increment_rx_head() argument
1228 return packet_increment_head(rb); in packet_increment_rx_head()
1238 struct packet_ring_buffer *rb, in packet_previous_frame() argument
1241 unsigned int previous = rb->head ? rb->head - 1 : rb->frame_max; in packet_previous_frame()
1242 return packet_lookup_frame(po, rb, previous, status); in packet_previous_frame()
1250 static void packet_inc_pending(struct packet_ring_buffer *rb) in packet_inc_pending() argument
1252 this_cpu_inc(*rb->pending_refcnt); in packet_inc_pending()
1255 static void packet_dec_pending(struct packet_ring_buffer *rb) in packet_dec_pending() argument
1257 this_cpu_dec(*rb->pending_refcnt); in packet_dec_pending()
1260 static unsigned int packet_read_pending(const struct packet_ring_buffer *rb) in packet_read_pending() argument
1266 if (rb->pending_refcnt == NULL) in packet_read_pending()
1270 refcnt += *per_cpu_ptr(rb->pending_refcnt, cpu); in packet_read_pending()
4471 struct packet_ring_buffer *rb; in packet_set_ring() local
4478 rb = tx_ring ? &po->tx_ring : &po->rx_ring; in packet_set_ring()
4485 if (packet_read_pending(rb)) in packet_set_ring()
4494 if (unlikely(rb->pg_vec)) in packet_set_ring()
4524 rb->frames_per_block = req->tp_block_size / req->tp_frame_size; in packet_set_ring()
4525 if (unlikely(rb->frames_per_block == 0)) in packet_set_ring()
4527 if (unlikely(rb->frames_per_block > UINT_MAX / req->tp_block_nr)) in packet_set_ring()
4529 if (unlikely((rb->frames_per_block * req->tp_block_nr) != in packet_set_ring()
4542 init_prb_bdqc(po, rb, pg_vec, req_u); in packet_set_ring()
4589 swap(rb->pg_vec, pg_vec); in packet_set_ring()
4591 swap(rb->rx_owner_map, rx_owner_map); in packet_set_ring()
4592 rb->frame_max = (req->tp_frame_nr - 1); in packet_set_ring()
4593 rb->head = 0; in packet_set_ring()
4594 rb->frame_size = req->tp_frame_size; in packet_set_ring()
4597 swap(rb->pg_vec_order, order); in packet_set_ring()
4598 swap(rb->pg_vec_len, req->tp_block_nr); in packet_set_ring()
4600 rb->pg_vec_pages = req->tp_block_size/PAGE_SIZE; in packet_set_ring()
4637 struct packet_ring_buffer *rb; in packet_mmap() local
4648 for (rb = &po->rx_ring; rb <= &po->tx_ring; rb++) { in packet_mmap()
4649 if (rb->pg_vec) { in packet_mmap()
4650 expected_size += rb->pg_vec_len in packet_mmap()
4651 * rb->pg_vec_pages in packet_mmap()
4664 for (rb = &po->rx_ring; rb <= &po->tx_ring; rb++) { in packet_mmap()
4665 if (rb->pg_vec == NULL) in packet_mmap()
4668 for (i = 0; i < rb->pg_vec_len; i++) { in packet_mmap()
4670 void *kaddr = rb->pg_vec[i].buffer; in packet_mmap()
4673 for (pg_num = 0; pg_num < rb->pg_vec_pages; pg_num++) { in packet_mmap()