Lines Matching refs:bq
392 struct xdp_bulk_queue *bq; in __cpu_map_entry_alloc() local
408 bq = per_cpu_ptr(rcpu->bulkq, i); in __cpu_map_entry_alloc()
409 bq->obj = rcpu; in __cpu_map_entry_alloc()
665 static void bq_flush_to_queue(struct xdp_bulk_queue *bq) in bq_flush_to_queue() argument
667 struct bpf_cpu_map_entry *rcpu = bq->obj; in bq_flush_to_queue()
673 if (unlikely(!bq->count)) in bq_flush_to_queue()
679 for (i = 0; i < bq->count; i++) { in bq_flush_to_queue()
680 struct xdp_frame *xdpf = bq->q[i]; in bq_flush_to_queue()
690 bq->count = 0; in bq_flush_to_queue()
693 __list_del_clearprev(&bq->flush_node); in bq_flush_to_queue()
705 struct xdp_bulk_queue *bq = this_cpu_ptr(rcpu->bulkq); in bq_enqueue() local
707 if (unlikely(bq->count == CPU_MAP_BULK_SIZE)) in bq_enqueue()
708 bq_flush_to_queue(bq); in bq_enqueue()
719 bq->q[bq->count++] = xdpf; in bq_enqueue()
721 if (!bq->flush_node.prev) in bq_enqueue()
722 list_add(&bq->flush_node, flush_list); in bq_enqueue()
757 struct xdp_bulk_queue *bq, *tmp; in __cpu_map_flush() local
759 list_for_each_entry_safe(bq, tmp, flush_list, flush_node) { in __cpu_map_flush()
760 bq_flush_to_queue(bq); in __cpu_map_flush()
763 wake_up_process(bq->obj->kthread); in __cpu_map_flush()