Lines Matching refs:sq

104 	struct send_queue *sq;  member
823 static void free_old_xmit_skbs(struct send_queue *sq) in free_old_xmit_skbs() argument
827 struct virtnet_info *vi = sq->vq->vdev->priv; in free_old_xmit_skbs()
830 while ((skb = virtqueue_get_buf(sq->vq, &len)) != NULL) { in free_old_xmit_skbs()
842 static int xmit_skb(struct send_queue *sq, struct sk_buff *skb) in xmit_skb() argument
846 struct virtnet_info *vi = sq->vq->vdev->priv; in xmit_skb()
896 sg_init_table(sq->sg, MAX_SKB_FRAGS + 2); in xmit_skb()
899 num_sg = skb_to_sgvec(skb, sq->sg, 0, skb->len); in xmit_skb()
903 sg_set_buf(sq->sg, hdr, hdr_len); in xmit_skb()
904 num_sg = skb_to_sgvec(skb, sq->sg + 1, 0, skb->len) + 1; in xmit_skb()
906 return virtqueue_add_outbuf(sq->vq, sq->sg, num_sg, skb, GFP_ATOMIC); in xmit_skb()
913 struct send_queue *sq = &vi->sq[qnum]; in start_xmit() local
919 free_old_xmit_skbs(sq); in start_xmit()
925 err = xmit_skb(sq, skb); in start_xmit()
952 if (sq->vq->num_free < 2+MAX_SKB_FRAGS) { in start_xmit()
954 if (unlikely(!virtqueue_enable_cb_delayed(sq->vq))) { in start_xmit()
956 free_old_xmit_skbs(sq); in start_xmit()
957 if (sq->vq->num_free >= 2+MAX_SKB_FRAGS) { in start_xmit()
959 virtqueue_disable_cb(sq->vq); in start_xmit()
965 virtqueue_kick(sq->vq); in start_xmit()
1256 virtqueue_set_affinity(vi->sq[i].vq, -1); in virtnet_clean_affinity()
1281 virtqueue_set_affinity(vi->sq[i].vq, cpu); in virtnet_set_affinity()
1316 ring->tx_max_pending = virtqueue_get_vring_size(vi->sq[0].vq); in virtnet_get_ringparam()
1465 kfree(vi->sq); in virtnet_free_queues()
1492 struct virtqueue *vq = vi->sq[i].vq; in free_unused_bufs()
1562 sprintf(vi->sq[i].name, "output.%d", i); in virtnet_find_vqs()
1564 names[txq2vq(i)] = vi->sq[i].name; in virtnet_find_vqs()
1580 vi->sq[i].vq = vqs[txq2vq(i)]; in virtnet_find_vqs()
1603 vi->sq = kzalloc(sizeof(*vi->sq) * vi->max_queue_pairs, GFP_KERNEL); in virtnet_alloc_queues()
1604 if (!vi->sq) in virtnet_alloc_queues()
1619 sg_init_table(vi->sq[i].sg, ARRAY_SIZE(vi->sq[i].sg)); in virtnet_alloc_queues()
1625 kfree(vi->sq); in virtnet_alloc_queues()