From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mails.dpdk.org (mails.dpdk.org [217.70.189.124]) by inbox.dpdk.org (Postfix) with ESMTP id EDBFEA00C2 for ; Thu, 8 Dec 2022 08:55:20 +0100 (CET) Received: from mails.dpdk.org (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id 68F9C4161A; Thu, 8 Dec 2022 08:54:53 +0100 (CET) Received: from mail-qt1-f172.google.com (mail-qt1-f172.google.com [209.85.160.172]) by mails.dpdk.org (Postfix) with ESMTP id D907C40E28 for ; Thu, 8 Dec 2022 08:54:51 +0100 (CET) Received: by mail-qt1-f172.google.com with SMTP id ay32so481131qtb.11 for ; Wed, 07 Dec 2022 23:54:51 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:from:to:cc:subject:date:message-id:reply-to; bh=EkQVwxHCafwevtebblZi1Uf5aaO/J9sTTr5wDqe8C54=; b=e7cApHmY2vrZ6VhH7XPCIXFycB9IkfP53JRhktFDsb8DYl/yiDCCD2gZ6BLLxgWkDT SILHoWM/MYxIkXnu9bUKzhLthp2CgRNzR+WMNOBUVq4vWCZHUdm69RgLYo8fAYYMEMf0 VX5fNBKNgBLL8ZLG2CVylYFb3cf0pQS76jw1JxLz0HMGbhouP3a0KtZ1h30FE4UYy9Ny xGTV1m38nvUVa/9xJtEXTJSJoQP41s4KhbgUwXlOz+0vB7UqaAi/NbalOfCuLCIolTYX uByfsTdhzcrmWMiR3kUgH8xIwqXr3yXPIGkxidDGFxN4GsiTZeOgSJOmbj6WraAeyAxx mcaQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=EkQVwxHCafwevtebblZi1Uf5aaO/J9sTTr5wDqe8C54=; b=kR5BtVKH0dYNV+hy9KvCiHM3tbba3D7CZbgIaYqDy9GSlSOnrKSYn/6CeyW2N0omFj Is5zYg+tPYAYLeYhqJQURRjEmDl87PO1im8fjFb3pEUZY1uxWoj3Askb2LVnefE7DfgF YYNvJKlQFo4ASflIizH044+7WXiCDIeJCMfQoI6puWuo6wdyiDUv3EVNCgNpAbL2+3Rz xySX5TugGat5yiYzW41fcCDn+yKtYgLyVqVDoOjXCIDMcKp/J6iIJHlcvpDTFHmi0qHV 7SJGQc0sN6+jQFbIlbExuDmuYcwmsqAxyTGgDI23ZNPsBXs+MKNax8PFtblRZ2gXONp/ CXNA== X-Gm-Message-State: ANoB5plnyFQ84ZRkg4TinEDvH0LswcSdy27kYAGRSMzE9hrt5qg8mvwE YgdbvDPHHxUINKh7uhXpg3N6cynpMnX+mbbu2YY= X-Google-Smtp-Source: AA0mqf6CHhoqwMhfi1SBhl4Ac2TafqxoGhfX1S28dKN58nTjzmhH5srDVA1RxCQSn6DKaB7QrJFr1eb6OCVzpXdVo4Y= X-Received: by 2002:a05:622a:480e:b0:39c:e18e:758f with SMTP id fb14-20020a05622a480e00b0039ce18e758fmr68368153qtb.187.1670486091306; Wed, 07 Dec 2022 23:54:51 -0800 (PST) MIME-Version: 1.0 References: <2779611670484222@mail.yandex.ru> In-Reply-To: <2779611670484222@mail.yandex.ru> From: Pavel Vazharov Date: Thu, 8 Dec 2022 09:54:39 +0200 Message-ID: Subject: Re: How to debug receiving error or "rte_eth_stats.ierrors" ... To: "Ruslan R. Laishev" Cc: "users@dpdk.org" Content-Type: multipart/alternative; boundary="000000000000131c8b05ef4c5a4a" X-BeenThere: users@dpdk.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: DPDK usage discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: users-bounces@dpdk.org --000000000000131c8b05ef4c5a4a Content-Type: text/plain; charset="UTF-8" Few questions: 1. Does the sending NIC support IP and TCP/UDP checksum offloading? I mean, if these flags set? struct rte_eth_dev_info dev_info; rte_eth_dev_info_get(cfg.nic_port_id_, &dev_info); constexpr auto rxcsum = DEV_RX_OFFLOAD_CHECKSUM; constexpr auto l3csum = DEV_TX_OFFLOAD_IPV4_CKSUM; constexpr auto l4csum = DEV_TX_OFFLOAD_TCP_CKSUM | DEV_TX_OFFLOAD_UDP_CKSUM; dev_rx_csum_ = ((dev_info.tx_offload_capa & rxcsum) == rxcsum); dev_tx_csum_l3_ = ((dev_info.tx_offload_capa & l3csum) == l3csum); dev_tx_csum_l4_ = ((dev_info.tx_offload_capa & l4csum) == l4csum); 2. Do you "tell" the sending NIC to do the checksum calculations before sending the packets? I mean, do you do something like this for outgoing packets? if (offl.ip_csum) { pkt->ol_flags |= PKT_TX_IP_CKSUM | PKT_TX_IPV4; pkt->l2_len = RTE_ETHER_HDR_LEN; pkt->l3_len = ih_len; } if (offl.tcp_csum) { pkt->ol_flags |= PKT_TX_TCP_CKSUM; pkt->l2_len = RTE_ETHER_HDR_LEN; pkt->l3_len = ih_len; } if (offl.udp_csum) { pkt->ol_flags |= PKT_TX_UDP_CKSUM; pkt->l2_len = RTE_ETHER_HDR_LEN; pkt->l3_len = ih_len; } 3. Is the receiving side also a DPDK application? If it is, and if the NIC there supports checksum offloading you can check the flags of the received packets to see if the receiving NIC has detected checksum errors. pkt->ol_flags & (PKT_RX_IP_CKSUM_BAD | PKT_RX_L4_CKSUM_BAD) Hope some of the above helps. On Thu, Dec 8, 2022 at 9:36 AM Ruslan R. Laishev wrote: > Hello ! > > I wrote too small apps to send and receive ethernet/ip/udp > frame/packet/dg, so on received side I see next situation: > number of in errors is equally a number of received packets. The test > packet I made manually, set offloads IP/UDP checkusm. > Is there what I'm need to check additionally ? > > --000000000000131c8b05ef4c5a4a Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: base64 PGRpdiBkaXI9Imx0ciI+PGRpdj48ZGl2PjxkaXY+PGRpdj5GZXcgcXVlc3Rpb25zOjxicj48L2Rp dj4xLiBEb2VzIHRoZSBzZW5kaW5nIE5JQyBzdXBwb3J0IElQIGFuZCBUQ1AvVURQIGNoZWNrc3Vt IG9mZmxvYWRpbmc/IEkgbWVhbiwgaWYgdGhlc2UgZmxhZ3Mgc2V0Pzxicj7CoCDCoCBzdHJ1Y3Qg cnRlX2V0aF9kZXZfaW5mbyBkZXZfaW5mbzsgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAg wqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgPGJyPsKgIMKgIHJ0ZV9ldGhfZGV2X2lu Zm9fZ2V0KGNmZy5uaWNfcG9ydF9pZF8sICZhbXA7ZGV2X2luZm8pOzxicj7CoCDCoCBjb25zdGV4 cHIgYXV0byByeGNzdW0gPSBERVZfUlhfT0ZGTE9BRF9DSEVDS1NVTTsgwqAgwqAgwqAgwqAgwqAg wqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqA8YnI+wqAgwqAgY29uc3RleHByIGF1dG8gbDNjc3Vt ID0gREVWX1RYX09GRkxPQURfSVBWNF9DS1NVTTsgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAg wqAgwqAgwqAgwqA8YnI+wqAgwqAgY29uc3RleHByIGF1dG8gbDRjc3VtID0gREVWX1RYX09GRkxP QURfVENQX0NLU1VNIHwgREVWX1RYX09GRkxPQURfVURQX0NLU1VNO8KgIMKgIMKgIMKgIMKgIMKg IMKgIMKgIMKgIDxicj7CoCDCoCBkZXZfcnhfY3N1bV8gwqAgwqAgwqAgwqAgwqA9ICgoZGV2X2lu Zm8udHhfb2ZmbG9hZF9jYXBhICZhbXA7IHJ4Y3N1bSkgPT0gcnhjc3VtKTsgwqAgwqA8YnI+wqAg wqAgZGV2X3R4X2NzdW1fbDNfIMKgIMKgIMKgID0gKChkZXZfaW5mby50eF9vZmZsb2FkX2NhcGEg JmFtcDsgbDNjc3VtKSA9PSBsM2NzdW0pOyDCoCDCoDxicj7CoCDCoCBkZXZfdHhfY3N1bV9sNF8g wqAgwqAgwqAgPSAoKGRldl9pbmZvLnR4X29mZmxvYWRfY2FwYSAmYW1wOyBsNGNzdW0pID09IGw0 Y3N1bSk7PGJyPjxicj48L2Rpdj4yLiBEbyB5b3UgJnF1b3Q7dGVsbCZxdW90OyB0aGUgc2VuZGlu ZyBOSUMgdG8gZG8gdGhlIGNoZWNrc3VtIGNhbGN1bGF0aW9ucyBiZWZvcmUgc2VuZGluZyB0aGUg cGFja2V0cz8gSSBtZWFuLCBkbyB5b3UgZG8gc29tZXRoaW5nIGxpa2UgdGhpcyBmb3Igb3V0Z29p bmcgcGFja2V0cz88YnI+wqAgwqAgaWYgKG9mZmwuaXBfY3N1bSkgeyDCoCDCoCDCoCDCoCDCoCDC oCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDC oCDCoCDCoCDCoCA8YnI+wqAgwqAgwqAgwqAgcGt0LSZndDtvbF9mbGFncyB8PSBQS1RfVFhfSVBf Q0tTVU0gfCBQS1RfVFhfSVBWNDsgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAg PGJyPsKgIMKgIMKgIMKgIHBrdC0mZ3Q7bDJfbGVuID0gUlRFX0VUSEVSX0hEUl9MRU47IMKgIMKg IMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgPGJy PsKgIMKgIMKgIMKgIHBrdC0mZ3Q7bDNfbGVuID0gaWhfbGVuOyDCoCDCoCDCoCDCoCDCoCDCoCDC oCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCA8 YnI+wqAgwqAgfSDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDC oCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDC oCDCoCDCoCA8YnI+wqAgwqAgaWYgKG9mZmwudGNwX2NzdW0pIHsgwqAgwqAgwqAgwqAgwqAgwqAg wqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAg wqAgwqAgwqA8YnI+wqAgwqAgwqAgwqAgcGt0LSZndDtvbF9mbGFncyB8PSBQS1RfVFhfVENQX0NL U1VNOyDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDC oCDCoDxicj7CoCDCoCDCoCDCoCBwa3QtJmd0O2wyX2xlbiA9IFJURV9FVEhFUl9IRFJfTEVOOyDC oCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDC oDxicj7CoCDCoCDCoCDCoCBwa3QtJmd0O2wzX2xlbiA9IGloX2xlbjsgwqAgwqAgwqAgwqAgwqAg wqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAg wqAgPGJyPsKgIMKgIH0gwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAg wqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAg wqAgwqAgwqAgwqAgPGJyPsKgIMKgIGlmIChvZmZsLnVkcF9jc3VtKSB7IMKgIMKgIMKgIMKgIMKg IMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKg IMKgIMKgIMKgIMKgPGJyPsKgIMKgIMKgIMKgIHBrdC0mZ3Q7b2xfZmxhZ3MgfD0gUEtUX1RYX1VE UF9DS1NVTTsgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAg wqAgwqAgwqA8YnI+wqAgwqAgwqAgwqAgcGt0LSZndDtsMl9sZW4gPSBSVEVfRVRIRVJfSERSX0xF TjsgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAg wqAgwqA8YnI+wqAgwqAgwqAgwqAgcGt0LSZndDtsM19sZW4gPSBpaF9sZW47IMKgIMKgIMKgIMKg IMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKg IMKgIMKgIDxicj7CoCDCoCB9IDxicj48YnI+PC9kaXY+My4gSXMgdGhlIHJlY2VpdmluZyBzaWRl IGFsc28gYSBEUERLIGFwcGxpY2F0aW9uPyBJZiBpdCBpcywgYW5kIGlmIHRoZSBOSUMgdGhlcmUg c3VwcG9ydHMgY2hlY2tzdW0gb2ZmbG9hZGluZyB5b3UgY2FuIGNoZWNrIHRoZSBmbGFncyBvZiB0 aGUgcmVjZWl2ZWQgcGFja2V0cyB0byBzZWUgaWYgdGhlIHJlY2VpdmluZyBOSUMgaGFzIGRldGVj dGVkIGNoZWNrc3VtIGVycm9ycy48YnI+cGt0LSZndDtvbF9mbGFncyAmYW1wOyAoUEtUX1JYX0lQ X0NLU1VNX0JBRCB8IFBLVF9SWF9MNF9DS1NVTV9CQUQpPGJyPjxicj48L2Rpdj48ZGl2PkhvcGUg c29tZSBvZiB0aGUgYWJvdmUgaGVscHMuPGJyPjwvZGl2PjwvZGl2Pjxicj48ZGl2IGNsYXNzPSJn bWFpbF9xdW90ZSI+PGRpdiBkaXI9Imx0ciIgY2xhc3M9ImdtYWlsX2F0dHIiPk9uIFRodSwgRGVj IDgsIDIwMjIgYXQgOTozNiBBTSBSdXNsYW4gUi4gTGFpc2hldiAmbHQ7PGEgaHJlZj0ibWFpbHRv OnphdG9yQHlhbmRleC5ydSI+emF0b3JAeWFuZGV4LnJ1PC9hPiZndDsgd3JvdGU6PGJyPjwvZGl2 PjxibG9ja3F1b3RlIGNsYXNzPSJnbWFpbF9xdW90ZSIgc3R5bGU9Im1hcmdpbjowcHggMHB4IDBw eCAwLjhleDtib3JkZXItbGVmdDoxcHggc29saWQgcmdiKDIwNCwyMDQsMjA0KTtwYWRkaW5nLWxl ZnQ6MWV4Ij48ZGl2PkhlbGxvICE8L2Rpdj48ZGl2PsKgPC9kaXY+PGRpdj5JIHdyb3RlIHRvbyBz bWFsbCBhcHBzIHRvIHNlbmQgYW5kIHJlY2VpdmUgwqBldGhlcm5ldC9pcC91ZHAgZnJhbWUvcGFj a2V0L2RnLCBzbyBvbiByZWNlaXZlZCBzaWRlIEkgwqBzZWUgbmV4dCBzaXR1YXRpb246PC9kaXY+ PGRpdj5udW1iZXIgb2YgaW4gZXJyb3JzIGlzIGVxdWFsbHkgYSBudW1iZXIgb2YgcmVjZWl2ZWQg cGFja2V0cy4gVGhlIHRlc3QgcGFja2V0IEkgbWFkZSBtYW51YWxseSwgwqBzZXQgb2ZmbG9hZHMg wqBJUC9VRFAgY2hlY2t1c20uPC9kaXY+PGRpdj5JcyB0aGVyZSB3aGF0IEkmIzM5O20gbmVlZCB0 byBjaGVjayBhZGRpdGlvbmFsbHkgPzwvZGl2PjxkaXY+wqA8L2Rpdj4NCjwvYmxvY2txdW90ZT48 L2Rpdj4NCg== --000000000000131c8b05ef4c5a4a--