git.droids-corp.org
/
dpdk.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
mbuf: expand ol_flags field to 64-bits
[dpdk.git]
/
lib
/
librte_pmd_i40e
/
i40e_rxtx.c
diff --git
a/lib/librte_pmd_i40e/i40e_rxtx.c
b/lib/librte_pmd_i40e/i40e_rxtx.c
index
25a5f6f
..
cd05654
100644
(file)
--- a/
lib/librte_pmd_i40e/i40e_rxtx.c
+++ b/
lib/librte_pmd_i40e/i40e_rxtx.c
@@
-91,27
+91,27
@@
static uint16_t i40e_xmit_pkts_simple(void *tx_queue,
uint16_t nb_pkts);
/* Translate the rx descriptor status to pkt flags */
uint16_t nb_pkts);
/* Translate the rx descriptor status to pkt flags */
-static inline uint
16
_t
+static inline uint
64
_t
i40e_rxd_status_to_pkt_flags(uint64_t qword)
{
i40e_rxd_status_to_pkt_flags(uint64_t qword)
{
- uint
16
_t flags;
+ uint
64
_t flags;
/* Check if VLAN packet */
/* Check if VLAN packet */
- flags =
(uint16_t)(
qword & (1 << I40E_RX_DESC_STATUS_L2TAG1P_SHIFT) ?
- PKT_RX_VLAN_PKT : 0
)
;
+ flags = qword & (1 << I40E_RX_DESC_STATUS_L2TAG1P_SHIFT) ?
+ PKT_RX_VLAN_PKT : 0;
/* Check if RSS_HASH */
/* Check if RSS_HASH */
- flags |= (
uint16_t)((
((qword >> I40E_RX_DESC_STATUS_FLTSTAT_SHIFT) &
+ flags |= (((qword >> I40E_RX_DESC_STATUS_FLTSTAT_SHIFT) &
I40E_RX_DESC_FLTSTAT_RSS_HASH) ==
I40E_RX_DESC_FLTSTAT_RSS_HASH) ==
- I40E_RX_DESC_FLTSTAT_RSS_HASH) ? PKT_RX_RSS_HASH : 0
)
;
+ I40E_RX_DESC_FLTSTAT_RSS_HASH) ? PKT_RX_RSS_HASH : 0;
return flags;
}
return flags;
}
-static inline uint
16
_t
+static inline uint
64
_t
i40e_rxd_error_to_pkt_flags(uint64_t qword)
{
i40e_rxd_error_to_pkt_flags(uint64_t qword)
{
- uint
16
_t flags = 0;
+ uint
64
_t flags = 0;
uint64_t error_bits = (qword >> I40E_RXD_QW1_ERROR_SHIFT);
#define I40E_RX_ERR_BITS 0x3f
uint64_t error_bits = (qword >> I40E_RXD_QW1_ERROR_SHIFT);
#define I40E_RX_ERR_BITS 0x3f
@@
-143,12
+143,12
@@
i40e_rxd_error_to_pkt_flags(uint64_t qword)
}
/* Translate pkt types to pkt flags */
}
/* Translate pkt types to pkt flags */
-static inline uint
16
_t
+static inline uint
64
_t
i40e_rxd_ptype_to_pkt_flags(uint64_t qword)
{
uint8_t ptype = (uint8_t)((qword & I40E_RXD_QW1_PTYPE_MASK) >>
I40E_RXD_QW1_PTYPE_SHIFT);
i40e_rxd_ptype_to_pkt_flags(uint64_t qword)
{
uint8_t ptype = (uint8_t)((qword & I40E_RXD_QW1_PTYPE_MASK) >>
I40E_RXD_QW1_PTYPE_SHIFT);
- static const uint
16
_t ip_ptype_map[I40E_MAX_PKT_TYPE] = {
+ static const uint
64
_t ip_ptype_map[I40E_MAX_PKT_TYPE] = {
0, /* PTYPE 0 */
0, /* PTYPE 1 */
0, /* PTYPE 2 */
0, /* PTYPE 0 */
0, /* PTYPE 1 */
0, /* PTYPE 2 */
@@
-567,7
+567,7
@@
i40e_rx_scan_hw_ring(struct i40e_rx_queue *rxq)
uint32_t rx_status;
int32_t s[I40E_LOOK_AHEAD], nb_dd;
int32_t i, j, nb_rx = 0;
uint32_t rx_status;
int32_t s[I40E_LOOK_AHEAD], nb_dd;
int32_t i, j, nb_rx = 0;
- uint
16
_t pkt_flags;
+ uint
64
_t pkt_flags;
rxdp = &rxq->rx_ring[rxq->rx_tail];
rxep = &rxq->sw_ring[rxq->rx_tail];
rxdp = &rxq->rx_ring[rxq->rx_tail];
rxep = &rxq->sw_ring[rxq->rx_tail];
@@
-789,7
+789,7
@@
i40e_recv_pkts(void *rx_queue, struct rte_mbuf **rx_pkts, uint16_t nb_pkts)
uint16_t rx_packet_len;
uint16_t rx_id, nb_hold;
uint64_t dma_addr;
uint16_t rx_packet_len;
uint16_t rx_id, nb_hold;
uint64_t dma_addr;
- uint
16
_t pkt_flags;
+ uint
64
_t pkt_flags;
nb_rx = 0;
nb_hold = 0;
nb_rx = 0;
nb_hold = 0;
@@
-896,10
+896,11
@@
i40e_recv_scattered_pkts(void *rx_queue,
struct rte_mbuf *last_seg = rxq->pkt_last_seg;
struct rte_mbuf *nmb, *rxm;
uint16_t rx_id = rxq->rx_tail;
struct rte_mbuf *last_seg = rxq->pkt_last_seg;
struct rte_mbuf *nmb, *rxm;
uint16_t rx_id = rxq->rx_tail;
- uint16_t nb_rx = 0, nb_hold = 0, rx_packet_len
, pkt_flags
;
+ uint16_t nb_rx = 0, nb_hold = 0, rx_packet_len;
uint32_t rx_status;
uint64_t qword1;
uint64_t dma_addr;
uint32_t rx_status;
uint64_t qword1;
uint64_t dma_addr;
+ uint64_t pkt_flags;
while (nb_rx < nb_pkts) {
rxdp = &rx_ring[rx_id];
while (nb_rx < nb_pkts) {
rxdp = &rx_ring[rx_id];
@@
-1046,7
+1047,7
@@
i40e_recv_scattered_pkts(void *rx_queue,
/* Check if the context descriptor is needed for TX offloading */
static inline uint16_t
/* Check if the context descriptor is needed for TX offloading */
static inline uint16_t
-i40e_calc_context_desc(uint
16
_t flags)
+i40e_calc_context_desc(uint
64
_t flags)
{
uint16_t mask = 0;
{
uint16_t mask = 0;
@@
-1075,7
+1076,7
@@
i40e_xmit_pkts(void *tx_queue, struct rte_mbuf **tx_pkts, uint16_t nb_pkts)
uint32_t td_offset;
uint32_t tx_flags;
uint32_t td_tag;
uint32_t td_offset;
uint32_t tx_flags;
uint32_t td_tag;
- uint
16
_t ol_flags;
+ uint
64
_t ol_flags;
uint8_t l2_len;
uint8_t l3_len;
uint16_t nb_used;
uint8_t l2_len;
uint8_t l3_len;
uint16_t nb_used;