Lines Matching refs:bq
437 struct xdp_bulk_queue *bq; in __cpu_map_entry_alloc() local
453 bq = per_cpu_ptr(rcpu->bulkq, i); in __cpu_map_entry_alloc()
454 bq->obj = rcpu; in __cpu_map_entry_alloc()
713 static void bq_flush_to_queue(struct xdp_bulk_queue *bq) in bq_flush_to_queue() argument
715 struct bpf_cpu_map_entry *rcpu = bq->obj; in bq_flush_to_queue()
721 if (unlikely(!bq->count)) in bq_flush_to_queue()
727 for (i = 0; i < bq->count; i++) { in bq_flush_to_queue()
728 struct xdp_frame *xdpf = bq->q[i]; in bq_flush_to_queue()
738 bq->count = 0; in bq_flush_to_queue()
741 __list_del_clearprev(&bq->flush_node); in bq_flush_to_queue()
752 struct xdp_bulk_queue *bq = this_cpu_ptr(rcpu->bulkq); in bq_enqueue() local
754 if (unlikely(bq->count == CPU_MAP_BULK_SIZE)) in bq_enqueue()
755 bq_flush_to_queue(bq); in bq_enqueue()
766 bq->q[bq->count++] = xdpf; in bq_enqueue()
768 if (!bq->flush_node.prev) { in bq_enqueue()
771 list_add(&bq->flush_node, flush_list); in bq_enqueue()
806 struct xdp_bulk_queue *bq, *tmp; in __cpu_map_flush() local
808 list_for_each_entry_safe(bq, tmp, flush_list, flush_node) { in __cpu_map_flush()
809 bq_flush_to_queue(bq); in __cpu_map_flush()
812 wake_up_process(bq->obj->kthread); in __cpu_map_flush()