From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mout.gmx.net (mout.gmx.net [212.227.17.20]) by dpdk.org (Postfix) with ESMTP id ABBE91B106 for ; Wed, 26 Sep 2018 10:25:15 +0200 (CEST) Received: from [192.168.10.135] ([109.90.208.183]) by mail.gmx.com (mrgmx102 [212.227.17.168]) with ESMTPSA (Nemesis) id 0MRSeC-1gBegF1IsK-00ShWm for ; Wed, 26 Sep 2018 10:25:15 +0200 To: "users@dpdk.org" From: Sofia Baran Message-ID: Date: Wed, 26 Sep 2018 10:25:07 +0200 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:52.0) Gecko/20100101 Thunderbird/52.8.0 MIME-Version: 1.0 Content-Language: en-US X-Provags-ID: V03:K1:SBVM6Sxf6jgXuy3MywTwbdAi8gFxpM78lt5LmiWV68MdaaPL/aM BsQUaJjBCQELnHuVrVw6bhlnC0n6i5MULDIaJ0HYbBcyTwviISKhlnf4V60XrJLqPD8wC1g 5ZhpL5n3z1dkt083gulXo+KswmlLsWfPP2oV4dfZIo8r52DI/tyHoyQNwghBuFmKBv7QJH/ ohzw9kPmquXMq7S7P3bNg== X-UI-Out-Filterresults: notjunk:1;V01:K0:J2ugvRNAFzE=:c424pL/OXAfBkyvmhFUuGq kfZrOSewq0xwelyzo2zXsG3WyU6tVNYqjptfCFGxIccV75NlWJsepTm0cwCAMxYi0FK3qsxew OTdOo1CEQ90t0FOrB12zrKWwhJ7aKNhaPiP4YMwgNV/eX8taCWGBG1pPg2fmXOQJ5iLXbcOFX tUASZG0wRHI1LAxGVxBYMwopg9gK2l4xHpTf6rDivRtRnTtyxhj2EysD8GWxCMubCxX1cb3Se Tlwdd3jCwu0StRoxLbQnhu8DDk1dADjCgSlg7WrV47Yln2pLKwd4E/luiTZinHMVgRzBmRVhG BKHqPAvuJ2rLdSs6qE8uSyN0KDNCVuvUDIOtWd4PHSFnocv5eUoWGhQulE3OcQWTre0YszvJ3 ap3f4CxzRRCFiN9bbYKLoKcoqqLSvIuu/+ZC9NxSkNPV6GBU0taMZA+XjN0PVz3hNhNoh8Oad ftKx7DroTUp5vo0sgTw1orkgDuCSdGXyGwYJmyoFiV+aOqXaMHIqeiev/3pYgG32mbgOENPjX IucjNDNa7BrUO9N/LJa69bpxi1r5OGoH9AVcwwroLB8mZl807L7OnYtnP9SVGjzOYJXRaDs/w AQllX8GhSAp7NxOfZdwVsULn8OK8BL7WKsQn2YF6o1Geo9nFTa8wK0olvQ3i4ynYxyu+k2MOS Z0it1Wa9lu591a7WllsNZP4Q+t6/quATpb0RuiODmnLQNgrYPggJPyTisMJtLn+eagInHh11+ rZ7bkvczo5GgL6MpYxdfRA38AEZK0LLpoft7UWC0glEV9jUa8lImYVATX+aZw0urGoxuendir u3YOdV1EbmlUPH0/Pk2KuSeRrIL1TgLKYKIh6XlRZNEHQI9xI0= Content-Type: text/plain; charset=utf-8; format=flowed Content-Transfer-Encoding: 8bit X-Content-Filtered-By: Mailman/MimeDel 2.1.15 Subject: [dpdk-users] order of 'segmented' UDP packets X-BeenThere: users@dpdk.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: DPDK usage discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 26 Sep 2018 08:25:15 -0000 Hi, when creating an UDP packet, I need to use two mbufs - one containing the UDP header (hdr) and another holding the payload (pay): struct rte_mbuf* hdr = rte_pktmbuf_alloc(hdrmp); struct rte_mbuf* pay = rte_pktmbuf_alloc(paymp); // filling ether, IP, UDP header ... ip_hdr->version_ihl = 0x40 | 0x05; // (*) without 0x05 order it ok ... // setting sizes and linkage hdr->data_len   = sizeof(struct ether_hdr) + sizeof(struct ipv4_hdr) + sizeof(struct udp_hdr); pay->data_len   = payloadSize; hdr->pkt_len    = hdr->data_len + pay->data_len; pay->pkt_len    = hdr->pkt_len; hdr->next       = pay; hdr->nb_segs    = 2; When sending plenty of such UDP packets using rte_eth_tx_burst(), all of them were sent correctly, but the sending order seems to be random. When using just a single mbuf for an UDP packet, the sending order is always the order of the packets in the tx array - which is what I expect. Using the header-payload-separation approach and omitting the IP header size info in the ip_hdr field - resulting in a wrong IP packet - the sending order gets ok. I'm using the mlx5 PMD. Could it be some offload mechanisms, influencing the sending order? Maybe someone can help. Thanks and best regards Sofia Baran