static inline bool
vmxnet3_cmd_ring_desc_empty(struct vmxnet3_cmd_ring *ring)
{
- return (ring->next2comp == ring->next2fill);
+ return ring->next2comp == ring->next2fill;
}
typedef struct vmxnet3_comp_ring {
}
struct vmxnet3_txq_stats {
- uint64_t drop_total; /* # of pkts dropped by the driver, the
- * counters below track droppings due to
- * different reasons
- */
- uint64_t drop_oversized;
- uint64_t drop_hdr_inspect_err;
- uint64_t drop_tso;
- uint64_t deferred;
- uint64_t tx_ring_full;
- uint64_t linearized; /* # of pkts linearized */
+ uint64_t drop_total; /* # of pkts dropped by the driver,
+ * the counters below track droppings due to
+ * different reasons
+ */
+ uint64_t drop_too_many_segs;
+ uint64_t drop_tso;
+ uint64_t tx_ring_full;
};
-typedef struct vmxnet3_tx_ctx {
- int ip_type;
- bool is_vlan;
- bool is_cso;
-
- uint16_t evl_tag; /* only valid when is_vlan == TRUE */
- uint32_t eth_hdr_size; /* only valid for pkts requesting tso or csum
- * offloading */
- uint32_t ip_hdr_size;
- uint32_t l4_hdr_size;
-} vmxnet3_tx_ctx_t;
-
typedef struct vmxnet3_tx_queue {
struct vmxnet3_hw *hw;
struct vmxnet3_cmd_ring cmd_ring;
uint8_t port_id; /**< Device port identifier. */
} vmxnet3_tx_queue_t;
-
struct vmxnet3_rxq_stats {
uint64_t drop_total;
uint64_t drop_err;
uint32_t qid1;
uint32_t qid2;
Vmxnet3_RxQueueDesc *shared;
+ struct rte_mbuf *start_seg;
+ struct rte_mbuf *last_seg;
struct vmxnet3_rxq_stats stats;
bool stopped;
uint16_t queue_id; /**< Device RX queue index. */