summaryrefslogtreecommitdiffstats
path: root/VNFs/DPPD-PROX/main.c
diff options
context:
space:
mode:
authorXavier Simonart <xavier.simonart@intel.com>2018-04-15 15:35:07 +0200
committerDeepak S <deepak.s@linux.intel.com>2018-04-26 16:59:07 +0530
commit4685c59ec97927af559b4bf10001d0e07de34702 (patch)
treea5dbf9753577ab741970e1ea0804cac80b328eb5 /VNFs/DPPD-PROX/main.c
parent11b2dcde06c74b62a297254d39b24e6a61770f8a (diff)
Fix crc offloads.opnfv-6.0.0
When configuring a port, prox configures queue flags. For historitical reasons, offloads had to be disabled on some pmds. There is now an API to query the ports and gets their capabilities. This fix sets now the flags based on the capabilities, and not the driver name. Change-Id: Ic72d15001992f26910f653c70d31e4381fff8089 Signed-off-by: Xavier Simonart <xavier.simonart@intel.com>
Diffstat (limited to 'VNFs/DPPD-PROX/main.c')
-rw-r--r--VNFs/DPPD-PROX/main.c8
1 files changed, 4 insertions, 4 deletions
diff --git a/VNFs/DPPD-PROX/main.c b/VNFs/DPPD-PROX/main.c
index 931b30c5..59a169d8 100644
--- a/VNFs/DPPD-PROX/main.c
+++ b/VNFs/DPPD-PROX/main.c
@@ -249,7 +249,7 @@ static void configure_if_tx_queues(struct task_args *targ, uint8_t socket)
}
/* Set the ETH_TXQ_FLAGS_NOREFCOUNT flag if none of
the tasks up to the task transmitting to the port
- does not use refcnt. */
+ use refcnt. */
if (!chain_flag_state(targ, TASK_FEATURE_TXQ_FLAGS_REFCOUNT, 1)) {
prox_port_cfg[if_port].tx_conf.txq_flags |= ETH_TXQ_FLAGS_NOREFCOUNT;
plog_info("\t\tEnabling No refcnt on port %d\n", if_port);
@@ -262,7 +262,7 @@ static void configure_if_tx_queues(struct task_args *targ, uint8_t socket)
chain has NOOFFLOADS set all the way until the
first task that receives from a port, it will be
disabled for the destination port. */
- if (chain_flag_state(targ, TASK_FEATURE_TXQ_FLAGS_NOOFFLOADS, 1)) {
+ if (!chain_flag_state(targ, TASK_FEATURE_TXQ_FLAGS_NOOFFLOADS, 0)) {
prox_port_cfg[if_port].tx_conf.txq_flags |= ETH_TXQ_FLAGS_NOOFFLOADS;
plog_info("\t\tDisabling TX offloads on port %d\n", if_port);
} else {
@@ -271,8 +271,8 @@ static void configure_if_tx_queues(struct task_args *targ, uint8_t socket)
/* By default NOMULTSEGS is disabled, as drivers/NIC might split packets on RX
It should only be enabled when we know for sure that the RX does not split packets.
- Set the ETH_TXQ_FLAGS_NOMULTSEGS flag if none of the tasks up to the task
- transmitting to the port does not use multsegs. */
+ Set the ETH_TXQ_FLAGS_NOMULTSEGS flag if all of the tasks up to the task
+ transmitting to the port use no_multsegs. */
if (!chain_flag_state(targ, TASK_FEATURE_TXQ_FLAGS_NOMULTSEGS, 0)) {
prox_port_cfg[if_port].tx_conf.txq_flags |= ETH_TXQ_FLAGS_NOMULTSEGS;
plog_info("\t\tEnabling No MultiSegs on port %d\n", if_port);