Skip to content

Commit

Permalink
Port some changes from contrail_dpdk_17_11
Browse files Browse the repository at this point in the history
   cherry-picked as is from contrail_dpdk_17_11_3

  - Increase mbuf headroom to allow for mirror metadata to fit.
  - Enabled port stats collection
  - Changed RTE_MACHINE to snb from native
  - add GSO flags and disable RDRAND cpu flags as its not
    supported on target
  - Initialize the mbuf data offset after raw allocation
  - Fix compiling error in app/test-crypto-perf/cperf_test_verify.c
  - JUMBO frame fixes in dpdk 17.02 + adjust to the new offload API.
  - Enable RSS for MPLSoUDP packets on bnxt interfaces

Change-Id: I83178dc8c3fef08d078741320f3a9264e9e6fa00
Partial-bug: #1781402
Signed-off-by: Yi Yang <yi.y.yang@intel.com>
Signed-off-by: Matan Azrad <matan@mellanox.com>
  • Loading branch information
yi-y-yang authored and Matan Azrad committed Oct 11, 2018
1 parent 17efb7f commit b91b0b9
Show file tree
Hide file tree
Showing 9 changed files with 25 additions and 9 deletions.
4 changes: 2 additions & 2 deletions app/test-crypto-perf/cperf_test_verify.c
Expand Up @@ -99,8 +99,8 @@ cperf_verify_op(struct rte_crypto_op *op,
uint32_t len;
uint16_t nb_segs;
uint8_t *data;
uint32_t cipher_offset, auth_offset;
uint8_t cipher, auth;
uint32_t cipher_offset = 0, auth_offset = 0;
uint8_t cipher = 0, auth = 0;
int res = 0;

if (op->status != RTE_CRYPTO_OP_STATUS_SUCCESS)
Expand Down
4 changes: 2 additions & 2 deletions config/common_base
Expand Up @@ -686,7 +686,7 @@ CONFIG_RTE_LIBRTE_MBUF=y
CONFIG_RTE_LIBRTE_MBUF_DEBUG=n
CONFIG_RTE_MBUF_DEFAULT_MEMPOOL_OPS="ring_mp_mc"
CONFIG_RTE_MBUF_REFCNT_ATOMIC=y
CONFIG_RTE_PKTMBUF_HEADROOM=128
CONFIG_RTE_PKTMBUF_HEADROOM=256

#
# Compile librte_timer
Expand Down Expand Up @@ -818,7 +818,7 @@ CONFIG_RTE_LIBRTE_REORDER=y
# Compile librte_port
#
CONFIG_RTE_LIBRTE_PORT=y
CONFIG_RTE_PORT_STATS_COLLECT=n
CONFIG_RTE_PORT_STATS_COLLECT=y
CONFIG_RTE_PORT_PCAP=n

#
Expand Down
2 changes: 1 addition & 1 deletion config/defconfig_x86_64-native-linuxapp-gcc
Expand Up @@ -3,7 +3,7 @@

#include "common_linuxapp"

CONFIG_RTE_MACHINE="native"
CONFIG_RTE_MACHINE="snb"

CONFIG_RTE_ARCH="x86_64"
CONFIG_RTE_ARCH_X86_64=y
Expand Down
2 changes: 1 addition & 1 deletion drivers/net/af_packet/rte_eth_af_packet.c
Expand Up @@ -301,7 +301,7 @@ eth_dev_info(struct rte_eth_dev *dev, struct rte_eth_dev_info *dev_info)

dev_info->if_index = internals->if_index;
dev_info->max_mac_addrs = 1;
dev_info->max_rx_pktlen = (uint32_t)ETH_FRAME_LEN;
dev_info->max_rx_pktlen = (uint32_t)ETHER_MAX_JUMBO_FRAME_LEN;
dev_info->max_rx_queues = (uint16_t)internals->nb_queues;
dev_info->max_tx_queues = (uint16_t)internals->nb_queues;
dev_info->min_rx_bufsize = 0;
Expand Down
2 changes: 2 additions & 0 deletions drivers/net/bnxt/bnxt_ethdev.c
Expand Up @@ -426,6 +426,8 @@ static void bnxt_dev_info_get_op(struct rte_eth_dev *eth_dev,
dev_info->hash_key_size = 40;
max_vnics = bp->max_vnics;

dev_info->flow_type_rss_offloads = BNXT_ETH_RSS_SUPPORT;

/* Fast path specifics */
dev_info->min_rx_bufsize = 1;
dev_info->max_rx_pktlen = BNXT_MAX_MTU + ETHER_HDR_LEN + ETHER_CRC_LEN
Expand Down
1 change: 1 addition & 0 deletions drivers/net/bnxt/bnxt_rxr.c
Expand Up @@ -27,6 +27,7 @@ static inline struct rte_mbuf *__bnxt_alloc_rx_data(struct rte_mempool *mb)
struct rte_mbuf *data;

data = rte_mbuf_raw_alloc(mb);
data->data_off = RTE_PKTMBUF_HEADROOM;

return data;
}
Expand Down
11 changes: 11 additions & 0 deletions drivers/net/bonding/rte_eth_bond_pmd.c
Expand Up @@ -1815,6 +1815,17 @@ slave_configure(struct rte_eth_dev *bonded_eth_dev,
slave_eth_dev->data->dev_conf.rxmode.offloads &=
~DEV_RX_OFFLOAD_VLAN_FILTER;

slave_eth_dev->data->dev_conf.rxmode.max_rx_pkt_len =
bonded_eth_dev->data->dev_conf.rxmode.max_rx_pkt_len;

if (bonded_eth_dev->data->dev_conf.rxmode.offloads &
DEV_RX_OFFLOAD_JUMBO_FRAME)
slave_eth_dev->data->dev_conf.rxmode.offloads |=
DEV_RX_OFFLOAD_JUMBO_FRAME;
else
slave_eth_dev->data->dev_conf.rxmode.offloads &=
~DEV_RX_OFFLOAD_JUMBO_FRAME;

nb_rx_queues = bonded_eth_dev->data->nb_rx_queues;
nb_tx_queues = bonded_eth_dev->data->nb_tx_queues;

Expand Down
2 changes: 2 additions & 0 deletions lib/librte_mbuf/rte_mbuf.h
Expand Up @@ -178,6 +178,8 @@ extern "C" {
#define PKT_RX_QINQ (1ULL << 20)

/* add new RX flags here */
#define PKT_RX_GSO_TCP4 (1ULL << 21) /**< RX packet with TCPv4 segment offload */
#define PKT_RX_GSO_TCP6 (1ULL << 22) /**< RX packet with TCPv6 segment offload */

/* add new TX flags here */

Expand Down
6 changes: 3 additions & 3 deletions mk/rte.cpuflags.mk
Expand Up @@ -47,9 +47,9 @@ CPUFLAGS += AVX
endif
endif

ifneq ($(filter $(AUTO_CPUFLAGS),__RDRND__),)
CPUFLAGS += RDRAND
endif
#ifneq ($(filter $(AUTO_CPUFLAGS),__RDRND__),)
#CPUFLAGS += RDRAND
#endif

ifneq ($(filter $(AUTO_CPUFLAGS),__FSGSBASE__),)
CPUFLAGS += FSGSBASE
Expand Down

0 comments on commit b91b0b9

Please sign in to comment.