Lines Matching refs:tx
114 struct xen_netif_tx_front_ring tx; member
238 return (queue->tx.req_prod_pvt - queue->tx.rsp_cons) < in netfront_tx_slot_available()
371 prod = queue->tx.sring->rsp_prod; in xennet_tx_buf_gc()
374 for (cons = queue->tx.rsp_cons; cons != prod; cons++) { in xennet_tx_buf_gc()
377 txrsp = RING_GET_RESPONSE(&queue->tx, cons); in xennet_tx_buf_gc()
399 queue->tx.rsp_cons = prod; in xennet_tx_buf_gc()
409 queue->tx.sring->rsp_event = in xennet_tx_buf_gc()
410 prod + ((queue->tx.sring->req_prod - prod) >> 1) + 1; in xennet_tx_buf_gc()
412 } while ((cons == prod) && (prod != queue->tx.sring->rsp_prod)); in xennet_tx_buf_gc()
421 struct xen_netif_tx_request *tx; /* Last request */ member
430 struct xen_netif_tx_request *tx; in xennet_tx_setup_grant() local
438 tx = RING_GET_REQUEST(&queue->tx, queue->tx.req_prod_pvt++); in xennet_tx_setup_grant()
449 tx->id = id; in xennet_tx_setup_grant()
450 tx->gref = ref; in xennet_tx_setup_grant()
451 tx->offset = offset; in xennet_tx_setup_grant()
452 tx->size = len; in xennet_tx_setup_grant()
453 tx->flags = 0; in xennet_tx_setup_grant()
455 info->tx = tx; in xennet_tx_setup_grant()
456 info->size += tx->size; in xennet_tx_setup_grant()
472 return info.tx; in xennet_make_first_txreq()
480 info->tx->flags |= XEN_NETTXF_more_data; in xennet_make_one_txreq()
486 struct netfront_queue *queue, struct xen_netif_tx_request *tx, in xennet_make_txreqs() argument
493 .tx = tx, in xennet_make_txreqs()
513 return info.tx; in xennet_make_txreqs()
566 struct xen_netif_tx_request *tx, *first_tx; in xennet_start_xmit() local
617 first_tx = tx = xennet_make_first_txreq(queue, skb, in xennet_start_xmit()
619 offset += tx->size; in xennet_start_xmit()
624 len -= tx->size; in xennet_start_xmit()
628 tx->flags |= XEN_NETTXF_csum_blank | XEN_NETTXF_data_validated; in xennet_start_xmit()
631 tx->flags |= XEN_NETTXF_data_validated; in xennet_start_xmit()
638 RING_GET_REQUEST(&queue->tx, queue->tx.req_prod_pvt++); in xennet_start_xmit()
640 tx->flags |= XEN_NETTXF_extra_info; in xennet_start_xmit()
654 tx = xennet_make_txreqs(queue, tx, skb, page, offset, len); in xennet_start_xmit()
659 tx = xennet_make_txreqs(queue, tx, skb, in xennet_start_xmit()
667 RING_PUSH_REQUESTS_AND_CHECK_NOTIFY(&queue->tx, notify); in xennet_start_xmit()
1412 xennet_end_access(queue->tx_ring_ref, queue->tx.sring); in xennet_disconnect_backend()
1417 queue->tx.sring = NULL; in xennet_disconnect_backend()
1540 queue->tx.sring = NULL; in setup_netfront()
1549 FRONT_RING_INIT(&queue->tx, txs, XEN_PAGE_SIZE); in setup_netfront()