i40e: fix offloading of outer checksum for IPIP tunnel
authorOlivier Matz <olivier.matz@6wind.com>
Fri, 13 Feb 2015 09:22:50 +0000 (10:22 +0100)
committerThomas Monjalon <thomas.monjalon@6wind.com>
Mon, 16 Feb 2015 18:21:18 +0000 (19:21 +0100)
When offloading the checksums of ipip tunnels, m->l2_len is set to 0
as there is no tunnel or inner l2 header. Since this is a valid value
remove the test.

By the way, also remove the same test with l3_len because at this
point, it is expected that the software provides proper values in the
mbuf. It should avoid a test in dataplane processing and therefore
slightly increase performance.

Signed-off-by: Olivier Matz <olivier.matz@6wind.com>
Acked-by: Jijiang Liu <jijiang.liu@intel.com>
lib/librte_pmd_i40e/i40e_rxtx.c

index d2f9a97..546f4d1 100644 (file)
@@ -471,16 +471,6 @@ i40e_txd_enable_checksum(uint64_t ol_flags,
                        uint16_t outer_l3_len,
                        uint32_t *cd_tunneling)
 {
-       if (!l2_len) {
-               PMD_DRV_LOG(DEBUG, "L2 length set to 0");
-               return;
-       }
-
-       if (!l3_len) {
-               PMD_DRV_LOG(DEBUG, "L3 length set to 0");
-               return;
-       }
-
        /* UDP tunneling packet TX checksum offload */
        if (ol_flags & PKT_TX_OUTER_IP_CKSUM) {