List patch comments

GET /api/patches/139641/comments/?format=api
HTTP 200 OK
Allow: GET, HEAD, OPTIONS
Content-Type: application/json
Link: 
<http://patches.dpdk.org/api/patches/139641/comments/?format=api&page=1>; rel="first",
<http://patches.dpdk.org/api/patches/139641/comments/?format=api&page=1>; rel="last"
Vary: Accept
[ { "id": 169618, "web_url": "http://patches.dpdk.org/comment/169618/", "msgid": "<6f7aabcb-2c12-4cfe-ae9d-73b42bfd4977@amd.com>", "list_archive_url": "https://inbox.dpdk.org/dev/6f7aabcb-2c12-4cfe-ae9d-73b42bfd4977@amd.com", "date": "2024-04-23T11:15:27", "subject": "Re: [PATCH] net/af_packet: cache align Rx/Tx structs", "submitter": { "id": 2700, "url": "http://patches.dpdk.org/api/people/2700/?format=api", "name": "Ferruh Yigit", "email": "ferruh.yigit@amd.com" }, "content": "On 4/23/2024 10:08 AM, Mattias Rönnblom wrote:\n> Cache align Rx and Tx queue struct to avoid false sharing.\n> \n> RX struct happens to be 64 bytes on x86_64 already, so cache alignment\n> makes no change there, but it does on 32-bit ISAs.\n> \n> TX struct is 56 bytes on x86_64.\n> \n\nHi Mattias,\n\nNo objection to the patch. Is the improvement theoretical or do you\nmeasure any improvement practically, if so how much is the improvement?\n\n> Both structs keep counters, and in the RX case they are updated even\n> for empty polls.\n> \n\nDo you think does it help if move 'rx_pkts' & 'rx_bytes' update within\nthe loop?\n\n> Signed-off-by: Mattias Rönnblom <mattias.ronnblom@ericsson.com>\n> ---\n> drivers/net/af_packet/rte_eth_af_packet.c | 5 +++--\n> 1 file changed, 3 insertions(+), 2 deletions(-)\n> \n> diff --git a/drivers/net/af_packet/rte_eth_af_packet.c b/drivers/net/af_packet/rte_eth_af_packet.c\n> index 397a32db58..28aeb7d08e 100644\n> --- a/drivers/net/af_packet/rte_eth_af_packet.c\n> +++ b/drivers/net/af_packet/rte_eth_af_packet.c\n> @@ -6,6 +6,7 @@\n> * All rights reserved.\n> */\n> \n> +#include <rte_common.h>\n> #include <rte_string_fns.h>\n> #include <rte_mbuf.h>\n> #include <ethdev_driver.h>\n> @@ -53,7 +54,7 @@ struct pkt_rx_queue {\n> \n> \tvolatile unsigned long rx_pkts;\n> \tvolatile unsigned long rx_bytes;\n> -};\n> +} __rte_cache_aligned;\n> \n\nLatest location for '__rte_cache_aligned' tag is at the beginning of the\nstruct [1], so something like:\n`struct __rte_cache_aligned pkt_rx_queue {`\n\n[1]\nhttps://patchwork.dpdk.org/project/dpdk/list/?series=31746&state=%2A&archive=both", "headers": { "Return-Path": "<dev-bounces@dpdk.org>", "X-Original-To": "patchwork@inbox.dpdk.org", "Delivered-To": "patchwork@inbox.dpdk.org", "Received": [ "from mails.dpdk.org (mails.dpdk.org [217.70.189.124])\n\tby inbox.dpdk.org (Postfix) with ESMTP id E5A8D43EE9;\n\tTue, 23 Apr 2024 13:15:38 +0200 (CEST)", "from mails.dpdk.org (localhost [127.0.0.1])\n\tby mails.dpdk.org (Postfix) with ESMTP id B6BB040E54;\n\tTue, 23 Apr 2024 13:15:38 +0200 (CEST)", "from NAM12-MW2-obe.outbound.protection.outlook.com\n (mail-mw2nam12on2078.outbound.protection.outlook.com [40.107.244.78])\n by mails.dpdk.org (Postfix) with ESMTP id B204F402AB\n for <dev@dpdk.org>; Tue, 23 Apr 2024 13:15:36 +0200 (CEST)", "from CH2PR12MB4294.namprd12.prod.outlook.com (2603:10b6:610:a9::11)\n by CY8PR12MB7682.namprd12.prod.outlook.com (2603:10b6:930:85::15)\n with Microsoft SMTP Server (version=TLS1_2,\n cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7472.44; Tue, 23 Apr\n 2024 11:15:34 +0000", "from CH2PR12MB4294.namprd12.prod.outlook.com\n ([fe80::282f:29d3:cac1:cde3]) by CH2PR12MB4294.namprd12.prod.outlook.com\n ([fe80::282f:29d3:cac1:cde3%7]) with mapi id 15.20.7472.044; Tue, 23 Apr 2024\n 11:15:31 +0000" ], "ARC-Seal": "i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;\n b=BwMvUcgjwxMrLppKA+Ww6Ie+9W+/CRqMbbfX/3H70RKrSLhTRcJMTr+p4kXvEXruUewWMvn7rxTe5EMXXMk/nj9mg+KCpcJhCa6YiETGvPVFr32iBU+uNNBEc4c0AXJAUiinxoLMNP+ME1mCzrL/C2tcsywqlDKffjVlmIxIsPmPRaMVUxQRd0XXWdb+paLdFLvHVoN8B8tdJT2Y0G5Yg30odUM5QTqRD6nM+XMv3k7//boyp9Bht76AZDgSE53AvR/0sBG2pU5XSZsVxcJn7MHSHBsKtKbfsaotKzC0g+Xb4RTgN/TgHzchBoL/wVPeSBSnJzFfGoCtQGhjeULEmA==", "ARC-Message-Signature": "i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;\n s=arcselector9901;\n h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;\n bh=AYdJTbmuBxcBGd21eS6tuKAyOeXfCi/nqTnx4pkmGu8=;\n b=Nzq0fgc3zOU7p0TyVmzg6g7dAvrfVAn4d+LLBbbJ1EX+QryHeg3MJs9nMTaVDB5hYtJpYhJvLzFjLFyQ3psZshHxjewPnTsx0YIPezMXzZSnuR3FA5DEgN6vXCbvIbr+3wfRm8g0H2E6eGnDlfXpYU2bA1T7AnsbWioF2lnb5xEp50DLous/gF48VqvfrjZR/V7m2AhG/l85zGue5AqR8DcSpjkfn1amQuXYWWmOZQkgGjtLvi5juIxJXKk+Dp/bxx522vRob6pIRpdbWxO5/vtm9iu1eqc4yDidDJq/a7mhlak/4mCqc9+5iP6OI2j1QeSSvkh7ZmOOjSIwB1qrVg==", "ARC-Authentication-Results": "i=1; mx.microsoft.com 1; spf=pass\n smtp.mailfrom=amd.com; dmarc=pass action=none header.from=amd.com; dkim=pass\n header.d=amd.com; arc=none", "DKIM-Signature": "v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1;\n h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;\n bh=AYdJTbmuBxcBGd21eS6tuKAyOeXfCi/nqTnx4pkmGu8=;\n b=S8EabPGWtyBJ+jVHtwXyAuPo/x2gNIyReTpFF/3QmgM2A1rjOewRb55clXuXaDGcICR3j0oQvflxYmrhtMhDVwJTic7PjMrWmeZtrPfM7Ps3urDdbpvTUnNiX3tj4WLt33ITT8RzMvaRfTxufjwOVcatF/m2nQMkkG5pUo6QZ4c=", "Authentication-Results": "dkim=none (message not signed)\n header.d=none;dmarc=none action=none header.from=amd.com;", "Message-ID": "<6f7aabcb-2c12-4cfe-ae9d-73b42bfd4977@amd.com>", "Date": "Tue, 23 Apr 2024 12:15:27 +0100", "User-Agent": "Mozilla Thunderbird", "Subject": "Re: [PATCH] net/af_packet: cache align Rx/Tx structs", "To": "=?utf-8?q?Mattias_R=C3=B6nnblom?= <mattias.ronnblom@ericsson.com>,\n \"John W . Linville\" <linville@tuxdriver.com>", "Cc": "dev@dpdk.org, hofors@lysator.liu.se,\n Tyler Retzlaff <roretzla@linux.microsoft.com>", "References": "<20240423090813.94110-1-mattias.ronnblom@ericsson.com>", "Content-Language": "en-US", "From": "Ferruh Yigit <ferruh.yigit@amd.com>", "Autocrypt": "addr=ferruh.yigit@amd.com; keydata=\n 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 8Zk=", "In-Reply-To": "<20240423090813.94110-1-mattias.ronnblom@ericsson.com>", "Content-Type": "text/plain; charset=UTF-8", "Content-Transfer-Encoding": "8bit", "X-ClientProxiedBy": "LO4P123CA0165.GBRP123.PROD.OUTLOOK.COM\n (2603:10a6:600:18a::8) To CH2PR12MB4294.namprd12.prod.outlook.com\n (2603:10b6:610:a9::11)", "MIME-Version": "1.0", "X-MS-PublicTrafficType": "Email", "X-MS-TrafficTypeDiagnostic": "CH2PR12MB4294:EE_|CY8PR12MB7682:EE_", "X-MS-Office365-Filtering-Correlation-Id": "982a6706-188a-4336-6d92-08dc6386b025", "X-MS-Exchange-SenderADCheck": "1", "X-MS-Exchange-AntiSpam-Relay": "0", "X-Microsoft-Antispam": "BCL:0;", "X-Microsoft-Antispam-Message-Info": "=?utf-8?q?Y24VqE9FW3/tmzh1iAXHLuFPGZD/yPP?=\n\t=?utf-8?q?IVYRW2hOzKgAsl+zfhtJjJOM8wPOQAgl0Stglfo97vwowGyLqBptv7977YYAhdo5H?=\n\t=?utf-8?q?D0Z8gtK4d48xWpyyQeW6+5VFSTfnxd1UG1UIfz1g4hDCvvew9NWcWrRkcvFsWlC6X?=\n\t=?utf-8?q?z1AyAc4pJEE/j+K9o99FALqVxIAsU5erF46Ahwf+lkbK+75upOpezcaZg7XZguWiS?=\n\t=?utf-8?q?4PjlbA95n+NUigLDmeSx9+uWCC657cOl+YcJTdd1Qk9UW3yJkAZ6QOLKj5rSb//4l?=\n\t=?utf-8?q?FfjIrQdhrx227FTwGDeXUZUBBgQwM5FSyaW/IQVSxgfbNjwM5+ELX1rpDPjC4MpWm?=\n\t=?utf-8?q?C5f0tfq+HTCBUIKMBe6UTS0aEdIVnRfJnNR0tNDdxgNGfohML8kQuRDhlB0jhw5ef?=\n\t=?utf-8?q?1olJcv9LcPmLxpNx8qZXfS9oG9JzBX2SudIimWdErwO0lqC2vjHXNdkqlSoyUVUr/?=\n\t=?utf-8?q?xrllgrpWSpXx70ZKg5WjjRTjHQdTCWiQoMtNcfCEn6EGuSw+5U6n7+PDqtX1xvhTz?=\n\t=?utf-8?q?id8xvNS4IXTQ2RWe7fzs36HNPYLLd2lLqpqBs8oSZ7yiG46W/IeZXpa1sCs8bgpWG?=\n\t=?utf-8?q?hvC4aXOiCqQCjoo9wsjwjxcCyuCL5Z5mAxc8sMCRU1T/ciOqSikW5mUpCKHathQfM?=\n\t=?utf-8?q?oJJ+twP3wgLkTcs/htRfGvRsyt+fSDPqI3OvgM8XOjvqK7hVZvh0VvUlUUs11sTSr?=\n\t=?utf-8?q?3kuryvB+vLShDKH/CYPKBLCwq+Y2sTnfnYBf0tfX+4q7Wz32s/rM/fYJP3C0TAS3Z?=\n\t=?utf-8?q?M+rQffYDyf7Z9zBTebhb/Z+ahAqb1l/6HmeLiBAq4YKKnL/NW2vySqsiq8LIHiOA8?=\n\t=?utf-8?q?WZSSYVEAzG3N3CWRgmAYOy+jKW55OEQcU0aaBpcdFPPJkigAWKW1lTRnsW44zZvDK?=\n\t=?utf-8?q?iNe6d4IVj/OoVavzCtLf4OqI3nWicbLwd2S/A+Rncbl5Zx6C7iC8zR8ZZRDaL1zi9?=\n\t=?utf-8?q?cyHPN4Fqa/enu033tBuPrvZLOsN7F6hcwZqRgJY/Sj6fmVqQAcpEYn8BznlAVEnLY?=\n\t=?utf-8?q?1cOnY590AxVSLVwrTqqsw/CMph3AdAKQA4oVJexI7Ie/2SqB/2Y3hIgxiog0U3sAD?=\n\t=?utf-8?q?uneBKDN3KKjGU4K4MBFv7AKa0kVHrmrwNGPaEVBtkh3WFdpu534ql1V7AgjNThDY9?=\n\t=?utf-8?q?nPlFQedAzhJWMkpUuQ75oTuk0O7GvyZ3viBRwLAIMWGrNvuCv4RxzQawe0hL17dPk?=\n\t=?utf-8?q?SdgMgti5QUecwAU8XwjdoJTS+Hd9r4F7Hjag=3D=3D?=", "X-Forefront-Antispam-Report": "CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:;\n IPV:NLI; SFV:NSPM; H:CH2PR12MB4294.namprd12.prod.outlook.com; PTR:; CAT:NONE;\n SFS:(13230031)(1800799015)(376005)(366007); DIR:OUT; SFP:1101;", "X-MS-Exchange-AntiSpam-MessageData-ChunkCount": "1", "X-MS-Exchange-AntiSpam-MessageData-0": "=?utf-8?q?MCQXIn/wbHkUYuLFW2CoDHF9+z3/?=\n\t=?utf-8?q?ImLYRlY4Sq7s14GUTP9scbJ+86SV8iUXXcTFVJUaVUo8PYp5W6DEPLulHk6Z+DjZR?=\n\t=?utf-8?q?O+ve4Rlg7O/kvLxAOBWnC7nOqrU/8w+b4zvbb/tI4pktMdyqVq62+30+UE0IC9bAu?=\n\t=?utf-8?q?+gkSjbIN1+e6gYNKbcf48OF+VJ1Kutk1XKVb1RO+uH5gYTQEJ5Ktx5aSFjppn6Ajn?=\n\t=?utf-8?q?vNvzxE7iZCg/WjtT1+/Bsm/4FHs/0i8SIyTKaanbf18JNaPQpdKQ4DSvfFABR0t07?=\n\t=?utf-8?q?irGfIG1kamWfQUxrbB8V9yBZI8v8e9W4Be2u2K8aapt9v5moYuBaks5S21hVBJThy?=\n\t=?utf-8?q?RSp0k1gRB5OQJV8Qzhfz/bBHzQdN7QajCeR8r3vR1SdDGJYzLs1rmGeGp6BTzacFl?=\n\t=?utf-8?q?mjLQEri7SODOAKdJjnP3In0VhgRkodb8tBvjGtXNkZuKVqCVqWc0UGu+YRz0kpP/C?=\n\t=?utf-8?q?+29FiqzGmvHCJEMpb9SrzI/cR2lD1Rrh2Az4DhgowGDsFCbFBqY2vuU8WnuHDecSx?=\n\t=?utf-8?q?0lz9Z5uLmqFhT6C6ndLRT4tDCDmGG3WppVj4L4AgeHF8aNyogiH1njn/0OGj6Qk0w?=\n\t=?utf-8?q?Qrx0Hpz0gfqp7vt5FrSs0+kdee2t3osC5SehW2PYQMq1lbLI7e7DO+RF8S+28Sa4V?=\n\t=?utf-8?q?PZLeKlKZbBXJuEJjBALoT3ITxToVvnqj5ILm1KeKpixPzU5kTaWd71FZ1f0/ztpVz?=\n\t=?utf-8?q?EZlG80XGXt79IuZWKV9JNMbAYErOWQfn6UnS+DVmZc12N1M3oMommBzLXqKO7guZv?=\n\t=?utf-8?q?kZWr5XeD007JLXYvNQXC5JMsXAWOxW339pQtnQ5G/LA0Q0RzT4TzgRq9/M2twVPZ3?=\n\t=?utf-8?q?67PMXapkIxKACXAMYGMJowD7TjBZcHk6ePIIDvIHFuph/Sh8OYOA+tRmDfVaJFslz?=\n\t=?utf-8?q?d5fOc6PpFgRCJcGjhYvLMqW27G/E2Np1llLIEXKYbf5As1ORtfZL08JkS02OHiLSO?=\n\t=?utf-8?q?VooSLvtffEHsNcYyRYa9iYw4x+V5L3hi+4mNxo11gswb5TSnbe1lJ6EvTgajZ+N8k?=\n\t=?utf-8?q?Z6Hlj4n/bFDuKsHs9XJ3bPSODE5XEKLrbPtiZ6741ss+41U1nAtLeEQmIfs3CdMGZ?=\n\t=?utf-8?q?WeswCtOstu0lWXOjVs2wvIqGvHHo/ehV3E6Y6WHKubuB7JCws+bz6fOsxnW1LJc3X?=\n\t=?utf-8?q?iG3lsaJviWYSZ3WTW+NKZ6PtHtrN1YAhg0xlYeq++Y1G9qyl5ZtiKDG1eG3Op6x8i?=\n\t=?utf-8?q?zmuLMGkNBSLxIu8ffZQULva+fSmvwf/8RX9fosd8BYfHb0VQAtSSsy1IUkzgYw9qg?=\n\t=?utf-8?q?8QP08on01BqdWsKP2DAdZKaA4PN8esMbBDYSIa/2LrCqfNCKpwyX1bd39gej3jfTS?=\n\t=?utf-8?q?QOviqodfvhz3CwHMBJde+gxalb0EnmsHTyrPQQ+mVOwBu4oSaL4MuU6OJbMSws8SC?=\n\t=?utf-8?q?n4szLwJeNTFeY9iEKokCLDpijbIXDtR2OJxjDvfolo75Tg0MS4P4Ej8reWs9H2Dbd?=\n\t=?utf-8?q?0DwOtQwB90r5b+9WLa46bUpALO4lwETaT5QLcUuWZCvvjhPvVhH2RK6PJO8j+XtEq?=\n\t=?utf-8?q?/hEMAjilp6HJ?=", "X-OriginatorOrg": "amd.com", "X-MS-Exchange-CrossTenant-Network-Message-Id": "\n 982a6706-188a-4336-6d92-08dc6386b025", "X-MS-Exchange-CrossTenant-AuthSource": "CH2PR12MB4294.namprd12.prod.outlook.com", "X-MS-Exchange-CrossTenant-AuthAs": "Internal", "X-MS-Exchange-CrossTenant-OriginalArrivalTime": "23 Apr 2024 11:15:31.3440 (UTC)", "X-MS-Exchange-CrossTenant-FromEntityHeader": "Hosted", "X-MS-Exchange-CrossTenant-Id": "3dd8961f-e488-4e60-8e11-a82d994e183d", "X-MS-Exchange-CrossTenant-MailboxType": "HOSTED", "X-MS-Exchange-CrossTenant-UserPrincipalName": "\n /63hfF9pDwztCu7OCLyzTmN4gS7aKcqCGVC+XkFuW5hov/+YTpUih9CzvVExCrUx", "X-MS-Exchange-Transport-CrossTenantHeadersStamped": "CY8PR12MB7682", "X-BeenThere": "dev@dpdk.org", "X-Mailman-Version": "2.1.29", "Precedence": "list", "List-Id": "DPDK patches and discussions <dev.dpdk.org>", "List-Unsubscribe": "<https://mails.dpdk.org/options/dev>,\n <mailto:dev-request@dpdk.org?subject=unsubscribe>", "List-Archive": "<http://mails.dpdk.org/archives/dev/>", "List-Post": "<mailto:dev@dpdk.org>", "List-Help": "<mailto:dev-request@dpdk.org?subject=help>", "List-Subscribe": "<https://mails.dpdk.org/listinfo/dev>,\n <mailto:dev-request@dpdk.org?subject=subscribe>", "Errors-To": "dev-bounces@dpdk.org" }, "addressed": null }, { "id": 169626, "web_url": "http://patches.dpdk.org/comment/169626/", "msgid": "<63dbb564-61f6-4d9f-9c13-4a21f5e97dc9@lysator.liu.se>", "list_archive_url": "https://inbox.dpdk.org/dev/63dbb564-61f6-4d9f-9c13-4a21f5e97dc9@lysator.liu.se", "date": "2024-04-23T20:56:51", "subject": "Re: [PATCH] net/af_packet: cache align Rx/Tx structs", "submitter": { "id": 906, "url": "http://patches.dpdk.org/api/people/906/?format=api", "name": "Mattias Rönnblom", "email": "hofors@lysator.liu.se" }, "content": "On 2024-04-23 13:15, Ferruh Yigit wrote:\n> On 4/23/2024 10:08 AM, Mattias Rönnblom wrote:\n>> Cache align Rx and Tx queue struct to avoid false sharing.\n>>\n>> RX struct happens to be 64 bytes on x86_64 already, so cache alignment\n>> makes no change there, but it does on 32-bit ISAs.\n>>\n>> TX struct is 56 bytes on x86_64.\n>>\n> \n> Hi Mattias,\n> \n> No objection to the patch. Is the improvement theoretical or do you\n> measure any improvement practically, if so how much is the improvement?\n> \n\nI didn't run any benchmarks.\n\nTwo cores storing to a (falsely) shared cache line on a per-packet basis \nis going to be very expensive, at least for \"light touch\" applications.\n\n>> Both structs keep counters, and in the RX case they are updated even\n>> for empty polls.\n>>\n> \n> Do you think does it help if move 'rx_pkts' & 'rx_bytes' update within\n> the loop?\n> \n\nNo, why? Wouldn't that be worse? Especially since rx_pkts and rx_bytes \nare declared volatile, so you are forcing a load-modify-store cycle for \nevery increment.\n\nI would drop \"volatile\", or replace it with an atomic (although *not* \nuse an atomic add for incrementing, but rather atomic load + <n> \nnon-atomic adds + atomic store).\n\n>> Signed-off-by: Mattias Rönnblom <mattias.ronnblom@ericsson.com>\n>> ---\n>> drivers/net/af_packet/rte_eth_af_packet.c | 5 +++--\n>> 1 file changed, 3 insertions(+), 2 deletions(-)\n>>\n>> diff --git a/drivers/net/af_packet/rte_eth_af_packet.c b/drivers/net/af_packet/rte_eth_af_packet.c\n>> index 397a32db58..28aeb7d08e 100644\n>> --- a/drivers/net/af_packet/rte_eth_af_packet.c\n>> +++ b/drivers/net/af_packet/rte_eth_af_packet.c\n>> @@ -6,6 +6,7 @@\n>> * All rights reserved.\n>> */\n>> \n>> +#include <rte_common.h>\n>> #include <rte_string_fns.h>\n>> #include <rte_mbuf.h>\n>> #include <ethdev_driver.h>\n>> @@ -53,7 +54,7 @@ struct pkt_rx_queue {\n>> \n>> \tvolatile unsigned long rx_pkts;\n>> \tvolatile unsigned long rx_bytes;\n>> -};\n>> +} __rte_cache_aligned;\n>> \n> \n> Latest location for '__rte_cache_aligned' tag is at the beginning of the\n> struct [1], so something like:\n> `struct __rte_cache_aligned pkt_rx_queue {`\n> \n> [1]\n> https://patchwork.dpdk.org/project/dpdk/list/?series=31746&state=%2A&archive=both", "headers": { "Return-Path": "<dev-bounces@dpdk.org>", "X-Original-To": "patchwork@inbox.dpdk.org", "Delivered-To": "patchwork@inbox.dpdk.org", "Received": [ "from mails.dpdk.org (mails.dpdk.org [217.70.189.124])\n\tby inbox.dpdk.org (Postfix) with ESMTP id 7FDD143EEE;\n\tTue, 23 Apr 2024 22:56:57 +0200 (CEST)", "from mails.dpdk.org (localhost [127.0.0.1])\n\tby mails.dpdk.org (Postfix) with ESMTP id 148D942EE8;\n\tTue, 23 Apr 2024 22:56:57 +0200 (CEST)", "from mail.lysator.liu.se (mail.lysator.liu.se [130.236.254.3])\n by mails.dpdk.org (Postfix) with ESMTP id 2966140272\n for <dev@dpdk.org>; Tue, 23 Apr 2024 22:56:55 +0200 (CEST)", "from mail.lysator.liu.se (localhost [127.0.0.1])\n by mail.lysator.liu.se (Postfix) with ESMTP id 5531A6FEE\n for <dev@dpdk.org>; Tue, 23 Apr 2024 22:56:54 +0200 (CEST)", "by mail.lysator.liu.se (Postfix, from userid 1004)\n id 2EB4B6FED; Tue, 23 Apr 2024 22:56:54 +0200 (CEST)", "from [192.168.1.59] (h-62-63-215-114.A163.priv.bahnhof.se\n [62.63.215.114])\n (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)\n key-exchange X25519 server-signature RSA-PSS (2048 bits) server-digest\n SHA256)\n (No client certificate requested)\n by mail.lysator.liu.se (Postfix) with ESMTPSA id CAD0A7103;\n Tue, 23 Apr 2024 22:56:51 +0200 (CEST)" ], "X-Spam-Checker-Version": "SpamAssassin 4.0.0 (2022-12-13) on\n hermod.lysator.liu.se", "X-Spam-Level": "", "X-Spam-Status": "No, score=-1.3 required=5.0 tests=ALL_TRUSTED,AWL,\n T_SCC_BODY_TEXT_LINE autolearn=disabled version=4.0.0", "X-Spam-Score": "-1.3", "Message-ID": "<63dbb564-61f6-4d9f-9c13-4a21f5e97dc9@lysator.liu.se>", "Date": "Tue, 23 Apr 2024 22:56:51 +0200", "MIME-Version": "1.0", "User-Agent": "Mozilla Thunderbird", "Subject": "Re: [PATCH] net/af_packet: cache align Rx/Tx structs", "To": "Ferruh Yigit <ferruh.yigit@amd.com>,\n =?utf-8?q?Mattias_R=C3=B6nnblom?= <mattias.ronnblom@ericsson.com>,\n \"John W . Linville\" <linville@tuxdriver.com>", "Cc": "dev@dpdk.org, Tyler Retzlaff <roretzla@linux.microsoft.com>", "References": "<20240423090813.94110-1-mattias.ronnblom@ericsson.com>\n <6f7aabcb-2c12-4cfe-ae9d-73b42bfd4977@amd.com>", "Content-Language": "en-US", "From": "=?utf-8?q?Mattias_R=C3=B6nnblom?= <hofors@lysator.liu.se>", "In-Reply-To": "<6f7aabcb-2c12-4cfe-ae9d-73b42bfd4977@amd.com>", "Content-Type": "text/plain; charset=UTF-8; format=flowed", "Content-Transfer-Encoding": "8bit", "X-Virus-Scanned": "ClamAV using ClamSMTP", "X-BeenThere": "dev@dpdk.org", "X-Mailman-Version": "2.1.29", "Precedence": "list", "List-Id": "DPDK patches and discussions <dev.dpdk.org>", "List-Unsubscribe": "<https://mails.dpdk.org/options/dev>,\n <mailto:dev-request@dpdk.org?subject=unsubscribe>", "List-Archive": "<http://mails.dpdk.org/archives/dev/>", "List-Post": "<mailto:dev@dpdk.org>", "List-Help": "<mailto:dev-request@dpdk.org?subject=help>", "List-Subscribe": "<https://mails.dpdk.org/listinfo/dev>,\n <mailto:dev-request@dpdk.org?subject=subscribe>", "Errors-To": "dev-bounces@dpdk.org" }, "addressed": null }, { "id": 169628, "web_url": "http://patches.dpdk.org/comment/169628/", "msgid": "<4E55A056-C269-4DEA-B702-1979BF66E574@arm.com>", "list_archive_url": "https://inbox.dpdk.org/dev/4E55A056-C269-4DEA-B702-1979BF66E574@arm.com", "date": "2024-04-24T00:27:37", "subject": "Re: [PATCH] net/af_packet: cache align Rx/Tx structs", "submitter": { "id": 1045, "url": "http://patches.dpdk.org/api/people/1045/?format=api", "name": "Honnappa Nagarahalli", "email": "honnappa.nagarahalli@arm.com" }, "content": "> On Apr 23, 2024, at 3:56 PM, Mattias Rönnblom <hofors@lysator.liu.se> wrote:\n> \n> On 2024-04-23 13:15, Ferruh Yigit wrote:\n>> On 4/23/2024 10:08 AM, Mattias Rönnblom wrote:\n>>> Cache align Rx and Tx queue struct to avoid false sharing.\n>>> \n>>> RX struct happens to be 64 bytes on x86_64 already, so cache alignment\n>>> makes no change there, but it does on 32-bit ISAs.\n>>> \n>>> TX struct is 56 bytes on x86_64.\n>>> \n>> Hi Mattias,\n>> No objection to the patch. Is the improvement theoretical or do you\n>> measure any improvement practically, if so how much is the improvement?\n> \n> I didn't run any benchmarks.\n> \n> Two cores storing to a (falsely) shared cache line on a per-packet basis is going to be very expensive, at least for \"light touch\" applications.\n> \n>>> Both structs keep counters, and in the RX case they are updated even\n>>> for empty polls.\n>>> \n>> Do you think does it help if move 'rx_pkts' & 'rx_bytes' update within\n>> the loop?\n> \n> No, why? Wouldn't that be worse? Especially since rx_pkts and rx_bytes are declared volatile, so you are forcing a load-modify-store cycle for every increment.\n> \n> I would drop \"volatile\", or replace it with an atomic (although *not* use an atomic add for incrementing, but rather atomic load + <n> non-atomic adds + atomic store).\n(Slightly unrelated discussion)\nDoes the atomic load + increment + atomic store help in a non-contended case like this? Some platforms have optimizations for atomic-increments as well which would be missed.\n\n> \n>>> Signed-off-by: Mattias Rönnblom <mattias.ronnblom@ericsson.com>\n>>> ---\n>>> drivers/net/af_packet/rte_eth_af_packet.c | 5 +++--\n>>> 1 file changed, 3 insertions(+), 2 deletions(-)\n>>> \n>>> diff --git a/drivers/net/af_packet/rte_eth_af_packet.c b/drivers/net/af_packet/rte_eth_af_packet.c\n>>> index 397a32db58..28aeb7d08e 100644\n>>> --- a/drivers/net/af_packet/rte_eth_af_packet.c\n>>> +++ b/drivers/net/af_packet/rte_eth_af_packet.c\n>>> @@ -6,6 +6,7 @@\n>>> * All rights reserved.\n>>> */\n>>> +#include <rte_common.h>\n>>> #include <rte_string_fns.h>\n>>> #include <rte_mbuf.h>\n>>> #include <ethdev_driver.h>\n>>> @@ -53,7 +54,7 @@ struct pkt_rx_queue {\n>>> volatile unsigned long rx_pkts;\n>>> volatile unsigned long rx_bytes;\n>>> -};\n>>> +} __rte_cache_aligned;\n>>> \n>> Latest location for '__rte_cache_aligned' tag is at the beginning of the\n>> struct [1], so something like:\n>> `struct __rte_cache_aligned pkt_rx_queue {`\n>> [1]\n>> https://patchwork.dpdk.org/project/dpdk/list/?series=31746&state=%2A&archive=both", "headers": { "Return-Path": "<dev-bounces@dpdk.org>", "X-Original-To": "patchwork@inbox.dpdk.org", "Delivered-To": "patchwork@inbox.dpdk.org", "Received": [ "from mails.dpdk.org (mails.dpdk.org [217.70.189.124])\n\tby inbox.dpdk.org (Postfix) with ESMTP id B5D2143EEF;\n\tWed, 24 Apr 2024 02:27:58 +0200 (CEST)", "from mails.dpdk.org (localhost [127.0.0.1])\n\tby mails.dpdk.org (Postfix) with ESMTP id D5954402AD;\n\tWed, 24 Apr 2024 02:27:56 +0200 (CEST)", "from EUR03-AM7-obe.outbound.protection.outlook.com\n (mail-am7eur03on2057.outbound.protection.outlook.com [40.107.105.57])\n by mails.dpdk.org (Postfix) with ESMTP id D7968402A3\n for <dev@dpdk.org>; Wed, 24 Apr 2024 02:27:55 +0200 (CEST)", "from DU6P191CA0012.EURP191.PROD.OUTLOOK.COM (2603:10a6:10:540::12)\n by DU0PR08MB8139.eurprd08.prod.outlook.com (2603:10a6:10:3ee::8) with\n Microsoft SMTP Server (version=TLS1_2,\n cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7472.44; Wed, 24 Apr\n 2024 00:27:53 +0000", "from DU6PEPF0000A7DD.eurprd02.prod.outlook.com\n (2603:10a6:10:540:cafe::97) by DU6P191CA0012.outlook.office365.com\n (2603:10a6:10:540::12) with Microsoft SMTP Server (version=TLS1_2,\n cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7519.22 via Frontend\n Transport; Wed, 24 Apr 2024 00:27:53 +0000", "from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by\n DU6PEPF0000A7DD.mail.protection.outlook.com (10.167.8.37) with\n Microsoft SMTP\n Server (version=TLS1_3, cipher=TLS_AES_256_GCM_SHA384) id 15.20.7519.19 via\n Frontend Transport; Wed, 24 Apr 2024 00:27:53 +0000", "(\"Tessian outbound 8c03561b2da6:v313\");\n Wed, 24 Apr 2024 00:27:52 +0000", "from 3456d5117312.2\n by 64aa7808-outbound-1.mta.getcheckrecipient.com id\n 1EBBC0FF-1FA1-49CD-B9D8-D9B5B815661E.1;\n Wed, 24 Apr 2024 00:27:41 +0000", "from EUR03-AM7-obe.outbound.protection.outlook.com\n by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id\n 3456d5117312.2\n (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384);\n Wed, 24 Apr 2024 00:27:41 +0000", "from DBAPR08MB5814.eurprd08.prod.outlook.com (2603:10a6:10:1b1::6)\n by PAVPR08MB10331.eurprd08.prod.outlook.com (2603:10a6:102:32a::6) with\n Microsoft SMTP Server (version=TLS1_2,\n cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7472.44; Wed, 24 Apr\n 2024 00:27:37 +0000", "from DBAPR08MB5814.eurprd08.prod.outlook.com\n ([fe80::88e9:eb2c:8e90:542e]) by DBAPR08MB5814.eurprd08.prod.outlook.com\n ([fe80::88e9:eb2c:8e90:542e%6]) with mapi id 15.20.7472.037; Wed, 24 Apr 2024\n 00:27:37 +0000" ], "ARC-Seal": [ "i=2; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=pass;\n b=AzzcBAH+8HwWWDvw1BH2pWCPJ6Sp8jHw4nbdcu9kSoVBBISxYpFeEFx/rZnf/Wz7sdOOzJc26SBhRAfYHxgJJrs0WGA4eDe3Q9XommgazP4UpD5Plvqh9YDJZ1WOeC7p9lGEcJ5vz6nvUxpmHTz4hMrtewmU4QOncmTr4neJfRm/EMbbZ5Md8O1ovc7qRFrcFgMHioZAFNFB6RY48A0zsiXgUKggDyCkEx0zO23tP5+YV4w1BJ07/V3bbGAx6A8OzH/2V1I90rO5Jhh9nznCmB6eG56vOmBYAV/tQIMpHA2WnpSmR5Ro8/xVPTbMkfarTt2JL+F/h7yug6tO/Q3eXg==", "i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;\n b=SEqxPzq8mATX0lfXxQJMXhyc1dust8++nrrfUBJKrZEDqsqh/NOh2I0ArT4v84TKcO314690Vuz+ZYcHnpXBymWDtaOJQpX8nc50qt1/NK7fUC0a48b2YYA8+5ZzQH8xVcijRX+JhF5YQ4blQHGpQnJ+5VF7KlHYK5j+2NBLRMGaXI86FzB1TkJY/0eiRBu4UwaZV1NowV5at3T1DQzDEHEYbaanz6s0LHhovs8donUQjFbTB63vRDcKKZw0Ax3o0TaJKwSOiO0MAOylnhR2R/7yDsusEOhBzWNOGze3SaVIzsEb14ZP/NddhUMqu+NWCxvwk1DoR+X45MlkXPozaQ==" ], "ARC-Message-Signature": [ "i=2; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;\n s=arcselector9901;\n h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;\n bh=h1sYOz6bYBHqHKMmXwRcEdlOuHgovjT38cARISotyrA=;\n b=dWoGQhQGPsYizys7iYIVUb3aNU6YYzPbYOyV4TvVj2HVwaCyRfon+NCcH5rWziZpeToEl16bYuVJzELSf9t59hZtjq+7UY0JZipqrPybp+AP4PjVGhMG8NcLqSW+qcbd9JdUahShrJ7Kd4ii4qPDdwVAH5KoX4HtiHqqvIS0T6zAYlCZif1EzmNd/ltr7Ds8GvoJYIgeZqirUENbomJeQYrqU1BaiqYvNzFVL99A7TR37A6Mbd70o5VEcAyQXmxPjrml3j5lNJo58RG9kaoMod4kyydH0JXG8k79xn9X763d1fZiHAIw0HvvhvLJX+xob62cnyEeOOtSyDqhHKjUTQ==", "i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;\n s=arcselector9901;\n h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;\n bh=h1sYOz6bYBHqHKMmXwRcEdlOuHgovjT38cARISotyrA=;\n b=i/sfhpYiSfWQt8kSQER1u+6iNQvTBVGS6lXuoBbxt1AaMURKAY/vRdhKZM/yeC2M/nTNcnW4OnMjTZ7+KTmSdAjC1JS8lFZs1JZvYrZvOsGRO8++zjzsQCG3RlSfAFWPh6NDRobs+77iFhRRczB9rZZ6FeP6a3Br3Kz5JGltjlRwMeGakwYZ1d82zZq+TzkmiBIsFVX0K06dYeB1LOtzJnX2M4ST8GOT/PRSpPPXpCiOYiOZFdVYodzDZ9ne+6kGldY7eC+yPhapohLCMIhcKPYbRGJvRpg1sqyOwRqmEta6tIT+uqpQGTPr2w4Q0CNmxV9fYuMje3vf+00qb0mU5g==" ], "ARC-Authentication-Results": [ "i=2; mx.microsoft.com 1; spf=pass (sender ip is\n 63.35.35.123) smtp.rcpttodomain=dpdk.org smtp.mailfrom=arm.com; dmarc=pass\n (p=none sp=none pct=100) action=none header.from=arm.com; dkim=pass\n (signature was verified) header.d=arm.com; arc=pass (0 oda=1 ltdi=1\n spf=[1,1,smtp.mailfrom=arm.com] dkim=[1,1,header.d=arm.com]\n dmarc=[1,1,header.from=arm.com])", "i=1; mx.microsoft.com 1; spf=pass\n smtp.mailfrom=arm.com; dmarc=pass action=none header.from=arm.com; dkim=pass\n header.d=arm.com; arc=none" ], "DKIM-Signature": [ "v=1; a=rsa-sha256; c=relaxed/relaxed; d=arm.com; s=selector1;\n h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;\n bh=h1sYOz6bYBHqHKMmXwRcEdlOuHgovjT38cARISotyrA=;\n b=AOfOSrNjFF6ncjJYDYuWu5HXvMRSuUtr59GuQazwRAk2eZKAh/xcacSi9lfMGjpwf+hTsXTdN2/8zqCe3c6IVbSI3o/ubKCcNaeEJMYMrPh7Q3J46rdaB1EXJds8dHw0QsoZEJLSfCXAs5xetrai6YaMfgvOs3vsRmvTR92dUks=", "v=1; a=rsa-sha256; c=relaxed/relaxed; d=arm.com; s=selector1;\n h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;\n bh=h1sYOz6bYBHqHKMmXwRcEdlOuHgovjT38cARISotyrA=;\n b=AOfOSrNjFF6ncjJYDYuWu5HXvMRSuUtr59GuQazwRAk2eZKAh/xcacSi9lfMGjpwf+hTsXTdN2/8zqCe3c6IVbSI3o/ubKCcNaeEJMYMrPh7Q3J46rdaB1EXJds8dHw0QsoZEJLSfCXAs5xetrai6YaMfgvOs3vsRmvTR92dUks=" ], "X-MS-Exchange-Authentication-Results": "spf=pass (sender IP is 63.35.35.123)\n smtp.mailfrom=arm.com; dkim=pass (signature was verified)\n header.d=arm.com;dmarc=pass action=none header.from=arm.com;", "Received-SPF": "Pass (protection.outlook.com: domain of arm.com designates\n 63.35.35.123 as permitted sender) receiver=protection.outlook.com;\n client-ip=63.35.35.123; helo=64aa7808-outbound-1.mta.getcheckrecipient.com;\n pr=C", "X-CheckRecipientChecked": "true", "X-CR-MTA-CID": "a463d7e2bbca79e4", "X-CR-MTA-TID": "64aa7808", "From": "Honnappa Nagarahalli <Honnappa.Nagarahalli@arm.com>", "To": "=?utf-8?q?Mattias_R=C3=B6nnblom?= <hofors@lysator.liu.se>", "CC": "Ferruh Yigit <ferruh.yigit@amd.com>,\n =?utf-8?q?Mattias_R=C3=B6nnblom?= <mattias.ronnblom@ericsson.com>,\n \"John W . Linville\" <linville@tuxdriver.com>, \"dev@dpdk.org\" <dev@dpdk.org>,\n Tyler Retzlaff <roretzla@linux.microsoft.com>, nd <nd@arm.com>,\n Honnappa Nagarahalli <Honnappa.Nagarahalli@arm.com>", "Subject": "Re: [PATCH] net/af_packet: cache align Rx/Tx structs", "Thread-Topic": "[PATCH] net/af_packet: cache align Rx/Tx structs", "Thread-Index": "AQHalV9K7VQFlTHgfkSrim2ngefS57F1tFeAgACicYCAADrWAA==", "Date": "Wed, 24 Apr 2024 00:27:37 +0000", "Message-ID": "<4E55A056-C269-4DEA-B702-1979BF66E574@arm.com>", "References": "<20240423090813.94110-1-mattias.ronnblom@ericsson.com>\n <6f7aabcb-2c12-4cfe-ae9d-73b42bfd4977@amd.com>\n <63dbb564-61f6-4d9f-9c13-4a21f5e97dc9@lysator.liu.se>", "In-Reply-To": "<63dbb564-61f6-4d9f-9c13-4a21f5e97dc9@lysator.liu.se>", "Accept-Language": "en-US", "Content-Language": "en-US", "X-MS-Has-Attach": "", "X-MS-TNEF-Correlator": "", "x-mailer": "Apple Mail (2.3774.400.31)", "Authentication-Results-Original": "dkim=none (message not signed)\n header.d=none;dmarc=none action=none header.from=arm.com;", "x-ms-traffictypediagnostic": "\n DBAPR08MB5814:EE_|PAVPR08MB10331:EE_|DU6PEPF0000A7DD:EE_|DU0PR08MB8139:EE_", "X-MS-Office365-Filtering-Correlation-Id": "d9fc7841-ccb6-49e9-d83a-08dc63f56157", "x-checkrecipientrouted": "true", "nodisclaimer": "true", "X-MS-Exchange-SenderADCheck": "1", "X-MS-Exchange-AntiSpam-Relay": "0", "X-Microsoft-Antispam-Untrusted": "BCL:0;", "X-Microsoft-Antispam-Message-Info-Original": "=?utf-8?q?CF6zFvnUGwpYTN4V8X6YP0?=\n\t=?utf-8?q?v2u7TAmIAoWMJjuq6EBmjI+XgTgfIas4AizGRlJ6ktLLPZew4dwY7DNK0F3j0Goao?=\n\t=?utf-8?q?flwKUn952MA+iC+qAq7L8+FZPhK0xtAUMCBH15qYaYX7QJ3QCYr1yhv2Dc+FQ30rN?=\n\t=?utf-8?q?ZnRAIOwNdlFZnx7eEsuYULoA23g2ZH9757cXNGujzVaoOVA3rrjiDyFxOaR42xROu?=\n\t=?utf-8?q?qAGV08nv3fqWMkCnLXAiCSxXekNKNQD9m5oGcr7W3lR6p04yRt9lkDr3IJBR3D5F7?=\n\t=?utf-8?q?dKpWZEZ4BBFVf/g/R876ehyBZ9Z4VWJOxB4YsbqIh/98fmPivE5J+VHFVd7B8C0SJ?=\n\t=?utf-8?q?CWHz0QcvlaWbGjaEtBxUG+n5IZZoZUOSjYY3P6x0am/p9iQ8sE+yIy5U4oXiYrCRG?=\n\t=?utf-8?q?RH1EVv1aF8LTFq0ighlIWnL8Jn3Ruo2IrsrGXHFx6l06+Un+G0UrZXoWTqT1uQ9Qq?=\n\t=?utf-8?q?ZBKGUO7NUnoi1ATJhDTdPQQtv7Dp/e19V0jUOfhmw1M2xeEQ5S6NG828WtTNPGI1Y?=\n\t=?utf-8?q?XZQtUmmUb8ZLFO4XMtVwbd3Ai10qqNu85Ca0tvnAtGTGBSHvcXmkDSbxAh/OYyeib?=\n\t=?utf-8?q?6gNABy8BNerNWxuP+9ay7tsulNmUuXQOFRFhmx57ixlzSjgxq1RPKmpc5nz+Bkzpe?=\n\t=?utf-8?q?/T3o4yuiio/MI+hyF/6w6Ldko+RH8JEaTTo5Um1mT/4dWOMj3NnX9u7l1lNDvVzVz?=\n\t=?utf-8?q?kH1fURNIbQwT7czyH6DtFq2Qhrvr5rmtyGNOnh4B7zS++mhtAoe/POKwg43jkGhfk?=\n\t=?utf-8?q?xjTSS9rar/P1eEXpEsTCBWXyRW+BlmSnUFZoQkldP05rjruum0uJGIvRykYtFnFfK?=\n\t=?utf-8?q?qAhrathJB+thL2eCNyWQwwK7yJ4j7hYc3Q/5nIiEX8yXz6oMX3KABMMQeFQV3ZIPL?=\n\t=?utf-8?q?US+77mH0G+XCBmgiqRsOMjijYOoNgaDWXZ6J94sLB1VxyHYP01eEzvAaElLgcZtsO?=\n\t=?utf-8?q?UZs2OGZX02OE4mg5KkoUjPm99ytsLBKV8PNIY1ycYE3nNczokW3Z8VfDaO/riYNea?=\n\t=?utf-8?q?NBKKSIC4m+FjEyiRPk9Va9D8nTL4PqyoKhMA7eNv1/xoLXnVyJI+d/EyhVJd++NlS?=\n\t=?utf-8?q?j299kPTlNseZJi4vmL5N7DH69+l/7cR++Ezb8QiJ/WGSSDC4PuX72cxyKaKz58TDI?=\n\t=?utf-8?q?Z1SnQTlS71wl7doueaRx6aZ+JL/sqDQncNeW/zvW2NeN5XkPEW1+s1XmoS6G5mjSr?=\n\t=?utf-8?q?U+jmF5RZU0FfB8NKD4+JpcWNgBVf4NtAdhDSu4HkAGCOTzFv32hZ6Lmo7XSczcyMG?=\n\t=?utf-8?q?m0e6SGakMqmdID75xpQaL1Rdn+WKn93E0VxR4TdxY5ag=3D=3D?=", "X-Forefront-Antispam-Report-Untrusted": "CIP:255.255.255.255; CTRY:; LANG:en;\n SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:DBAPR08MB5814.eurprd08.prod.outlook.com;\n PTR:; CAT:NONE; SFS:(13230031)(376005)(366007)(1800799015)(38070700009);\n DIR:OUT; SFP:1101;", "Content-Type": "text/plain; charset=\"utf-8\"", "Content-ID": "<4FD82DDD7FA1CB4A83C128AF0FFDE7BB@eurprd08.prod.outlook.com>", "Content-Transfer-Encoding": "base64", "MIME-Version": "1.0", "X-MS-Exchange-Transport-CrossTenantHeadersStamped": [ "PAVPR08MB10331", "DU0PR08MB8139" ], "Original-Authentication-Results": "dkim=none (message not signed)\n header.d=none;dmarc=none action=none header.from=arm.com;", "X-EOPAttributedMessage": "0", "X-MS-Exchange-Transport-CrossTenantHeadersStripped": "\n DU6PEPF0000A7DD.eurprd02.prod.outlook.com", "X-MS-PublicTrafficType": "Email", "X-MS-Office365-Filtering-Correlation-Id-Prvs": "\n d1218097-0e6f-4a48-57c7-08dc63f557cf", "X-Microsoft-Antispam": "BCL:0;", "X-Microsoft-Antispam-Message-Info": "=?utf-8?q?rTagK2Y95Q4le5eI+QOkAIze3eZx0sG?=\n\t=?utf-8?q?XIPDV9Hcve9xX6EvIl4z3WAuM3sXsLZ4ffRLVYKM9aorxAohIHPlGj2RvbIT9mGQp?=\n\t=?utf-8?q?dtKZ7UzfpDY9d5CgSU0zfPuEzpnRrM9MW3LkjSUeRAjDdYETgTzs0NLmjBOTxdH/o?=\n\t=?utf-8?q?lRD+8z6xAsCNvq3/rTYhwiuqd0qKHtmhRpsQYSKqe6QnA2qiG1gRLNYC1D3Ui5GXo?=\n\t=?utf-8?q?FUBVLcDy+vlgpLdCbx7AFIkAEbz8O8mRKprdN8VaV+iEiK3WdJhPCLen3Ug2kh5mQ?=\n\t=?utf-8?q?EMVsPPMTCkpyCl9NHJpCWFP+nTrLxwYY4jtZ7f8vkMhrN6ya2Ej+iSAg3ENSQvxTr?=\n\t=?utf-8?q?b4JnuORcZPJXEK7X0uP7stDtzFVOkq4o8FnVF2p7fYk6b5lVVOL23RvGfZwygykiS?=\n\t=?utf-8?q?nMcPAI4nmNZXpGr/qRITWGFC74uOn3IKWQmfrzgUqtiL0cGnOErvdtQ0CZ/mCpljM?=\n\t=?utf-8?q?VySrRhobe0e3xb5ZfBuGcymaV9LZL8lvq8OkvEtcT7zxe9QlkMYugrfa2n9ScJoF4?=\n\t=?utf-8?q?OKrHwNCkzsD0100rbZKMiBSamUcoRO4yECu6LtPKZOt9bnmHO87g4sHVGPKaPPEwR?=\n\t=?utf-8?q?0rOLUJPt2zuH/TZY3D8VYmZc0+jtE0SXHHu+1MVqDARj4YHylIoKxAwACgOCQar4X?=\n\t=?utf-8?q?Wjo6pLtuO8/ZysV6Batiytw/V1STjxnh/yD82b1gOX4jmWvzevZ50F/yvelpSRJwb?=\n\t=?utf-8?q?c677nCEGkWzkvUyxH/xVwNJVXgo+thva4xZHRD2iHVarKf9gApX8sluaEuO/apj8x?=\n\t=?utf-8?q?+cp/gKdNnhnKA/LkLy/vQlUHWNqFuPKIi3mkIUAtVjWM5Vgq0grzfm0555PqUJC7H?=\n\t=?utf-8?q?PhcEtK16+tjZwoLCnTZOPtJ+UW8oZVZg53MYKojnXctg9S7TuP0psWPKl2SVXW/wH?=\n\t=?utf-8?q?+a2NaYu/KPaCTi+Hvzbdu1cLMUk0kp8/XAzgVbOhkXa7UOQteEABxXpduKZhNDouM?=\n\t=?utf-8?q?UxoPRGHTKbQgXilqaTsSBYv+xA627RQcXcVkvJMtm4HJLYoPIzE8FIGFtnk+ibLaj?=\n\t=?utf-8?q?YA+FEZwq5RIpLMtZTKz3gpZAUvXdMY4BmVOk8qWIcOkQqlpws6okw0Syo3FzCMWwh?=\n\t=?utf-8?q?ViJJDYeYoXUt/sBa515D8ENxsYDcwjLEl6kWoXHHjPssE10tI0ht5zy9yn44QUYDl?=\n\t=?utf-8?q?byHoTmXyOuOK6+h+FpgSzQGRfJ26ORox53u3+f/ztCym7Ydb30n5zadABrOg5PEeb?=\n\t=?utf-8?q?b02Vx/SFUdIN3SY463iMtA77ruutGrz5Op7QVbDKwc4rC6wn5v511893+enxDub3h?=\n\t=?utf-8?q?JtZYq28dCET8zKJnr0XHQ31NcNMIMCs7AjEHw4oPdwcjk00ttM5UZC0lOY/e+UQG6?=\n\t=?utf-8?q?dSTVR/zE+f5u?=", "X-Forefront-Antispam-Report": "CIP:63.35.35.123; CTRY:IE; LANG:en; SCL:1; SRV:;\n IPV:CAL; SFV:NSPM; H:64aa7808-outbound-1.mta.getcheckrecipient.com;\n PTR:ec2-63-35-35-123.eu-west-1.compute.amazonaws.com; CAT:NONE;\n SFS:(13230031)(376005)(36860700004)(82310400014)(1800799015); DIR:OUT;\n SFP:1101;", "X-OriginatorOrg": "arm.com", "X-MS-Exchange-CrossTenant-OriginalArrivalTime": "24 Apr 2024 00:27:53.1052 (UTC)", "X-MS-Exchange-CrossTenant-Network-Message-Id": "\n d9fc7841-ccb6-49e9-d83a-08dc63f56157", "X-MS-Exchange-CrossTenant-Id": "f34e5979-57d9-4aaa-ad4d-b122a662184d", "X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp": "\n TenantId=f34e5979-57d9-4aaa-ad4d-b122a662184d; Ip=[63.35.35.123];\n Helo=[64aa7808-outbound-1.mta.getcheckrecipient.com]", "X-MS-Exchange-CrossTenant-AuthSource": "\n DU6PEPF0000A7DD.eurprd02.prod.outlook.com", "X-MS-Exchange-CrossTenant-AuthAs": "Anonymous", "X-MS-Exchange-CrossTenant-FromEntityHeader": "HybridOnPrem", "X-BeenThere": "dev@dpdk.org", "X-Mailman-Version": "2.1.29", "Precedence": "list", "List-Id": "DPDK patches and discussions <dev.dpdk.org>", "List-Unsubscribe": "<https://mails.dpdk.org/options/dev>,\n <mailto:dev-request@dpdk.org?subject=unsubscribe>", "List-Archive": "<http://mails.dpdk.org/archives/dev/>", "List-Post": "<mailto:dev@dpdk.org>", "List-Help": "<mailto:dev-request@dpdk.org?subject=help>", "List-Subscribe": "<https://mails.dpdk.org/listinfo/dev>,\n <mailto:dev-request@dpdk.org?subject=subscribe>", "Errors-To": "dev-bounces@dpdk.org" }, "addressed": null }, { "id": 169629, "web_url": "http://patches.dpdk.org/comment/169629/", "msgid": "<1cc4884d-515c-4bb3-90f3-bf0f03205ae7@lysator.liu.se>", "list_archive_url": "https://inbox.dpdk.org/dev/1cc4884d-515c-4bb3-90f3-bf0f03205ae7@lysator.liu.se", "date": "2024-04-24T06:28:45", "subject": "Re: [PATCH] net/af_packet: cache align Rx/Tx structs", "submitter": { "id": 906, "url": "http://patches.dpdk.org/api/people/906/?format=api", "name": "Mattias Rönnblom", "email": "hofors@lysator.liu.se" }, "content": "On 2024-04-24 02:27, Honnappa Nagarahalli wrote:\n> \n> \n>> On Apr 23, 2024, at 3:56 PM, Mattias Rönnblom <hofors@lysator.liu.se> wrote:\n>>\n>> On 2024-04-23 13:15, Ferruh Yigit wrote:\n>>> On 4/23/2024 10:08 AM, Mattias Rönnblom wrote:\n>>>> Cache align Rx and Tx queue struct to avoid false sharing.\n>>>>\n>>>> RX struct happens to be 64 bytes on x86_64 already, so cache alignment\n>>>> makes no change there, but it does on 32-bit ISAs.\n>>>>\n>>>> TX struct is 56 bytes on x86_64.\n>>>>\n>>> Hi Mattias,\n>>> No objection to the patch. Is the improvement theoretical or do you\n>>> measure any improvement practically, if so how much is the improvement?\n>>\n>> I didn't run any benchmarks.\n>>\n>> Two cores storing to a (falsely) shared cache line on a per-packet basis is going to be very expensive, at least for \"light touch\" applications.\n>>\n>>>> Both structs keep counters, and in the RX case they are updated even\n>>>> for empty polls.\n>>>>\n>>> Do you think does it help if move 'rx_pkts' & 'rx_bytes' update within\n>>> the loop?\n>>\n>> No, why? Wouldn't that be worse? Especially since rx_pkts and rx_bytes are declared volatile, so you are forcing a load-modify-store cycle for every increment.\n>>\n>> I would drop \"volatile\", or replace it with an atomic (although *not* use an atomic add for incrementing, but rather atomic load + <n> non-atomic adds + atomic store).\n> (Slightly unrelated discussion)\n> Does the atomic load + increment + atomic store help in a non-contended case like this? Some platforms have optimizations for atomic-increments as well which would be missed.\n> \n\nIs it \"far atomics\" you have in mind? A C11 complaint compiler won't \ngenerate STADD (even for relaxed type ops), since it doesn't fit well \ninto the C11 memory model. In particular, the issue is that STADD isn't \nordered by the instructions generated by C11 fences, from what I understand.\n\nGCC did generate STADD for a while, until this issue was discovered.\n\nOn x86_64, ADD <addr> is generally much faster than LOCK ADD <addr>. No \nwonder, since the latter is a full barrier.\n\nIf I'd worked for ARM I would probably had proposed some API extension \nto DPDK atomics API to allow the use of STADD (through inline \nassembler). One way to integrate it might be to add a new memory model, \nrte_memory_order_unordered or rte_memory_order_jumps_all_fences, where \nloads and stores are totally unordered.\n\nHowever, in this particular case, it's a single-writer scenario, so \nrte_memory_order_kangaroo wouldn't really help, since it would be \nequivalent to rte_memory_order_relaxed on non-far atomics-capable ISAs, \nwhich would be too expensive. In the past I've argued for a \nsingle-writer version of atomic add/sub etc in the DPDK atomics API \n(whatever that is), for convenience and to make the issue/pattern known.\n\n>>\n>>>> Signed-off-by: Mattias Rönnblom <mattias.ronnblom@ericsson.com>\n>>>> ---\n>>>> drivers/net/af_packet/rte_eth_af_packet.c | 5 +++--\n>>>> 1 file changed, 3 insertions(+), 2 deletions(-)\n>>>>\n>>>> diff --git a/drivers/net/af_packet/rte_eth_af_packet.c b/drivers/net/af_packet/rte_eth_af_packet.c\n>>>> index 397a32db58..28aeb7d08e 100644\n>>>> --- a/drivers/net/af_packet/rte_eth_af_packet.c\n>>>> +++ b/drivers/net/af_packet/rte_eth_af_packet.c\n>>>> @@ -6,6 +6,7 @@\n>>>> * All rights reserved.\n>>>> */\n>>>> +#include <rte_common.h>\n>>>> #include <rte_string_fns.h>\n>>>> #include <rte_mbuf.h>\n>>>> #include <ethdev_driver.h>\n>>>> @@ -53,7 +54,7 @@ struct pkt_rx_queue {\n>>>> volatile unsigned long rx_pkts;\n>>>> volatile unsigned long rx_bytes;\n>>>> -};\n>>>> +} __rte_cache_aligned;\n>>>> \n>>> Latest location for '__rte_cache_aligned' tag is at the beginning of the\n>>> struct [1], so something like:\n>>> `struct __rte_cache_aligned pkt_rx_queue {`\n>>> [1]\n>>> https://patchwork.dpdk.org/project/dpdk/list/?series=31746&state=%2A&archive=both\n>", "headers": { "Return-Path": "<dev-bounces@dpdk.org>", "X-Original-To": "patchwork@inbox.dpdk.org", "Delivered-To": "patchwork@inbox.dpdk.org", "Received": [ "from mails.dpdk.org (mails.dpdk.org [217.70.189.124])\n\tby inbox.dpdk.org (Postfix) with ESMTP id 0578643EF4;\n\tWed, 24 Apr 2024 08:28:54 +0200 (CEST)", "from mails.dpdk.org (localhost [127.0.0.1])\n\tby mails.dpdk.org (Postfix) with ESMTP id E5CF6433D5;\n\tWed, 24 Apr 2024 08:28:53 +0200 (CEST)", "from mail.lysator.liu.se (mail.lysator.liu.se [130.236.254.3])\n by mails.dpdk.org (Postfix) with ESMTP id D628E433C0\n for <dev@dpdk.org>; Wed, 24 Apr 2024 08:28:51 +0200 (CEST)", "from mail.lysator.liu.se (localhost [127.0.0.1])\n by mail.lysator.liu.se (Postfix) with ESMTP id A88D68917\n for <dev@dpdk.org>; Wed, 24 Apr 2024 08:28:50 +0200 (CEST)", "by mail.lysator.liu.se (Postfix, from userid 1004)\n id 8BA628916; Wed, 24 Apr 2024 08:28:50 +0200 (CEST)", "from [192.168.1.59] (h-62-63-215-114.A163.priv.bahnhof.se\n [62.63.215.114])\n (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)\n key-exchange X25519 server-signature RSA-PSS (2048 bits) server-digest\n SHA256)\n (No client certificate requested)\n by mail.lysator.liu.se (Postfix) with ESMTPSA id 25B6A88B4;\n Wed, 24 Apr 2024 08:28:46 +0200 (CEST)" ], "X-Spam-Checker-Version": "SpamAssassin 4.0.0 (2022-12-13) on\n hermod.lysator.liu.se", "X-Spam-Level": "", "X-Spam-Status": "No, score=-1.3 required=5.0 tests=ALL_TRUSTED,AWL,\n T_SCC_BODY_TEXT_LINE autolearn=disabled version=4.0.0", "X-Spam-Score": "-1.3", "Message-ID": "<1cc4884d-515c-4bb3-90f3-bf0f03205ae7@lysator.liu.se>", "Date": "Wed, 24 Apr 2024 08:28:45 +0200", "MIME-Version": "1.0", "User-Agent": "Mozilla Thunderbird", "Subject": "Re: [PATCH] net/af_packet: cache align Rx/Tx structs", "To": "Honnappa Nagarahalli <Honnappa.Nagarahalli@arm.com>", "Cc": "Ferruh Yigit <ferruh.yigit@amd.com>,\n =?utf-8?q?Mattias_R=C3=B6nnblom?= <mattias.ronnblom@ericsson.com>,\n \"John W . Linville\" <linville@tuxdriver.com>, \"dev@dpdk.org\" <dev@dpdk.org>,\n Tyler Retzlaff <roretzla@linux.microsoft.com>, nd <nd@arm.com>", "References": "<20240423090813.94110-1-mattias.ronnblom@ericsson.com>\n <6f7aabcb-2c12-4cfe-ae9d-73b42bfd4977@amd.com>\n <63dbb564-61f6-4d9f-9c13-4a21f5e97dc9@lysator.liu.se>\n <4E55A056-C269-4DEA-B702-1979BF66E574@arm.com>", "Content-Language": "en-US", "From": "=?utf-8?q?Mattias_R=C3=B6nnblom?= <hofors@lysator.liu.se>", "In-Reply-To": "<4E55A056-C269-4DEA-B702-1979BF66E574@arm.com>", "Content-Type": "text/plain; charset=UTF-8; format=flowed", "Content-Transfer-Encoding": "8bit", "X-Virus-Scanned": "ClamAV using ClamSMTP", "X-BeenThere": "dev@dpdk.org", "X-Mailman-Version": "2.1.29", "Precedence": "list", "List-Id": "DPDK patches and discussions <dev.dpdk.org>", "List-Unsubscribe": "<https://mails.dpdk.org/options/dev>,\n <mailto:dev-request@dpdk.org?subject=unsubscribe>", "List-Archive": "<http://mails.dpdk.org/archives/dev/>", "List-Post": "<mailto:dev@dpdk.org>", "List-Help": "<mailto:dev-request@dpdk.org?subject=help>", "List-Subscribe": "<https://mails.dpdk.org/listinfo/dev>,\n <mailto:dev-request@dpdk.org?subject=subscribe>", "Errors-To": "dev-bounces@dpdk.org" }, "addressed": null }, { "id": 169631, "web_url": "http://patches.dpdk.org/comment/169631/", "msgid": "<5d2a0887-527a-4948-943c-65f1dfda9328@amd.com>", "list_archive_url": "https://inbox.dpdk.org/dev/5d2a0887-527a-4948-943c-65f1dfda9328@amd.com", "date": "2024-04-24T10:21:52", "subject": "Re: [PATCH] net/af_packet: cache align Rx/Tx structs", "submitter": { "id": 2700, "url": "http://patches.dpdk.org/api/people/2700/?format=api", "name": "Ferruh Yigit", "email": "ferruh.yigit@amd.com" }, "content": "On 4/23/2024 9:56 PM, Mattias Rönnblom wrote:\n> On 2024-04-23 13:15, Ferruh Yigit wrote:\n>> On 4/23/2024 10:08 AM, Mattias Rönnblom wrote:\n>>> Cache align Rx and Tx queue struct to avoid false sharing.\n>>>\n>>> RX struct happens to be 64 bytes on x86_64 already, so cache alignment\n>>> makes no change there, but it does on 32-bit ISAs.\n>>>\n>>> TX struct is 56 bytes on x86_64.\n>>>\n>>\n>> Hi Mattias,\n>>\n>> No objection to the patch. Is the improvement theoretical or do you\n>> measure any improvement practically, if so how much is the improvement?\n>>\n> \n> I didn't run any benchmarks.\n> \n> Two cores storing to a (falsely) shared cache line on a per-packet basis\n> is going to be very expensive, at least for \"light touch\" applications.\n> \n\nack\nI expect for af_packet bottleneck is the kernel side, so I don't expect\nany visible improvement practically, but OK to fix this theoretical issue.\n\n>>> Both structs keep counters, and in the RX case they are updated even\n>>> for empty polls.\n>>>\n>>\n>> Do you think does it help if move 'rx_pkts' & 'rx_bytes' update within\n>> the loop?\n>>\n> \n> No, why? Wouldn't that be worse? Especially since rx_pkts and rx_bytes\n> are declared volatile, so you are forcing a load-modify-store cycle for\n> every increment.\n> \n\nMy intention was to prevent updating stats in empty polls, I thought\nstats will be hot in the cache but won't work with volatile.\n\n\n> I would drop \"volatile\", or replace it with an atomic (although *not*\n> use an atomic add for incrementing, but rather atomic load + <n>\n> non-atomic adds + atomic store).\n> \n\nAs only single core polls from an Rx queue, I assume atomics is required\nonly for stats reset case. And for that case won't we need atomic add?\n\nAnd do you know if there is a performance difference between atomic add\nand keeping volatile qualifier?\n\n\n>>> Signed-off-by: Mattias Rönnblom <mattias.ronnblom@ericsson.com>\n>>> ---\n>>>   drivers/net/af_packet/rte_eth_af_packet.c | 5 +++--\n>>>   1 file changed, 3 insertions(+), 2 deletions(-)\n>>>\n>>> diff --git a/drivers/net/af_packet/rte_eth_af_packet.c\n>>> b/drivers/net/af_packet/rte_eth_af_packet.c\n>>> index 397a32db58..28aeb7d08e 100644\n>>> --- a/drivers/net/af_packet/rte_eth_af_packet.c\n>>> +++ b/drivers/net/af_packet/rte_eth_af_packet.c\n>>> @@ -6,6 +6,7 @@\n>>>    * All rights reserved.\n>>>    */\n>>>   +#include <rte_common.h>\n>>>   #include <rte_string_fns.h>\n>>>   #include <rte_mbuf.h>\n>>>   #include <ethdev_driver.h>\n>>> @@ -53,7 +54,7 @@ struct pkt_rx_queue {\n>>>         volatile unsigned long rx_pkts;\n>>>       volatile unsigned long rx_bytes;\n>>> -};\n>>> +} __rte_cache_aligned;\n>>>   \n>>\n>> Latest location for '__rte_cache_aligned' tag is at the beginning of the\n>> struct [1], so something like:\n>> `struct __rte_cache_aligned pkt_rx_queue {`\n>>\n>> [1]\n>> https://patchwork.dpdk.org/project/dpdk/list/?series=31746&state=%2A&archive=both", "headers": { "Return-Path": "<dev-bounces@dpdk.org>", "X-Original-To": "patchwork@inbox.dpdk.org", "Delivered-To": "patchwork@inbox.dpdk.org", "Received": [ "from mails.dpdk.org (mails.dpdk.org [217.70.189.124])\n\tby inbox.dpdk.org (Postfix) with ESMTP id 0EF2D43EF7;\n\tWed, 24 Apr 2024 12:22:01 +0200 (CEST)", "from mails.dpdk.org (localhost [127.0.0.1])\n\tby mails.dpdk.org (Postfix) with ESMTP id 876A5400D6;\n\tWed, 24 Apr 2024 12:22:00 +0200 (CEST)", "from NAM11-CO1-obe.outbound.protection.outlook.com\n (mail-co1nam11on2071.outbound.protection.outlook.com [40.107.220.71])\n by mails.dpdk.org (Postfix) with ESMTP id F40D140042\n for <dev@dpdk.org>; Wed, 24 Apr 2024 12:21:58 +0200 (CEST)", "from CH2PR12MB4294.namprd12.prod.outlook.com (2603:10b6:610:a9::11)\n by PH7PR12MB5805.namprd12.prod.outlook.com (2603:10b6:510:1d1::13)\n with Microsoft SMTP Server (version=TLS1_2,\n cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7472.44; Wed, 24 Apr\n 2024 10:21:56 +0000", "from CH2PR12MB4294.namprd12.prod.outlook.com\n ([fe80::282f:29d3:cac1:cde3]) by CH2PR12MB4294.namprd12.prod.outlook.com\n ([fe80::282f:29d3:cac1:cde3%7]) with mapi id 15.20.7472.044; Wed, 24 Apr 2024\n 10:21:56 +0000" ], "ARC-Seal": "i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;\n b=hcN+3oICsG9UdM/vHGRdi2zB/rjbrOQHViovQi7io5gyiFra2CqQFnn3HGyGlMrWoQUz4moVKp06XDtWvc/bLGsotm4ZJiOux7ug6T74IUZTh4uLTK9LN5Bg87v+2l0s1mMS8hjqJma+0PBWFc4XKi7k6OAL0lUBycvMWjurt/tZggoTmQuV5Mauv2KTxKuez4e/x50XJ/5l6fp8j6+a6P9GaP3+X9OmrQSPgk+k1mgbG/AnzDw5+9D9PgEEJyeHwU5LrMjw2ImHjQ/jgGLRYU2pRLtbW4V1EHVLgzStiScRl3BcsZamaWh//3IevphRFFkwgKF0VeT1NFN7/b7C8Q==", "ARC-Message-Signature": "i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;\n s=arcselector9901;\n h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;\n bh=wWaCmrkd0dGOwQM+G92/yuccrmbfYx9uALaqgqVsu4s=;\n b=QpaXu1nKR/tRvovV6WrXi9ofuXUlozpeei5R76MFmd3AFHhglrrE5OJz1RNkGUMUiljfLiFMpnayQ9taC/FhGBm4RbjQOHUBbXFmcUCHwQ1KU1bc3QLd/z0P/vcBU1pPe58ZoPrudTVzT8jcOdLPM4tMQjJFvL5I0T/NYx5iEXmN8hX7MYi5gaG2WvuBJeTp2s3kHbKhoQ5ypKcn3S1P9FoocxFgKq4Em0jS3x/pMZHIUKgT0aWKN459BkqgtQ48FE31vYpl8kJDG4AGupe+hiN+SOworAWOiOrIbvUf6E88H/aZPO6E2I32HJNgnMPHBwpDtrytN+soGXnicm7IqQ==", "ARC-Authentication-Results": "i=1; mx.microsoft.com 1; spf=pass\n smtp.mailfrom=amd.com; dmarc=pass action=none header.from=amd.com; dkim=pass\n header.d=amd.com; arc=none", "DKIM-Signature": "v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1;\n h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;\n bh=wWaCmrkd0dGOwQM+G92/yuccrmbfYx9uALaqgqVsu4s=;\n b=rW4TPQvSerJn6iQS7HXjDlQQFLrPlFCqKPZOHvyFux1SYDslYrHa4/OiGRmt3YeCkhjLDH252EnWEGT2KAT1Vipe0d6TA1QQ7aDtHuvS3e35IICFLgETPSVzcAy4O57yETvAZliZy01jy0mixoGjyROuc0jTmqpr659jv7zNqwQ=", "Authentication-Results": "dkim=none (message not signed)\n header.d=none;dmarc=none action=none header.from=amd.com;", "Message-ID": "<5d2a0887-527a-4948-943c-65f1dfda9328@amd.com>", "Date": "Wed, 24 Apr 2024 11:21:52 +0100", "User-Agent": "Mozilla Thunderbird", "Subject": "Re: [PATCH] net/af_packet: cache align Rx/Tx structs", "To": "=?utf-8?q?Mattias_R=C3=B6nnblom?= <hofors@lysator.liu.se>, =?utf-8?q?Mat?=\n\t=?utf-8?q?tias_R=C3=B6nnblom?= <mattias.ronnblom@ericsson.com>,\n \"John W . Linville\" <linville@tuxdriver.com>", "Cc": "dev@dpdk.org, Tyler Retzlaff <roretzla@linux.microsoft.com>,\n Honnappa Nagarahalli <Honnappa.Nagarahalli@arm.com>", "References": "<20240423090813.94110-1-mattias.ronnblom@ericsson.com>\n <6f7aabcb-2c12-4cfe-ae9d-73b42bfd4977@amd.com>\n <63dbb564-61f6-4d9f-9c13-4a21f5e97dc9@lysator.liu.se>", "Content-Language": "en-US", "From": "Ferruh Yigit <ferruh.yigit@amd.com>", "Autocrypt": "addr=ferruh.yigit@amd.com; keydata=\n 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 8Zk=", "In-Reply-To": "<63dbb564-61f6-4d9f-9c13-4a21f5e97dc9@lysator.liu.se>", "Content-Type": "text/plain; charset=UTF-8", "Content-Transfer-Encoding": "8bit", "X-ClientProxiedBy": "DB7PR05CA0024.eurprd05.prod.outlook.com\n (2603:10a6:10:36::37) To CH2PR12MB4294.namprd12.prod.outlook.com\n (2603:10b6:610:a9::11)", "MIME-Version": "1.0", "X-MS-PublicTrafficType": "Email", "X-MS-TrafficTypeDiagnostic": "CH2PR12MB4294:EE_|PH7PR12MB5805:EE_", "X-MS-Office365-Filtering-Correlation-Id": "7a95ff8f-cd41-47af-7bec-08dc64485df7", "X-MS-Exchange-SenderADCheck": "1", "X-MS-Exchange-AntiSpam-Relay": "0", "X-Microsoft-Antispam": "BCL:0;", "X-Microsoft-Antispam-Message-Info": "=?utf-8?q?SZBXzaBClh/jnVecaXB3q+PAWNgN7qY?=\n\t=?utf-8?q?/Pz6JuskGhWjAFZyYSEIEIHbWI7D3FVEMxlQ3tnYSoJrarUDOR87nN/QxgYkh888T?=\n\t=?utf-8?q?UJyIWI2h93gvXsFr5OC0b3Q1Eq6gD4xjCyk9T3lbuNSWrs8weQ9hN15/gOwoTiCk4?=\n\t=?utf-8?q?CiBa+UepbdWHs0NEl/+CGb3AzGsRKfUnC+BQ7CnCWV5AXFH+cjOsSnRKCXK7Q/5B+?=\n\t=?utf-8?q?S6xF2hRQ5E8c0q7rgK9enSCuwmMcn4991RlfsVd+mytzDp227XMho/nuA7TDB9Vgy?=\n\t=?utf-8?q?Ea+qmt+y/bqPAKZ+CcbYmtGXYc1ARGYiTayIyRbmv8VZ0evEVvENJD1UA7NvTKSXT?=\n\t=?utf-8?q?fIzzD1y3kUhRzqNWmxMtOvZBglFCZjuDSh9J2HiNS2cplJsqVLyeVAWdsxUsEpyzq?=\n\t=?utf-8?q?4KdpZTCM3uZluac79jPU6i79YichCS+0gzSwJRdpqpsY+YSLZBtB9sZkolv5zZ65x?=\n\t=?utf-8?q?nkqvZP6FMVdPIDn8PM5AzgcNeDqnQETuBolCfuKBzm5v6KZVXpgpHNSLoaZavk5Xa?=\n\t=?utf-8?q?20JanjZkXlbbusD176ONycF596kMwvQKpxJ07lX3cdRKPBvjsbK96r/6JYm6f+czz?=\n\t=?utf-8?q?ZJ/WdiFsfhK6UiJUS0omjRxHWIpDmnRlVT9+Pd0nVi/CMmP7Wh2ndENYxNvgoV4/D?=\n\t=?utf-8?q?wE+55Z5jn5BkXuYVNiD6Yup+jYGjZGfrsFfyJQf8h9d0wa2fWjmsxupPc3MZXbqSj?=\n\t=?utf-8?q?qjV8NWvljRrckoghVZ+GHqHeg84FqFGbll1fRljaGd1f/2xSfScWTfDumoJ9PqMpu?=\n\t=?utf-8?q?mvWd8gonK01LVZDRZPoMXxVM6iICciNHJYQHrdfiY2QfNc01THg8KY1MozZNSXpSL?=\n\t=?utf-8?q?V2PI0KAZYAGKrHhP9IZEuPCEl35yVt/3bfXHDvdku2b0z8TiDta/IUYXWhb/gIAj3?=\n\t=?utf-8?q?DfTqtRKvR4nlp4ZqFQrr5q6XL5+IHIxaeb1GoYe2268UrrNN6cRjPZ7BLxegHmV5/?=\n\t=?utf-8?q?t4vhdncfJW41Htk6lF1Bzjj9XFlvqzOqLmS4o9g+fSkZXnEFMDS4p1FnGV3hnzG1J?=\n\t=?utf-8?q?x5Y/p8udzXZazrJUwjl+1gIknZpey+qxpRGH8QbZu7ECIcv9g0FWRvDCOXb9+lLsC?=\n\t=?utf-8?q?uPYEQUIqGU0QbFBxLc+ZgX6vyQp2advSg/A5CeALYa33qXwH/sVaKHFyEgxwM61x7?=\n\t=?utf-8?q?XFE4A3C6JA+q2t/LhBr8D04vBVYOKi6FXvo+APApNZbjudyeEYrlppmfQ8wJvic//?=\n\t=?utf-8?q?wmPR8gSBTV+xYLTJQEoAyjLh7bIc7L2p0FfQ=3D=3D?=", "X-Forefront-Antispam-Report": "CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:;\n IPV:NLI; SFV:NSPM; H:CH2PR12MB4294.namprd12.prod.outlook.com; PTR:; CAT:NONE;\n SFS:(13230031)(366007)(376005)(1800799015); DIR:OUT; SFP:1101;", "X-MS-Exchange-AntiSpam-MessageData-ChunkCount": "1", "X-MS-Exchange-AntiSpam-MessageData-0": "=?utf-8?q?YfB5HLALvqojFXOiYaqRDTeM4SMk?=\n\t=?utf-8?q?lwlT4a7KdC/qggKVvMC3lx7ri2AFfOmLv4+PzozaJDzaFLD/UHzaK5ZBhYBFcH179?=\n\t=?utf-8?q?5+ljaL5pTEYcwOyiutFsiCFQrhn47Acn+vHtFw1i/aL72gGFA7QkCCWTrrPgM1gr3?=\n\t=?utf-8?q?C4vWUFfNvnoW1DE79m5FognMHHy8uSFNn5F5qJD7xjXThxTtyI8oaGGJmbUhSVCpP?=\n\t=?utf-8?q?1K1aHVZfy7diFee92GkleCFKLBOwTHx86FqMLE66UA9SjezZnGZCPDA46XP4NEDWv?=\n\t=?utf-8?q?MeVSupLcbUTtb5aeuMmauKzYj/i27aP/NjD1VXz22Pt/S/AgBTLStontb68ql7WhD?=\n\t=?utf-8?q?7EeDWfj/+di251CPvxGheNjnwo51rrQNAzKCxaEf95fA2QLzi8oxKP7wQGhklH6+7?=\n\t=?utf-8?q?7q47NgaloqVrNovmj0HpICpJxMH7urTuysHAhkLvI4cCnPa4ZwQgtVXfYnPQ+OZqc?=\n\t=?utf-8?q?ZfGEmJP8/4yHQimHXahZSa4+/eLXxuEbNd8p209Wx0IqOb+f/xkRKHIVHITq8WHsx?=\n\t=?utf-8?q?p9cTLXLQLrdgeJ5k+8bHC7WDiFott43vaGdeLmrwVku0emcsBD+0xcEJDPkPa+FVB?=\n\t=?utf-8?q?qUAkJp0gF+CzZqmfBIWkl79Opb/7T3TnkiSWofoFByZqGJqRg7ZJogxaNDkzuljNt?=\n\t=?utf-8?q?VL9PL07tDcWjqY4HukQUlKmqZOaCZQn2BMnV9kmzc/+q2phRSaDznZIIMj9qfIt/h?=\n\t=?utf-8?q?1OuzNNNP4nY5utuWDsdUQihhKNJRpAPdas7NFNB3AG8SrXEDSeeP2RLEfMWrNqADF?=\n\t=?utf-8?q?HT6GsQ2dKwjDmune2X5MG8xf/ItvEZOjmQYao912cjryMfxrNRuOqh4tYehk5GR5l?=\n\t=?utf-8?q?FRJNdwcqoDkazb2qhEoSUiHYKkWU14ZjTfeZMHD+Tr8F+FiPmbMIY4iIE+nYxNdWO?=\n\t=?utf-8?q?LyrfZxWCAsBwvWSt3l+h8dTJsdAmm5Ub10eAM6NtJEvEOrg7PmF6//3u2jtGSLmQU?=\n\t=?utf-8?q?jz2gUfQa0YptIKs6YvmTHW/1Pvjl124hrOQgjL/j/MYPH48YNHHuOeY9ZM2t54ZHs?=\n\t=?utf-8?q?dyKg9/j3LxpmWEbrpydyqb774M5vbhM9M6Y1OpUIQyQSYZX1AjQ9xEpzeuj4xbPmH?=\n\t=?utf-8?q?XbcCaNN1dqJ9kuYrzSI2AKH2f4w8pJ1CkfKOO37ZIGcZEQfIpVoILfDbXG/lqbOxP?=\n\t=?utf-8?q?ywhL+/leNmb5jf4WRHz5AII+miZIYzY2h/2cWQDyf6hBC9cdSgVliqCo1etta8y9z?=\n\t=?utf-8?q?AQL/hXMPpediPpTMJmR6Bk7eRzucZr/VCNtReG8tiBz4JLw5fuSQhkC+vNdxCDZSj?=\n\t=?utf-8?q?k1rad9ImNe0NZihYFRYxHBkF6OlobDTI6aUFxNuFw65sJOKm/x5dTGIxfDJuFx5CS?=\n\t=?utf-8?q?Fw4WWohxniZKSvA4INiT6xuC8OpynR3SzliaOtg7Wie3XYixXwH9S/Pux+bDEqejc?=\n\t=?utf-8?q?ZYvwuvZ7glbfYOU68Ppiuk5mdKIEZWWze3oloitFfbjRBBHKc5oXhORfTtTfTzQbQ?=\n\t=?utf-8?q?8DAnL1/BL8dI8RlQrSokG71AgOt1sPDbg2wyj8RdtoF5WR2GY9EP9UFxJReFWZ7vt?=\n\t=?utf-8?q?kMhePVJSBr8q?=", "X-OriginatorOrg": "amd.com", "X-MS-Exchange-CrossTenant-Network-Message-Id": "\n 7a95ff8f-cd41-47af-7bec-08dc64485df7", "X-MS-Exchange-CrossTenant-AuthSource": "CH2PR12MB4294.namprd12.prod.outlook.com", "X-MS-Exchange-CrossTenant-AuthAs": "Internal", "X-MS-Exchange-CrossTenant-OriginalArrivalTime": "24 Apr 2024 10:21:55.9289 (UTC)", "X-MS-Exchange-CrossTenant-FromEntityHeader": "Hosted", "X-MS-Exchange-CrossTenant-Id": "3dd8961f-e488-4e60-8e11-a82d994e183d", "X-MS-Exchange-CrossTenant-MailboxType": "HOSTED", "X-MS-Exchange-CrossTenant-UserPrincipalName": "\n boTnwpBkriwTeDbgP50UR/cK3upg5maQbu+5QkBQswAMjVRyrZrbUv2ZTyzPpK9E", "X-MS-Exchange-Transport-CrossTenantHeadersStamped": "PH7PR12MB5805", "X-BeenThere": "dev@dpdk.org", "X-Mailman-Version": "2.1.29", "Precedence": "list", "List-Id": "DPDK patches and discussions <dev.dpdk.org>", "List-Unsubscribe": "<https://mails.dpdk.org/options/dev>,\n <mailto:dev-request@dpdk.org?subject=unsubscribe>", "List-Archive": "<http://mails.dpdk.org/archives/dev/>", "List-Post": "<mailto:dev@dpdk.org>", "List-Help": "<mailto:dev-request@dpdk.org?subject=help>", "List-Subscribe": "<https://mails.dpdk.org/listinfo/dev>,\n <mailto:dev-request@dpdk.org?subject=subscribe>", "Errors-To": "dev-bounces@dpdk.org" }, "addressed": null }, { "id": 169632, "web_url": "http://patches.dpdk.org/comment/169632/", "msgid": "<Zijewu5AFTPj0Q88@bricha3-mobl1.ger.corp.intel.com>", "list_archive_url": "https://inbox.dpdk.org/dev/Zijewu5AFTPj0Q88@bricha3-mobl1.ger.corp.intel.com", "date": "2024-04-24T10:28:18", "subject": "Re: [PATCH] net/af_packet: cache align Rx/Tx structs", "submitter": { "id": 20, "url": "http://patches.dpdk.org/api/people/20/?format=api", "name": "Bruce Richardson", "email": "bruce.richardson@intel.com" }, "content": "On Wed, Apr 24, 2024 at 11:21:52AM +0100, Ferruh Yigit wrote:\n> On 4/23/2024 9:56 PM, Mattias Rönnblom wrote:\n> > On 2024-04-23 13:15, Ferruh Yigit wrote:\n> >> On 4/23/2024 10:08 AM, Mattias Rönnblom wrote:\n> >>> Cache align Rx and Tx queue struct to avoid false sharing.\n> >>>\n> >>> RX struct happens to be 64 bytes on x86_64 already, so cache\n> >>> alignment makes no change there, but it does on 32-bit ISAs.\n> >>>\n> >>> TX struct is 56 bytes on x86_64.\n> >>>\n> >>\n> >> Hi Mattias,\n> >>\n> >> No objection to the patch. Is the improvement theoretical or do you\n> >> measure any improvement practically, if so how much is the\n> >> improvement?\n> >>\n> > \n> > I didn't run any benchmarks.\n> > \n> > Two cores storing to a (falsely) shared cache line on a per-packet\n> > basis is going to be very expensive, at least for \"light touch\"\n> > applications.\n> > \n> \n> ack I expect for af_packet bottleneck is the kernel side, so I don't\n> expect any visible improvement practically, but OK to fix this\n> theoretical issue.\n> \n> >>> Both structs keep counters, and in the RX case they are updated even\n> >>> for empty polls.\n> >>>\n> >>\n> >> Do you think does it help if move 'rx_pkts' & 'rx_bytes' update within\n> >> the loop?\n> >>\n> > \n> > No, why? Wouldn't that be worse? Especially since rx_pkts and rx_bytes\n> > are declared volatile, so you are forcing a load-modify-store cycle for\n> > every increment.\n> > \n> \n> My intention was to prevent updating stats in empty polls, I thought\n> stats will be hot in the cache but won't work with volatile.\n> \nYes, it will. Volatile only prevents caching in registers, it does not\naffect the storing of data within the cache hierarchy. Reads/writes of\nstats on empty polls should indeed hit the L1 as expected. However, that is\nstill less efficient than just doing a register increment which could\ntheoretically be the result without the volatile.\n\n/Bruce", "headers": { "Return-Path": "<dev-bounces@dpdk.org>", "X-Original-To": "patchwork@inbox.dpdk.org", "Delivered-To": "patchwork@inbox.dpdk.org", "Received": [ "from mails.dpdk.org (mails.dpdk.org [217.70.189.124])\n\tby inbox.dpdk.org (Postfix) with ESMTP id 7599343EF7;\n\tWed, 24 Apr 2024 12:28:30 +0200 (CEST)", "from mails.dpdk.org (localhost [127.0.0.1])\n\tby mails.dpdk.org (Postfix) with ESMTP id 42ACE400D6;\n\tWed, 24 Apr 2024 12:28:30 +0200 (CEST)", "from mgamail.intel.com (mgamail.intel.com [192.198.163.18])\n by mails.dpdk.org (Postfix) with ESMTP id AF67640042\n for <dev@dpdk.org>; Wed, 24 Apr 2024 12:28:27 +0200 (CEST)", "from fmviesa007.fm.intel.com ([10.60.135.147])\n by fmvoesa112.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384;\n 24 Apr 2024 03:28:26 -0700", "from orsmsx601.amr.corp.intel.com ([10.22.229.14])\n by fmviesa007.fm.intel.com with ESMTP/TLS/AES256-GCM-SHA384;\n 24 Apr 2024 03:28:26 -0700", "from orsmsx611.amr.corp.intel.com (10.22.229.24) by\n ORSMSX601.amr.corp.intel.com (10.22.229.14) with Microsoft SMTP Server\n (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id\n 15.1.2507.35; Wed, 24 Apr 2024 03:28:26 -0700", "from ORSEDG602.ED.cps.intel.com (10.7.248.7) by\n orsmsx611.amr.corp.intel.com (10.22.229.24) with Microsoft SMTP Server\n (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id\n 15.1.2507.35 via Frontend Transport; Wed, 24 Apr 2024 03:28:26 -0700", "from NAM10-DM6-obe.outbound.protection.outlook.com (104.47.58.101)\n by edgegateway.intel.com (134.134.137.103) with Microsoft SMTP Server\n (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id\n 15.1.2507.35; Wed, 24 Apr 2024 03:28:25 -0700", "from DS0PR11MB7309.namprd11.prod.outlook.com (2603:10b6:8:13e::17)\n by IA1PR11MB6147.namprd11.prod.outlook.com (2603:10b6:208:3ed::19) with\n Microsoft SMTP Server (version=TLS1_2,\n cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7519.19; Wed, 24 Apr\n 2024 10:28:24 +0000", "from DS0PR11MB7309.namprd11.prod.outlook.com\n ([fe80::487e:e20c:ad88:9c0f]) by DS0PR11MB7309.namprd11.prod.outlook.com\n ([fe80::487e:e20c:ad88:9c0f%7]) with mapi id 15.20.7519.021; Wed, 24 Apr 2024\n 10:28:24 +0000" ], "DKIM-Signature": "v=1; a=rsa-sha256; c=relaxed/simple;\n d=intel.com; i=@intel.com; q=dns/txt; s=Intel;\n t=1713954508; x=1745490508;\n h=date:from:to:cc:subject:message-id:references:\n content-transfer-encoding:in-reply-to:mime-version;\n bh=oCw5VDAzitPy2+z7FiLzHZW7mOCKRRVk77CCMRSK94c=;\n b=V7kMDs0Euf/Y666SK+n522RKSWlZsO/J/w0R9qjTLUMyl2N9LGI7apQR\n fGpsLkqz9mp85quQX/Ol9q0oVFrpUbAGRQEEmdRI9jgjLzgOFEwQkdjo3\n jWX7fWFFgcvjGunaTYgH/Oik3LSR9dI+qcOenhNl7QbwudP97QbWzwva8\n vDGtsBKxmxzsWUu3K66qu3D/nz8q/orbbZ4eOyyRivi6iqr0Weksm7Dz+\n XeK1+PzXvAkygBzpRlGFFVXY+Euc/GbTUDw7gI9/epoj5bh+lY+O/jCKl\n iGKS60LRa9IIl7wk0LtNrcVoT/ip64O3OsJ5CeNPd94EmdOdPAI84JamO w==;", "X-CSE-ConnectionGUID": [ "8At010jIQRahfjHde/AYyg==", "ruvmqBtpRBmKWnihJz4RHg==" ], "X-CSE-MsgGUID": [ "IbGoUIc/Tp2FdbVqGmdj0Q==", "2ncDxlXnS1WoniMFVgchrg==" ], "X-IronPort-AV": [ "E=McAfee;i=\"6600,9927,11053\"; a=\"9429552\"", "E=Sophos;i=\"6.07,225,1708416000\";\n d=\"scan'208\";a=\"9429552\"", "E=Sophos;i=\"6.07,225,1708416000\"; d=\"scan'208\";a=\"24711778\"" ], "X-ExtLoop1": "1", "ARC-Seal": "i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;\n b=YcmEXpqpqOyBHBGlbyBEiPIQVCVjxjZG1KQTdfUQT/KZyOhBIPaYOwiGYYZ0UgEKJ5+SicUtGoZ7b0ymOYyRZQRtGlbtlOcOkcAqLrY26Ovb2zvjO1gaYrXsuUPIMkDVs86aBj/YDXQKgBc8yo5pE3YJ0+tmwbHpueslpzBK/phEGs3S9TJP35sNHIGpJPMmAF3lCem7IWv9Ge9H4p8FwKn1inh421pVfAPnFcN6S8PoTnv0VTDWdxT8Fslmq/12P8KIZp4xM78nQ3L+/n5T+kEtM/Fq7AfLmyvi4FBuZhPqpR5PEEY+Fb6/rJmNL1Theq5VziJqsMsI58h0ZOEy6A==", "ARC-Message-Signature": "i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;\n s=arcselector9901;\n h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;\n bh=QuPR75EJmbBeVsFTrKtP+UE2HNKUNgigxzhRz0nIrjM=;\n b=SbfoXaIasI43W6CoKxpcwNLAD9CbB4GOooNWUrzfqCdwUwSDEx/V1sZTmUJpSvslR02sCYqpVcWTcnWKuwwlzlGXkGsSF6iAMPQ95lIGzK8ILl58wsYCXfRkUzzOdeiLCJRdz82NrLpLC/OLLWA1Bt/rb/aaBDwK00orYsGJVbZ9IwfW1gp+SUqCPTYH9nEtJBK4b/N+Lr1VAJ59omZobrEmve2GvLThURxY0VpC8KplrB5GpTJFl31yTJreKG/09pokZw7jqpthEiTUtz/a3SY/T3NCrlBfNzzDQxE8k0IpKdKmXQ1qwEOfaDILkr9Dpop22BaXHwU5gv6+9mk6ew==", "ARC-Authentication-Results": "i=1; mx.microsoft.com 1; spf=pass\n smtp.mailfrom=intel.com; dmarc=pass action=none header.from=intel.com;\n dkim=pass header.d=intel.com; arc=none", "Authentication-Results": "dkim=none (message not signed)\n header.d=none;dmarc=none action=none header.from=intel.com;", "Date": "Wed, 24 Apr 2024 11:28:18 +0100", "From": "Bruce Richardson <bruce.richardson@intel.com>", "To": "Ferruh Yigit <ferruh.yigit@amd.com>", "CC": "Mattias =?iso-8859-1?q?R=F6nnblom?= <hofors@lysator.liu.se>, Mattias\n\t=?iso-8859-1?q?R=F6nnblom?= <mattias.ronnblom@ericsson.com>,\n \"John W . Linville\" <linville@tuxdriver.com>, <dev@dpdk.org>,\n Tyler Retzlaff <roretzla@linux.microsoft.com>,\n Honnappa Nagarahalli <Honnappa.Nagarahalli@arm.com>", "Subject": "Re: [PATCH] net/af_packet: cache align Rx/Tx structs", "Message-ID": "<Zijewu5AFTPj0Q88@bricha3-mobl1.ger.corp.intel.com>", "References": "<20240423090813.94110-1-mattias.ronnblom@ericsson.com>\n <6f7aabcb-2c12-4cfe-ae9d-73b42bfd4977@amd.com>\n <63dbb564-61f6-4d9f-9c13-4a21f5e97dc9@lysator.liu.se>\n <5d2a0887-527a-4948-943c-65f1dfda9328@amd.com>", "Content-Type": "text/plain; charset=\"iso-8859-1\"", "Content-Disposition": "inline", "Content-Transfer-Encoding": "8bit", "In-Reply-To": "<5d2a0887-527a-4948-943c-65f1dfda9328@amd.com>", "X-ClientProxiedBy": "DUZPR01CA0246.eurprd01.prod.exchangelabs.com\n (2603:10a6:10:4b5::12) To DS0PR11MB7309.namprd11.prod.outlook.com\n (2603:10b6:8:13e::17)", "MIME-Version": "1.0", "X-MS-PublicTrafficType": "Email", "X-MS-TrafficTypeDiagnostic": "DS0PR11MB7309:EE_|IA1PR11MB6147:EE_", "X-MS-Office365-Filtering-Correlation-Id": "15b6675e-106b-41ce-3b03-08dc64494563", "X-LD-Processed": "46c98d88-e344-4ed4-8496-4ed7712e255d,ExtAddr", "X-MS-Exchange-SenderADCheck": "1", "X-MS-Exchange-AntiSpam-Relay": "0", "X-Microsoft-Antispam": "BCL:0;ARA:13230031|376005|1800799015|366007;", "X-Microsoft-Antispam-Message-Info": "=?iso-8859-1?q?i/lYZi5AGO8OUwTQJ9EfB3R9tn?=\n\t=?iso-8859-1?q?psj/l639jEYg8gi4p7dWUmYjotxWzIPLmuKv+alU7btwbm56pP0qqx8qgrql?=\n\t=?iso-8859-1?q?9I9FQKUIHKDfsca7mlDBbSaCFLp2d13i+kbtmEy8n1UGSvPqw1ZCTaffutwL?=\n\t=?iso-8859-1?q?ko7WiJi+CvFHS1dJi5M36jY8HTJgPFJRAewHs/wFM1oheDXWnheLLRYi4Wr7?=\n\t=?iso-8859-1?q?HwF9FxqrNynRw6DrpyT8pReYoFb1I+rSggFVsfKSctvOWCRNbqxEn5SaEzJ+?=\n\t=?iso-8859-1?q?0PFY3sRUqk0mRSz+wY6DQ6enHvt1nnQZZYqwvcwk/XUHXUMbxfp5kvVJDKgu?=\n\t=?iso-8859-1?q?Hvy+YfzkAXjnT7mz5Ne+OLmhYkQn1V6u86vzrDJGoThO8lpigbdTn0YqW6fF?=\n\t=?iso-8859-1?q?zRY7iTvABqvREkSRSl+NrZjDOQa/IseGaP4R1cfeW90a7EMs5cmv/RtFMRUe?=\n\t=?iso-8859-1?q?eYZtG2pPwOsXutAwrL57YWhHcJZzfch1DHKFlcm1v4RoT08uX4WxE92otorv?=\n\t=?iso-8859-1?q?Hb576MIEp6dx1JoKaMgtQFMxgXiiaVMtVQ3wrLyTQIZm/SjSFJnaTgxgBqt9?=\n\t=?iso-8859-1?q?CuX2MrOqZVhaMVrwB2xeAOGl2RHoXrXdPdLa3z6PjkS+aGUXGou3QLovk9SR?=\n\t=?iso-8859-1?q?2PkgEnlrNNWBGfqYrMGZ7ooOPLg+BYlZi3Bz6M/ho2NkUSZxdp9MtgZmZg5g?=\n\t=?iso-8859-1?q?REZCIXhsyVto3GDKHgBPJ/eqCSijn9GL8fMJd1lI2nbBPPP5ZjJL6LrfFrPT?=\n\t=?iso-8859-1?q?28JHwdI5UjLokV06/XiT6TdLTx35Wpr/TV5rYLMyIy5xtjEpuCqu5DaS2nxT?=\n\t=?iso-8859-1?q?IcrZn0GTeeVyKVD22M2I5sPVTy4IU8RzUIs2LgC1jtGZZ/lYyJs09vh+skMT?=\n\t=?iso-8859-1?q?q6JkCxSBKjPPpGAXPOZ9vHVE7p076aq6KXlc2DpRN4rInYwmoj4YtGSKxCVB?=\n\t=?iso-8859-1?q?8xgzcRSw83ISLabI0bqn3f3geTIYRa3YXrswpmt/OywN9xLmcfO48V//tDpy?=\n\t=?iso-8859-1?q?NxKA3+4/imQ0ky8dO5bn7MjdCgI/vAOUOxJXFq7Smtk5UClTWCs/wzsccUIK?=\n\t=?iso-8859-1?q?W4+9ogqxXIFZkwddiKRU/GD/youXhw2kv8ofYNeqU4t4Zk9JFFZ1A4M1gaT6?=\n\t=?iso-8859-1?q?uRCNqFLg0RtG+TyAINXu6ZzGq46t6vvBTO+DBhnVgOV4ifr9hW4wFFdd+RVi?=\n\t=?iso-8859-1?q?/AMNzveeK4VOU+6pSRDzZ3ieMn3gmDhWKv2VhJOaj70zQkdnaTqWs5lT7SUP?=\n\t=?iso-8859-1?q?/cjS/OqQrrOrzhivYBJLgr5KuotZ3J/ykSDSyfS63MxP8cHhFqYeoNJwRCAl?=\n\t=?iso-8859-1?q?zB9v+Yy3D5tIp7Zg=3D=3D?=", "X-Forefront-Antispam-Report": "CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:;\n IPV:NLI; SFV:NSPM; H:DS0PR11MB7309.namprd11.prod.outlook.com; PTR:; CAT:NONE;\n SFS:(13230031)(376005)(1800799015)(366007); DIR:OUT; SFP:1101;", "X-MS-Exchange-AntiSpam-MessageData-ChunkCount": "1", "X-MS-Exchange-AntiSpam-MessageData-0": "=?iso-8859-1?q?GeztMqkiBGPVayiP6/icf7S?=\n\t=?iso-8859-1?q?UZTlYLDEBkxZ8l43XMfOGZ+bKW/lyMbG4vXIQ5B1mYBVl6MRgAKtjdEAIFmb?=\n\t=?iso-8859-1?q?1gejjs0TkSI62Inhva19vgBaf9j01F9Y9mn9iwFNiDlYKhNmA1hqVVf0JDjn?=\n\t=?iso-8859-1?q?Ihg9DASeztpTjuOXBeHnwv1x+i3aB8qZq8SiSASMGv+njIloXRvdku5EPpiq?=\n\t=?iso-8859-1?q?TRYc9jy9N1mDEPr3oW+NKH1M82ZH3umRXhFjZRai0nvaVxmFEtFxTPcZlWRR?=\n\t=?iso-8859-1?q?GVTRAW0o3SEkn5wSJrW89SCVmDx0S080AvxktrY30JUkUWMZ/Fo/EKuZfCU1?=\n\t=?iso-8859-1?q?quimdM+7UcrC1Km37Imd6OwdG7th91sU722x66u2uz6AjfSqLHAa5QicvASO?=\n\t=?iso-8859-1?q?K6PksA5cyCwLAsKcxbJrV1goMAdorD6VRqOQa9PpfYvGHw1+TWYkAg/KwGjb?=\n\t=?iso-8859-1?q?To5kb1rxw8DbhTdtnX7H3t0sKvS8RtBiLc6w9/m5B8RsBnFDSmH9L3t+KFFG?=\n\t=?iso-8859-1?q?eaQaGSvgCm+sE2jjq2qkJWOJMa5E/H/7GhPQRxfj6j++qioXBkR9aimT7viL?=\n\t=?iso-8859-1?q?5cXSDhGpBjO/0J2lfV0KInUDceFz2tEnG08N7KklCc3Ub1PAiO8+oQh8dcFf?=\n\t=?iso-8859-1?q?gbkNUbrkSMV+aeU8ShFb8zP5dU5iZr9KO2Eh9at63aofGEKj5XTQcsyaPi5+?=\n\t=?iso-8859-1?q?sz2tnyEOqndzD5CKAcnYEa+wTfNqD0yXEKwVVjARiewDi9YOJU0dBkSbO0XL?=\n\t=?iso-8859-1?q?Sq3n9/N6PpsZtc96tsFDDgrYtNdtK/HZjOITF92oQGQ8i9BWM4w6OHEdtkIa?=\n\t=?iso-8859-1?q?26oWWJYwqSyOZu3hcijIUGzwNkE+WAxCbX6DlDR30mRL7cHsPaOq8yBahmLd?=\n\t=?iso-8859-1?q?4Wqq4mtkcXb80M/qqQbrA69bMfZTpoCYBebnvRVrKrHt+srGmr7yvtuAcCAs?=\n\t=?iso-8859-1?q?3rsyoXvc7whA1Vs4WbvJ3v3V7P9UDlKiUeHqRKqy+y+MUg5N69ydJMti5er6?=\n\t=?iso-8859-1?q?ZAPDTsAm5f+09ZxwZBp8dP+L03xZucJUs7z5TuAWHKfL4aOkfsPIMmNobTKw?=\n\t=?iso-8859-1?q?ZtbDT2+1jyfWU+4V0urfYdUni8BH5z/c1EPxsHFwRO5n/SA7ng2OzgVGfIup?=\n\t=?iso-8859-1?q?eVnEFYLInekFO66RUMl629meYIjetw2IQUBxxfZH9h08i6PpuRCwpqOZe4cI?=\n\t=?iso-8859-1?q?2eVBDs+gZPZ0M5hEZ+5C7xbVfjZ2g4nqfJb9LmXi6BoepeJGbxBE6QFEmnuV?=\n\t=?iso-8859-1?q?kQKK64VDjWeTCI91zlKN8VQkPmF5gllw0dS1+ifTjSWlesoFwrFtn6kyV6gU?=\n\t=?iso-8859-1?q?iMRDRjefWf7oFAUPj/aV3pduiVvdEjFUfslaq29jr8hlVbMdpW9PoQwvDHn7?=\n\t=?iso-8859-1?q?ywVLeK8o1bGEgrxnR7RXhTBXwzUcDBoeRU7v/4G6mArBhun2IwOtHp0Y5XBz?=\n\t=?iso-8859-1?q?0O43eXkpVqX8B2VqxFPm5EBMsmJPhGQdUSwUoiaADIdNSpleZa3m4v7CB5en?=\n\t=?iso-8859-1?q?waDZmNGQAOu5SwyD/3v9Q4XsVpNWkvM6gN3mhuBYTLPP/4Tvji/M1/Sne8x2?=\n\t=?iso-8859-1?q?JUbocRI/ObOve7wdo/8scBkfJOi2JZhxcg+dWWxKR4/1ZBxvJI8WsliKrNf8?=\n\t=?iso-8859-1?q?6YDaUrJ/UdOhBM1Pv+M7fkpU0O1k6kleFaN1bYg=3D=3D?=", "X-MS-Exchange-CrossTenant-Network-Message-Id": "\n 15b6675e-106b-41ce-3b03-08dc64494563", "X-MS-Exchange-CrossTenant-AuthSource": "DS0PR11MB7309.namprd11.prod.outlook.com", "X-MS-Exchange-CrossTenant-AuthAs": "Internal", "X-MS-Exchange-CrossTenant-OriginalArrivalTime": "24 Apr 2024 10:28:24.1279 (UTC)", "X-MS-Exchange-CrossTenant-FromEntityHeader": "Hosted", "X-MS-Exchange-CrossTenant-Id": "46c98d88-e344-4ed4-8496-4ed7712e255d", "X-MS-Exchange-CrossTenant-MailboxType": "HOSTED", "X-MS-Exchange-CrossTenant-UserPrincipalName": "\n TH7snt+pnGz+qcSR5OUYLb4ywfBDMSw4hsPriUMpnGI2fFwCPnqsCWnEUpNjlZS+apFnI++AGCK2KEfWoBG+IwnPvuEDM8SfK2BQoWFqiJw=", "X-MS-Exchange-Transport-CrossTenantHeadersStamped": "IA1PR11MB6147", "X-OriginatorOrg": "intel.com", "X-BeenThere": "dev@dpdk.org", "X-Mailman-Version": "2.1.29", "Precedence": "list", "List-Id": "DPDK patches and discussions <dev.dpdk.org>", "List-Unsubscribe": "<https://mails.dpdk.org/options/dev>,\n <mailto:dev-request@dpdk.org?subject=unsubscribe>", "List-Archive": "<http://mails.dpdk.org/archives/dev/>", "List-Post": "<mailto:dev@dpdk.org>", "List-Help": "<mailto:dev-request@dpdk.org?subject=help>", "List-Subscribe": "<https://mails.dpdk.org/listinfo/dev>,\n <mailto:dev-request@dpdk.org?subject=subscribe>", "Errors-To": "dev-bounces@dpdk.org" }, "addressed": null }, { "id": 169633, "web_url": "http://patches.dpdk.org/comment/169633/", "msgid": "<3b2cf48e-2293-4226-b6cd-5f4dd3969f99@lysator.liu.se>", "list_archive_url": "https://inbox.dpdk.org/dev/3b2cf48e-2293-4226-b6cd-5f4dd3969f99@lysator.liu.se", "date": "2024-04-24T11:57:04", "subject": "Re: [PATCH] net/af_packet: cache align Rx/Tx structs", "submitter": { "id": 906, "url": "http://patches.dpdk.org/api/people/906/?format=api", "name": "Mattias Rönnblom", "email": "hofors@lysator.liu.se" }, "content": "On 2024-04-24 12:21, Ferruh Yigit wrote:\n> On 4/23/2024 9:56 PM, Mattias Rönnblom wrote:\n>> On 2024-04-23 13:15, Ferruh Yigit wrote:\n>>> On 4/23/2024 10:08 AM, Mattias Rönnblom wrote:\n>>>> Cache align Rx and Tx queue struct to avoid false sharing.\n>>>>\n>>>> RX struct happens to be 64 bytes on x86_64 already, so cache alignment\n>>>> makes no change there, but it does on 32-bit ISAs.\n>>>>\n>>>> TX struct is 56 bytes on x86_64.\n>>>>\n>>>\n>>> Hi Mattias,\n>>>\n>>> No objection to the patch. Is the improvement theoretical or do you\n>>> measure any improvement practically, if so how much is the improvement?\n>>>\n>>\n>> I didn't run any benchmarks.\n>>\n>> Two cores storing to a (falsely) shared cache line on a per-packet basis\n>> is going to be very expensive, at least for \"light touch\" applications.\n>>\n> \n> ack\n> I expect for af_packet bottleneck is the kernel side, so I don't expect\n> any visible improvement practically, but OK to fix this theoretical issue.\n> \n\nIf you use af_packet as a slow path interface, you may well poll it \noften. If you are unlucky and aren't on an ISA where the RX struct *by \naccident* is cache-line aligned, you will suffer greatly from false \nsharing, because the counters are written to regardless if there are \npackets polled or not.\n\nIf you don't care about synchronization overhead, why even support \nmulti-queue in the af_packet driver!?\n\n>>>> Both structs keep counters, and in the RX case they are updated even\n>>>> for empty polls.\n>>>>\n>>>\n>>> Do you think does it help if move 'rx_pkts' & 'rx_bytes' update within\n>>> the loop?\n>>>\n>>\n>> No, why? Wouldn't that be worse? Especially since rx_pkts and rx_bytes\n>> are declared volatile, so you are forcing a load-modify-store cycle for\n>> every increment.\n>>\n> \n> My intention was to prevent updating stats in empty polls, I thought\n> stats will be hot in the cache but won't work with volatile.\n> \n> \n>> I would drop \"volatile\", or replace it with an atomic (although *not*\n>> use an atomic add for incrementing, but rather atomic load + <n>\n>> non-atomic adds + atomic store).\n>>\n> \n> As only single core polls from an Rx queue, I assume atomics is required\n> only for stats reset case. And for that case won't we need atomic add?\n> \n\nCorrect me if I'm wrong here, but my impression is that statistics reset \ntend to be best-effort in DPDK. Or, expressed in a different way, are \nnot thread-safe.\n\nIf you want to support MT safe counter reset, the counter increment \noperation must be an atomic add, since now you have two writers. (Unless \nyou do something fancy and keep only a new offset upon reset, and never \nactually zero the counter.)\n\n> And do you know if there is a performance difference between atomic add\n> and keeping volatile qualifier?\n> \n> \n\nI don't know how slow af_packet is, but if you care about performance, \nyou don't want to use atomic add for statistics.\n\nvolatile in this case it's not a big issue, performance-wise, I would \nexpect.\n\n>>>> Signed-off-by: Mattias Rönnblom <mattias.ronnblom@ericsson.com>\n>>>> ---\n>>>>   drivers/net/af_packet/rte_eth_af_packet.c | 5 +++--\n>>>>   1 file changed, 3 insertions(+), 2 deletions(-)\n>>>>\n>>>> diff --git a/drivers/net/af_packet/rte_eth_af_packet.c\n>>>> b/drivers/net/af_packet/rte_eth_af_packet.c\n>>>> index 397a32db58..28aeb7d08e 100644\n>>>> --- a/drivers/net/af_packet/rte_eth_af_packet.c\n>>>> +++ b/drivers/net/af_packet/rte_eth_af_packet.c\n>>>> @@ -6,6 +6,7 @@\n>>>>    * All rights reserved.\n>>>>    */\n>>>>   +#include <rte_common.h>\n>>>>   #include <rte_string_fns.h>\n>>>>   #include <rte_mbuf.h>\n>>>>   #include <ethdev_driver.h>\n>>>> @@ -53,7 +54,7 @@ struct pkt_rx_queue {\n>>>>         volatile unsigned long rx_pkts;\n>>>>       volatile unsigned long rx_bytes;\n>>>> -};\n>>>> +} __rte_cache_aligned;\n>>>> \n>>>\n>>> Latest location for '__rte_cache_aligned' tag is at the beginning of the\n>>> struct [1], so something like:\n>>> `struct __rte_cache_aligned pkt_rx_queue {`\n>>>\n>>> [1]\n>>> https://patchwork.dpdk.org/project/dpdk/list/?series=31746&state=%2A&archive=both\n>", "headers": { "Return-Path": "<dev-bounces@dpdk.org>", "X-Original-To": "patchwork@inbox.dpdk.org", "Delivered-To": "patchwork@inbox.dpdk.org", "Received": [ "from mails.dpdk.org (mails.dpdk.org [217.70.189.124])\n\tby inbox.dpdk.org (Postfix) with ESMTP id 797E743E98;\n\tWed, 24 Apr 2024 13:57:11 +0200 (CEST)", "from mails.dpdk.org (localhost [127.0.0.1])\n\tby mails.dpdk.org (Postfix) with ESMTP id D5BC740273;\n\tWed, 24 Apr 2024 13:57:10 +0200 (CEST)", "from mail.lysator.liu.se (mail.lysator.liu.se [130.236.254.3])\n by mails.dpdk.org (Postfix) with ESMTP id 85142400D6\n for <dev@dpdk.org>; Wed, 24 Apr 2024 13:57:09 +0200 (CEST)", "from mail.lysator.liu.se (localhost [127.0.0.1])\n by mail.lysator.liu.se (Postfix) with ESMTP id B705E9C27\n for <dev@dpdk.org>; Wed, 24 Apr 2024 13:57:08 +0200 (CEST)", "by mail.lysator.liu.se (Postfix, from userid 1004)\n id AB5909C25; Wed, 24 Apr 2024 13:57:08 +0200 (CEST)", "from [192.168.1.59] (h-62-63-215-114.A163.priv.bahnhof.se\n [62.63.215.114])\n (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)\n key-exchange X25519 server-signature RSA-PSS (2048 bits) server-digest\n SHA256)\n (No client certificate requested)\n by mail.lysator.liu.se (Postfix) with ESMTPSA id 0C5C29D09;\n Wed, 24 Apr 2024 13:57:05 +0200 (CEST)" ], "X-Spam-Checker-Version": "SpamAssassin 4.0.0 (2022-12-13) on\n hermod.lysator.liu.se", "X-Spam-Level": "", "X-Spam-Status": "No, score=-1.3 required=5.0 tests=ALL_TRUSTED,AWL,\n T_SCC_BODY_TEXT_LINE autolearn=disabled version=4.0.0", "X-Spam-Score": "-1.3", "Message-ID": "<3b2cf48e-2293-4226-b6cd-5f4dd3969f99@lysator.liu.se>", "Date": "Wed, 24 Apr 2024 13:57:04 +0200", "MIME-Version": "1.0", "User-Agent": "Mozilla Thunderbird", "Subject": "Re: [PATCH] net/af_packet: cache align Rx/Tx structs", "To": "Ferruh Yigit <ferruh.yigit@amd.com>,\n =?utf-8?q?Mattias_R=C3=B6nnblom?= <mattias.ronnblom@ericsson.com>,\n \"John W . Linville\" <linville@tuxdriver.com>", "Cc": "dev@dpdk.org, Tyler Retzlaff <roretzla@linux.microsoft.com>,\n Honnappa Nagarahalli <Honnappa.Nagarahalli@arm.com>", "References": "<20240423090813.94110-1-mattias.ronnblom@ericsson.com>\n <6f7aabcb-2c12-4cfe-ae9d-73b42bfd4977@amd.com>\n <63dbb564-61f6-4d9f-9c13-4a21f5e97dc9@lysator.liu.se>\n <5d2a0887-527a-4948-943c-65f1dfda9328@amd.com>", "Content-Language": "en-US", "From": "=?utf-8?q?Mattias_R=C3=B6nnblom?= <hofors@lysator.liu.se>", "In-Reply-To": "<5d2a0887-527a-4948-943c-65f1dfda9328@amd.com>", "Content-Type": "text/plain; charset=UTF-8; format=flowed", "Content-Transfer-Encoding": "8bit", "X-Virus-Scanned": "ClamAV using ClamSMTP", "X-BeenThere": "dev@dpdk.org", "X-Mailman-Version": "2.1.29", "Precedence": "list", "List-Id": "DPDK patches and discussions <dev.dpdk.org>", "List-Unsubscribe": "<https://mails.dpdk.org/options/dev>,\n <mailto:dev-request@dpdk.org?subject=unsubscribe>", "List-Archive": "<http://mails.dpdk.org/archives/dev/>", "List-Post": "<mailto:dev@dpdk.org>", "List-Help": "<mailto:dev-request@dpdk.org?subject=help>", "List-Subscribe": "<https://mails.dpdk.org/listinfo/dev>,\n <mailto:dev-request@dpdk.org?subject=subscribe>", "Errors-To": "dev-bounces@dpdk.org" }, "addressed": null }, { "id": 169641, "web_url": "http://patches.dpdk.org/comment/169641/", "msgid": "<0ff40e60-926b-44eb-8af5-2e16aff1c336@amd.com>", "list_archive_url": "https://inbox.dpdk.org/dev/0ff40e60-926b-44eb-8af5-2e16aff1c336@amd.com", "date": "2024-04-24T17:50:50", "subject": "Re: [PATCH] net/af_packet: cache align Rx/Tx structs", "submitter": { "id": 2700, "url": "http://patches.dpdk.org/api/people/2700/?format=api", "name": "Ferruh Yigit", "email": "ferruh.yigit@amd.com" }, "content": "On 4/24/2024 12:57 PM, Mattias Rönnblom wrote:\n> On 2024-04-24 12:21, Ferruh Yigit wrote:\n>> On 4/23/2024 9:56 PM, Mattias Rönnblom wrote:\n>>> On 2024-04-23 13:15, Ferruh Yigit wrote:\n>>>> On 4/23/2024 10:08 AM, Mattias Rönnblom wrote:\n>>>>> Cache align Rx and Tx queue struct to avoid false sharing.\n>>>>>\n>>>>> RX struct happens to be 64 bytes on x86_64 already, so cache alignment\n>>>>> makes no change there, but it does on 32-bit ISAs.\n>>>>>\n>>>>> TX struct is 56 bytes on x86_64.\n>>>>>\n>>>>\n>>>> Hi Mattias,\n>>>>\n>>>> No objection to the patch. Is the improvement theoretical or do you\n>>>> measure any improvement practically, if so how much is the improvement?\n>>>>\n>>>\n>>> I didn't run any benchmarks.\n>>>\n>>> Two cores storing to a (falsely) shared cache line on a per-packet basis\n>>> is going to be very expensive, at least for \"light touch\" applications.\n>>>\n>>\n>> ack\n>> I expect for af_packet bottleneck is the kernel side, so I don't expect\n>> any visible improvement practically, but OK to fix this theoretical\n>> issue.\n>>\n> \n> If you use af_packet as a slow path interface, you may well poll it\n> often. If you are unlucky and aren't on an ISA where the RX struct *by\n> accident* is cache-line aligned, you will suffer greatly from false\n> sharing, because the counters are written to regardless if there are\n> packets polled or not.\n> \n> If you don't care about synchronization overhead, why even support\n> multi-queue in the af_packet driver!?\n> \n\nWe care, only I expect no measurable performance improvement and was\nasking if you have data for it.\n\n>>>>> Both structs keep counters, and in the RX case they are updated even\n>>>>> for empty polls.\n>>>>>\n>>>>\n>>>> Do you think does it help if move 'rx_pkts' & 'rx_bytes' update within\n>>>> the loop?\n>>>>\n>>>\n>>> No, why? Wouldn't that be worse? Especially since rx_pkts and rx_bytes\n>>> are declared volatile, so you are forcing a load-modify-store cycle for\n>>> every increment.\n>>>\n>>\n>> My intention was to prevent updating stats in empty polls, I thought\n>> stats will be hot in the cache but won't work with volatile.\n>>\n>>\n>>> I would drop \"volatile\", or replace it with an atomic (although *not*\n>>> use an atomic add for incrementing, but rather atomic load + <n>\n>>> non-atomic adds + atomic store).\n>>>\n>>\n>> As only single core polls from an Rx queue, I assume atomics is required\n>> only for stats reset case. And for that case won't we need atomic add?\n>>\n> \n> Correct me if I'm wrong here, but my impression is that statistics reset\n> tend to be best-effort in DPDK. Or, expressed in a different way, are\n> not thread-safe.\n> \n\nAt least I don't see this is something documented. For cases HW tracks\nstats we don't have this problem. Or some drivers use offset mechanism\nyou mentioned below.\nBut I can see some soft drivers will have this problem with stats clear.\n\n> If you want to support MT safe counter reset, the counter increment\n> operation must be an atomic add, since now you have two writers. (Unless\n> you do something fancy and keep only a new offset upon reset, and never\n> actually zero the counter.)\n> \n\nAsking to learn, if we ignore the stats reset case and assume stats only\nincremented, single writer case, do we still need either volatile\nqualifier or atomic operations at all?\n\n>> And do you know if there is a performance difference between atomic add\n>> and keeping volatile qualifier?\n>>\n>>\n> \n> I don't know how slow af_packet is, but if you care about performance,\n> you don't want to use atomic add for statistics.\n> \n\nThere are a few soft drivers already using atomics adds for updating stats.\nIf we document expectations from 'rte_eth_stats_reset()', we can update\nthose usages.\n\n> volatile in this case it's not a big issue, performance-wise, I would\n> expect.\n> \n>>>>> Signed-off-by: Mattias Rönnblom <mattias.ronnblom@ericsson.com>\n>>>>> ---\n>>>>>    drivers/net/af_packet/rte_eth_af_packet.c | 5 +++--\n>>>>>    1 file changed, 3 insertions(+), 2 deletions(-)\n>>>>>\n>>>>> diff --git a/drivers/net/af_packet/rte_eth_af_packet.c\n>>>>> b/drivers/net/af_packet/rte_eth_af_packet.c\n>>>>> index 397a32db58..28aeb7d08e 100644\n>>>>> --- a/drivers/net/af_packet/rte_eth_af_packet.c\n>>>>> +++ b/drivers/net/af_packet/rte_eth_af_packet.c\n>>>>> @@ -6,6 +6,7 @@\n>>>>>     * All rights reserved.\n>>>>>     */\n>>>>>    +#include <rte_common.h>\n>>>>>    #include <rte_string_fns.h>\n>>>>>    #include <rte_mbuf.h>\n>>>>>    #include <ethdev_driver.h>\n>>>>> @@ -53,7 +54,7 @@ struct pkt_rx_queue {\n>>>>>          volatile unsigned long rx_pkts;\n>>>>>        volatile unsigned long rx_bytes;\n>>>>> -};\n>>>>> +} __rte_cache_aligned;\n>>>>>    \n>>>>\n>>>> Latest location for '__rte_cache_aligned' tag is at the beginning of\n>>>> the\n>>>> struct [1], so something like:\n>>>> `struct __rte_cache_aligned pkt_rx_queue {`\n>>>>\n>>>> [1]\n>>>> https://patchwork.dpdk.org/project/dpdk/list/?series=31746&state=%2A&archive=both\n>>", "headers": { "Return-Path": "<dev-bounces@dpdk.org>", "X-Original-To": "patchwork@inbox.dpdk.org", "Delivered-To": "patchwork@inbox.dpdk.org", "Received": [ "from mails.dpdk.org (mails.dpdk.org [217.70.189.124])\n\tby inbox.dpdk.org (Postfix) with ESMTP id 0373D43EF8;\n\tWed, 24 Apr 2024 19:51:09 +0200 (CEST)", "from mails.dpdk.org (localhost [127.0.0.1])\n\tby mails.dpdk.org (Postfix) with ESMTP id 7D765435C0;\n\tWed, 24 Apr 2024 19:51:09 +0200 (CEST)", "from NAM11-DM6-obe.outbound.protection.outlook.com\n (mail-dm6nam11on2089.outbound.protection.outlook.com [40.107.223.89])\n by mails.dpdk.org (Postfix) with ESMTP id D7AEB435BE\n for <dev@dpdk.org>; Wed, 24 Apr 2024 19:51:07 +0200 (CEST)", "from CH2PR12MB4294.namprd12.prod.outlook.com (2603:10b6:610:a9::11)\n by PH0PR12MB5647.namprd12.prod.outlook.com (2603:10b6:510:144::5)\n with Microsoft SMTP Server (version=TLS1_2,\n cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7472.44; Wed, 24 Apr\n 2024 17:50:54 +0000", "from CH2PR12MB4294.namprd12.prod.outlook.com\n ([fe80::282f:29d3:cac1:cde3]) by CH2PR12MB4294.namprd12.prod.outlook.com\n ([fe80::282f:29d3:cac1:cde3%7]) with mapi id 15.20.7472.044; Wed, 24 Apr 2024\n 17:50:54 +0000" ], "ARC-Seal": "i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;\n b=LlfRyqMEYS6cDd8PVsk97l/d7/GqTurN7l9sQZYKqgZ5HQ4ONh6C1L/Q19IFOlbq+xb5lZPdGVOHUBPSeAb3HcbOFf0appR8hvw/1K1aMPimYQTi47erg9ZQ+SuHMf9fYP42/T2nc5zFgep+LQzYTN+Zihs3pZEjP3N8Cx7PxEk72lh+81QGWMFDZ8AMFPXcmgo8LEhWk4RBiyZdXkhHwhwnI3kgnE/N2mAECGU488O0hdAKnwrUAaehwh/zy4wzfIXMPSXgJZMNj3CWf6OtxQ2rNVPl1l8Vbd/gWrRK3MR8jBaINZk04t4fkDlBtbf+acYS1Ebd55KMHBeRflUKlw==", "ARC-Message-Signature": "i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;\n s=arcselector9901;\n h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;\n bh=+8oYpNI9ZCmSArCgzNfavu+EeHqu+NdQu0k9sLByunk=;\n b=LA1UuZVuoG3kS491czB6yHNhJAR+hX45UvsE+7Bn5RBwf5s/+dzuGz8fF8OERZdt9dOo+7YbWaHjRp6rgczv+92i6GtdIen3ULzTVrLKxFVE8wrokUu0qbUvbi+I9645QAJERuSg71w8qUM3LJqF29g0K1fIK9Y5tPxhwkaLlfZWtXtaIVRpYZmIHHnV3miVg5YdSNFfLR2x+HZuGOpF3F1VowAVqVuAb0hfz+K2WwzZEZBYY3MNn9ZQpBaTAXR9gQn9xUikUUsRPmr2YYHb36ogw+9RYlBli9IwqzFTYA+BDgNChTZj1vgZ7TE4Cw04gzWAoQAxRwugbBNX2AfJFA==", "ARC-Authentication-Results": "i=1; mx.microsoft.com 1; spf=pass\n smtp.mailfrom=amd.com; dmarc=pass action=none header.from=amd.com; dkim=pass\n header.d=amd.com; arc=none", "DKIM-Signature": "v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1;\n h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;\n bh=+8oYpNI9ZCmSArCgzNfavu+EeHqu+NdQu0k9sLByunk=;\n b=jHYGIz7TSx8mG3dHO+JC+bKPVxr69vVg/CMZzfbvkhKNRetmu9ZLSiGrO7vXqUEnYcjhTpQV7N3P5ET2Xyq7q0M4Rea5yeBg0YOIZkpk59LzJtM/qbF2OFddEVkEYp5bcwblDdUBKLUUGqZrUcGtCXL9yRrbYNqDTIkf6rIQFYA=", "Authentication-Results": "dkim=none (message not signed)\n header.d=none;dmarc=none action=none header.from=amd.com;", "Message-ID": "<0ff40e60-926b-44eb-8af5-2e16aff1c336@amd.com>", "Date": "Wed, 24 Apr 2024 18:50:50 +0100", "User-Agent": "Mozilla Thunderbird", "Subject": "Re: [PATCH] net/af_packet: cache align Rx/Tx structs", "To": "=?utf-8?q?Mattias_R=C3=B6nnblom?= <hofors@lysator.liu.se>, =?utf-8?q?Mat?=\n\t=?utf-8?q?tias_R=C3=B6nnblom?= <mattias.ronnblom@ericsson.com>,\n \"John W . Linville\" <linville@tuxdriver.com>", "Cc": "dev@dpdk.org, Tyler Retzlaff <roretzla@linux.microsoft.com>,\n Honnappa Nagarahalli <Honnappa.Nagarahalli@arm.com>", "References": "<20240423090813.94110-1-mattias.ronnblom@ericsson.com>\n <6f7aabcb-2c12-4cfe-ae9d-73b42bfd4977@amd.com>\n <63dbb564-61f6-4d9f-9c13-4a21f5e97dc9@lysator.liu.se>\n <5d2a0887-527a-4948-943c-65f1dfda9328@amd.com>\n <3b2cf48e-2293-4226-b6cd-5f4dd3969f99@lysator.liu.se>", "Content-Language": "en-US", "From": "Ferruh Yigit <ferruh.yigit@amd.com>", "Autocrypt": "addr=ferruh.yigit@amd.com; keydata=\n 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 8Zk=", "In-Reply-To": "<3b2cf48e-2293-4226-b6cd-5f4dd3969f99@lysator.liu.se>", "Content-Type": "text/plain; charset=UTF-8", "Content-Transfer-Encoding": "8bit", "X-ClientProxiedBy": "DU2PR04CA0319.eurprd04.prod.outlook.com\n (2603:10a6:10:2b5::24) To CH2PR12MB4294.namprd12.prod.outlook.com\n (2603:10b6:610:a9::11)", "MIME-Version": "1.0", "X-MS-PublicTrafficType": "Email", "X-MS-TrafficTypeDiagnostic": "CH2PR12MB4294:EE_|PH0PR12MB5647:EE_", "X-MS-Office365-Filtering-Correlation-Id": "8376bb34-b3ac-428e-9efa-08dc64871684", "X-MS-Exchange-SenderADCheck": "1", "X-MS-Exchange-AntiSpam-Relay": "0", "X-Microsoft-Antispam": "BCL:0;", "X-Microsoft-Antispam-Message-Info": "=?utf-8?q?YaXutkeYJ73Bapj+HMpQHIZahzw8VqJ?=\n\t=?utf-8?q?Sxk/j5xrplH8lN4cxKj69ZPSu1aFVfKe7xglvC24fxbpKGrf8n2BP7zTDlReU1ZZZ?=\n\t=?utf-8?q?UFTCTS3jt+AWheC3a1qerZvik0+82LQcL8ISn9jJC5U2E3RVbf7UwULbthrRAoe4D?=\n\t=?utf-8?q?wqR0yCnTeTo3Qu/VttMBtdK8J8lIS+I7wv8yXXFcG0++DErv6MrSYRkKSZRXRf1M/?=\n\t=?utf-8?q?x7j3Njz7lALotKfrl1lwp4sVp8NpF9bc/yc5NBnItWXeDZNocz2WT/VTYkcb5bTJ2?=\n\t=?utf-8?q?6Apo7VmjAMUmWSUJ9UWUBE2JZ1dtJYThJXTwJVA9NbG3YJIqtNY2MnI/tFAXXIxCk?=\n\t=?utf-8?q?jXx9FZjfBA8nBzLSWTpqX2ZJVatKxN/sXh3+lbRJUqczNwhS5Vo8lga91RqnYf1KP?=\n\t=?utf-8?q?JEONg/0n63I2em0+1smbZ5cHFqtyTvSdQ/x73YhaGkund27xAlwMVZUnTwYfsnN1/?=\n\t=?utf-8?q?aMKcT2lvTcPMKGQ6vkxG4apqkYJkiHuQ6CJZJgUkatZmTlixdOUfrft2OgWvHZXpF?=\n\t=?utf-8?q?OIaZ4YcXhH6yBoQI0sCQEed8I1AcRQo90FWFhJRg5FqHUrwh5+juF/JBwBytNqeDI?=\n\t=?utf-8?q?x0qJA+nj+BGcyjqvgmwP0ZAiXaB/2p56iriZcNTsz95UobWDCIf7NZ0knoTn7ZrwE?=\n\t=?utf-8?q?ipSDFxNzGAUj67Wa6y+gj3MQ5aNVb6JS+RCHytRr2L/XgsMLHqUh1uIebLSAjrnPC?=\n\t=?utf-8?q?4dpIvt9c+w5QDxCDDfN8JKuP72cDMrYOr3aH8KgfxRw/M5toB0MMfdjU3MsSv7Snh?=\n\t=?utf-8?q?CHJDO0DuirocDG+GMI2mclgJi6mZd4sh7zrgw+A+8RTSXT6w6EGsNJABHiUOPZrad?=\n\t=?utf-8?q?+LO8Z0oX8RrPH6tZtkJ3wmSMCJgYDelPAr6uNXV1xLJVJu8XFBXGdgobkfu/ozJCs?=\n\t=?utf-8?q?4tT2kOnqfICujMT+lR+ta1uhlCSHNlcH/5rzwztTY/XJbqdHXG0xyPrHC+YdWZjuH?=\n\t=?utf-8?q?Qel5E6Ae6uNP+0OkHCqAMlat7PBnU5DkN5Q2poAez/nOBzgZtsRYqkSh0OL516Nb2?=\n\t=?utf-8?q?jEXAT9TF9TjyW+N8Vml4fEMxVPpYyB6bXqt1GDZAuidgON3zRC7+/Q6kiDyh3V5ps?=\n\t=?utf-8?q?O2PLf4YlFgMmQv5OLPXsbXcMdH7qdaCjvgbILDSA3u2HlkEZMiZOJQBO0j6HFI4fM?=\n\t=?utf-8?q?Ylg7wTS255hzgy8wsMj/t7WlOE/UZ7mhPVfjtPoSNb9UtPOTv0arZg/NxMdPh1FFY?=\n\t=?utf-8?q?fwRZpjmgHoRHng+gEeh2y01kpRXoHXlbaDKA=3D=3D?=", "X-Forefront-Antispam-Report": "CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:;\n IPV:NLI; SFV:NSPM; H:CH2PR12MB4294.namprd12.prod.outlook.com; PTR:; CAT:NONE;\n SFS:(13230031)(1800799015)(366007)(376005); DIR:OUT; SFP:1101;", "X-MS-Exchange-AntiSpam-MessageData-ChunkCount": "1", "X-MS-Exchange-AntiSpam-MessageData-0": "=?utf-8?q?GxfUvC01v8UcV+3euacInk3Nn6LR?=\n\t=?utf-8?q?BGzLEpJRBl75u8+hmk3BqGzJh/ofZZa6mtJxccXHoIXxwqKksguG4Cfz57bPc7Gr6?=\n\t=?utf-8?q?4e/bpufVuXvmNZdWA/vYp6zI0xYqdvVBYQCxzAcHudoB65fVJj6WE4f3KDXNjQIFO?=\n\t=?utf-8?q?1OFdDR1HFjY/QZCCnpv5NGdr8C+WwFD75kTz3EWwOuaNYWcOIE9IZsC5ygHzT+dPW?=\n\t=?utf-8?q?5OvNoBo8T2TOGcG7EjSn21JUrERGb/8Uu//k0yUQLfVGn2HYKeF0x939STmaFHBbr?=\n\t=?utf-8?q?PQAzZA1obxim0JShJW4+J69QIHRBwtLj+SHZvwK78Ri11gXtZXKE58BkboA/POxAi?=\n\t=?utf-8?q?2F8ImILBY0rm/4QZwz365d+KrftslpPhhKS9QCrBFksp4CJR7ssjD9Ty6y6wngQom?=\n\t=?utf-8?q?Job9kjvGduRlci7b6K2y8jze6jX99DRVomKAskivqxixPXdhg1Klxq7YcJ2QVov6R?=\n\t=?utf-8?q?lu/w6xCDyPoID9SaTiRJSclyiiE7GeNlWk5UCKkNvtF7vRrzUBXq6aIzjBpvuZgXS?=\n\t=?utf-8?q?YPLe3AMnKFJaUGdB3jzrQj8g9kyNoOyyYhG8hTUOQwc3uIAtmOco2M48QfV3DlbCc?=\n\t=?utf-8?q?xavgNc95c7Fdq/S+v3Bwe8iUqFjv5YqbyPnfomYvcoX5lj2ATKr8yGI0dhOG2/XB5?=\n\t=?utf-8?q?HJ8lO3dOA1kuI7isLjfc3CY9hPoXOAV2gVpdqRehszKUCqeiAh5ReR2p2A6foE3h4?=\n\t=?utf-8?q?LNgjbphzpACWsWVpsUZI+ieV3xXEiasz+WwmKcZeQ5OudX6nXC8lX6CsxBDRhmNut?=\n\t=?utf-8?q?2ew5mF9PsMRxxDPK81G1oW8MMEL30NFz39b+WqsqjlFYvM3OnXFsBsxQ8hKFy9S+y?=\n\t=?utf-8?q?emxhHpQsPJ/av54Kxw2bPf9WNHvKiFgCO9yWDejQnPQ6QPAX8mSaSqWAaz6o/wQNm?=\n\t=?utf-8?q?S5EslQ/H79wy4ndYtjmSEoNu5JF72hp2Iee7HwejkevBdOPtTLxWL2bD58+nC+y1t?=\n\t=?utf-8?q?yyt82oif/tMpRRLPPR/ROCrPpLc2LVUO5WQPuHvftL76/k+JvuliPfufb2eI2Kcmw?=\n\t=?utf-8?q?Bu4Tyc3ybca71iotZvyxp72Q/61oza3jLgK2L+/ulfExXNgZkL+B5+bDxRLlQE6BS?=\n\t=?utf-8?q?gPdjF8rOpgRzbwluv5L6z1ylCjz/SpNg3imw/BXh8cliU4xukK5MYZFVL1ntRqcj7?=\n\t=?utf-8?q?U3GhUhFZV5gwrQvIZP8fSZUfrvMlRCLqJ0/EoCh7Ks8qXmGjHErDQcswN+I+F3R1J?=\n\t=?utf-8?q?oZp28WN4QrsQaRv3NyVmQI1XYrXliHQLqgOq6hgQq4e8SeZ7pOC2yNzT0CLnPNd5Y?=\n\t=?utf-8?q?q/CFD4wc1f7d1lRqqB3YqyexYVl6/DjU6wg2AnWBDHLtSZs+wsH4w6nI9uakBmipW?=\n\t=?utf-8?q?COQpOrmg+I/kAdf1FwCiFUnOdCCacgNt5aSeMvGNTegy3yCKGSpBWUkZ3bhEf/MMg?=\n\t=?utf-8?q?cscUOk9ZJJL9EZMwrwQyKYUKMImnXvozt+Uo8GFGVNmZ2dPLn1gkHzult153Qimxw?=\n\t=?utf-8?q?1dsJDaGSk7Tyk+Ysq4Ud3syWZqqSVTpyIhTVy0uAQbFqng54kcJAJmQadxk3p5/HZ?=\n\t=?utf-8?q?/X1ekRN1dHep?=", "X-OriginatorOrg": "amd.com", "X-MS-Exchange-CrossTenant-Network-Message-Id": "\n 8376bb34-b3ac-428e-9efa-08dc64871684", "X-MS-Exchange-CrossTenant-AuthSource": "CH2PR12MB4294.namprd12.prod.outlook.com", "X-MS-Exchange-CrossTenant-AuthAs": "Internal", "X-MS-Exchange-CrossTenant-OriginalArrivalTime": "24 Apr 2024 17:50:54.3409 (UTC)", "X-MS-Exchange-CrossTenant-FromEntityHeader": "Hosted", "X-MS-Exchange-CrossTenant-Id": "3dd8961f-e488-4e60-8e11-a82d994e183d", "X-MS-Exchange-CrossTenant-MailboxType": "HOSTED", "X-MS-Exchange-CrossTenant-UserPrincipalName": "\n qIRubLc5gdZiVcg18Hp4fHJ6KWWkJDKLycVLeJTmND7tcF70LI2gcVH1fjPp5NcL", "X-MS-Exchange-Transport-CrossTenantHeadersStamped": "PH0PR12MB5647", "X-BeenThere": "dev@dpdk.org", "X-Mailman-Version": "2.1.29", "Precedence": "list", "List-Id": "DPDK patches and discussions <dev.dpdk.org>", "List-Unsubscribe": "<https://mails.dpdk.org/options/dev>,\n <mailto:dev-request@dpdk.org?subject=unsubscribe>", "List-Archive": "<http://mails.dpdk.org/archives/dev/>", "List-Post": "<mailto:dev@dpdk.org>", "List-Help": "<mailto:dev-request@dpdk.org?subject=help>", "List-Subscribe": "<https://mails.dpdk.org/listinfo/dev>,\n <mailto:dev-request@dpdk.org?subject=subscribe>", "Errors-To": "dev-bounces@dpdk.org" }, "addressed": null }, { "id": 169642, "web_url": "http://patches.dpdk.org/comment/169642/", "msgid": "<7e987e8c-27f4-42e5-81f8-3b768e9f150c@amd.com>", "list_archive_url": "https://inbox.dpdk.org/dev/7e987e8c-27f4-42e5-81f8-3b768e9f150c@amd.com", "date": "2024-04-24T18:02:47", "subject": "Re: [PATCH] net/af_packet: cache align Rx/Tx structs", "submitter": { "id": 2700, "url": "http://patches.dpdk.org/api/people/2700/?format=api", "name": "Ferruh Yigit", "email": "ferruh.yigit@amd.com" }, "content": "On 4/24/2024 11:28 AM, Bruce Richardson wrote:\n> On Wed, Apr 24, 2024 at 11:21:52AM +0100, Ferruh Yigit wrote:\n>> On 4/23/2024 9:56 PM, Mattias Rönnblom wrote:\n>>> On 2024-04-23 13:15, Ferruh Yigit wrote:\n>>>> On 4/23/2024 10:08 AM, Mattias Rönnblom wrote:\n>>>>> Cache align Rx and Tx queue struct to avoid false sharing.\n>>>>>\n>>>>> RX struct happens to be 64 bytes on x86_64 already, so cache\n>>>>> alignment makes no change there, but it does on 32-bit ISAs.\n>>>>>\n>>>>> TX struct is 56 bytes on x86_64.\n>>>>>\n>>>>\n>>>> Hi Mattias,\n>>>>\n>>>> No objection to the patch. Is the improvement theoretical or do you\n>>>> measure any improvement practically, if so how much is the\n>>>> improvement?\n>>>>\n>>>\n>>> I didn't run any benchmarks.\n>>>\n>>> Two cores storing to a (falsely) shared cache line on a per-packet\n>>> basis is going to be very expensive, at least for \"light touch\"\n>>> applications.\n>>>\n>>\n>> ack I expect for af_packet bottleneck is the kernel side, so I don't\n>> expect any visible improvement practically, but OK to fix this\n>> theoretical issue.\n>>\n>>>>> Both structs keep counters, and in the RX case they are updated even\n>>>>> for empty polls.\n>>>>>\n>>>>\n>>>> Do you think does it help if move 'rx_pkts' & 'rx_bytes' update within\n>>>> the loop?\n>>>>\n>>>\n>>> No, why? Wouldn't that be worse? Especially since rx_pkts and rx_bytes\n>>> are declared volatile, so you are forcing a load-modify-store cycle for\n>>> every increment.\n>>>\n>>\n>> My intention was to prevent updating stats in empty polls, I thought\n>> stats will be hot in the cache but won't work with volatile.\n>>\n> Yes, it will. Volatile only prevents caching in registers, it does not\n> affect the storing of data within the cache hierarchy. Reads/writes of\n> stats on empty polls should indeed hit the L1 as expected. However, that is\n> still less efficient than just doing a register increment which could\n> theoretically be the result without the volatile.\n> \n> \n\nThanks Bruce for clarification.", "headers": { "Return-Path": "<dev-bounces@dpdk.org>", "X-Original-To": "patchwork@inbox.dpdk.org", "Delivered-To": "patchwork@inbox.dpdk.org", "Received": [ "from mails.dpdk.org (mails.dpdk.org [217.70.189.124])\n\tby inbox.dpdk.org (Postfix) with ESMTP id D1E1643EF9;\n\tWed, 24 Apr 2024 20:02:55 +0200 (CEST)", "from mails.dpdk.org (localhost [127.0.0.1])\n\tby mails.dpdk.org (Postfix) with ESMTP id A8968435C0;\n\tWed, 24 Apr 2024 20:02:55 +0200 (CEST)", "from NAM10-MW2-obe.outbound.protection.outlook.com\n (mail-mw2nam10on2062.outbound.protection.outlook.com [40.107.94.62])\n by mails.dpdk.org (Postfix) with ESMTP id EC752435BE\n for <dev@dpdk.org>; Wed, 24 Apr 2024 20:02:53 +0200 (CEST)", "from CH2PR12MB4294.namprd12.prod.outlook.com (2603:10b6:610:a9::11)\n by DM6PR12MB4108.namprd12.prod.outlook.com (2603:10b6:5:220::18) with\n Microsoft SMTP Server (version=TLS1_2,\n cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7519.24; Wed, 24 Apr\n 2024 18:02:51 +0000", "from CH2PR12MB4294.namprd12.prod.outlook.com\n ([fe80::282f:29d3:cac1:cde3]) by CH2PR12MB4294.namprd12.prod.outlook.com\n ([fe80::282f:29d3:cac1:cde3%7]) with mapi id 15.20.7472.044; Wed, 24 Apr 2024\n 18:02:51 +0000" ], "ARC-Seal": "i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;\n b=Gq0ztAWY7lDNF4ohiZZvyTgcPDeJ+m5sLnhUSBhAyBgbqmpn67mbrz1Y1HVAj5KXRy7DB8rRCHlpnCt1eFk0z+OAQWQ+AgrTfpVr7P2yUx6bWc51CPLcq4huQI52tLT+/8Ut7wo9GHTSwBvJRDxp1/RSSVIT78LLTTYudz/xcHoFdNH3xeqdivdSOjefCmf+bI8vqMBG6e5Ssfqawk3mteLmPlAzFyp6XMPSlGTiKOYFw8EazeaLQidWpX/Knhs1L+MvoKlQpJ97BeY45pZRzsxwco8ScammqRNakGgn70fQa6T6KdxsohRp6zA172gAzHeJ7zoO/vMv7OZ+1xgsoQ==", "ARC-Message-Signature": "i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;\n s=arcselector9901;\n h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;\n bh=NDNMkGOFqHvqnblkmWaoqd1K47P9QvfTJuoIjkG/L1g=;\n b=Wh2oee0B6UDuDcVhRJeBvAfhgJBG3HxtcGFfdnfKUgVKBvLI39zyjuMFD23c8t3C7O2mtRvWsCOx6C0lOdRhca8PbYwrFe98BVWkRO8PZN7rxswowfXzt72rzgiuEisstZr7u2sfRD0utspDkbfg5jwAK5Tg8+TRkBoiY6L6MjWAM11TIbA9Bvcccyjd/eclnz92fvTmGWonqPptdzduPxY4n4WbkQQAMx0+PuINBenYhSfZO16gdE93aJ3WKbermG4LyRkBJWrrtmyGAovnW2u2Gr0NKTh4iBVKWS/jt/6khMPXEXm2ZFpMwzAJLi44RlYyquwRGAc+lBy0TjXdlw==", "ARC-Authentication-Results": "i=1; mx.microsoft.com 1; spf=pass\n smtp.mailfrom=amd.com; dmarc=pass action=none header.from=amd.com; dkim=pass\n header.d=amd.com; arc=none", "DKIM-Signature": "v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1;\n h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;\n bh=NDNMkGOFqHvqnblkmWaoqd1K47P9QvfTJuoIjkG/L1g=;\n b=amZgjmieylaGkBhaKH5/oZ5sOmQ+x2CmHs9pCu9YECf+0tCoYh/1llrtZnQwNa5zGS+9rW/P6MMLv6KtjLdF56IXiDVJZnLbb3lIM1kBuNUQacBzcDExtbxDxG42MoOP5A7zRLT1sEvyj9un1vDVDVoFQDguCd50kHfi1SeSMpI=", "Authentication-Results": "dkim=none (message not signed)\n header.d=none;dmarc=none action=none header.from=amd.com;", "Message-ID": "<7e987e8c-27f4-42e5-81f8-3b768e9f150c@amd.com>", "Date": "Wed, 24 Apr 2024 19:02:47 +0100", "User-Agent": "Mozilla Thunderbird", "Subject": "Re: [PATCH] net/af_packet: cache align Rx/Tx structs", "To": "Bruce Richardson <bruce.richardson@intel.com>", "Cc": "=?utf-8?q?Mattias_R=C3=B6nnblom?= <hofors@lysator.liu.se>, =?utf-8?q?Mat?=\n\t=?utf-8?q?tias_R=C3=B6nnblom?= <mattias.ronnblom@ericsson.com>,\n \"John W . Linville\" <linville@tuxdriver.com>, dev@dpdk.org,\n Tyler Retzlaff <roretzla@linux.microsoft.com>,\n Honnappa Nagarahalli <Honnappa.Nagarahalli@arm.com>", "References": "<20240423090813.94110-1-mattias.ronnblom@ericsson.com>\n <6f7aabcb-2c12-4cfe-ae9d-73b42bfd4977@amd.com>\n <63dbb564-61f6-4d9f-9c13-4a21f5e97dc9@lysator.liu.se>\n <5d2a0887-527a-4948-943c-65f1dfda9328@amd.com>\n <Zijewu5AFTPj0Q88@bricha3-mobl1.ger.corp.intel.com>", "Content-Language": "en-US", "From": "Ferruh Yigit <ferruh.yigit@amd.com>", "Autocrypt": "addr=ferruh.yigit@amd.com; keydata=\n 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 8Zk=", "In-Reply-To": "<Zijewu5AFTPj0Q88@bricha3-mobl1.ger.corp.intel.com>", "Content-Type": "text/plain; charset=UTF-8", "Content-Transfer-Encoding": "8bit", "X-ClientProxiedBy": "LO4P123CA0561.GBRP123.PROD.OUTLOOK.COM\n (2603:10a6:600:33b::10) To CH2PR12MB4294.namprd12.prod.outlook.com\n (2603:10b6:610:a9::11)", "MIME-Version": "1.0", "X-MS-PublicTrafficType": "Email", "X-MS-TrafficTypeDiagnostic": "CH2PR12MB4294:EE_|DM6PR12MB4108:EE_", "X-MS-Office365-Filtering-Correlation-Id": "1aad970f-9980-4f87-7e57-08dc6488c1f8", "X-MS-Exchange-SenderADCheck": "1", "X-MS-Exchange-AntiSpam-Relay": "0", "X-Microsoft-Antispam": "BCL:0;ARA:13230031|376005|1800799015|366007;", "X-Microsoft-Antispam-Message-Info": "=?utf-8?q?S/NlCbh3Dxcrg7I+jDWIbooTC3nEFtS?=\n\t=?utf-8?q?LCuVO2SauucbFHxXS3OTm0uENpwRGfxtOSTrzk6TEXg6sSXDrpNW+hGLukM2bU9gZ?=\n\t=?utf-8?q?7f/T3QimqXTvls3B5OwACsjw2amzF2Os/5O58utMlBLkcMe/gLn5ItfJEemddZI8E?=\n\t=?utf-8?q?rr36oEffkNiAOvFx/xupviGO7ePSQvTtJHlYSF/SmEW3UUXgKPLHtRLcj7cCnVFgB?=\n\t=?utf-8?q?onZxdDq2umMxw/JQ7EDa9Ay6lBltxlFGAbICfVoiD7UDTtlAJ+b62TGZJHO73oN0p?=\n\t=?utf-8?q?xka8GqkjTllaz0fWMhVyYCimQ2WhfwIoNIMkZil0ZvkUpUGEGIbE1HwaP8d5DewjH?=\n\t=?utf-8?q?p4H9HK4zQitXOFuOg/hO10lbbojmWXG/yEz/q3GTOH7CIYDYS5+zZ9ES8LZ0UVwOR?=\n\t=?utf-8?q?8/DKb8E18gwZ+pT2ej127eOLLwtxKU6Cn392moahUN3/Txpv6qon6NUlEoEThF6hW?=\n\t=?utf-8?q?Txat38OgxKVOYvabBPcjAKicuXPgDpUQvrtGbeAspBqv79RhaLQ4zoMkhC2L3K9qu?=\n\t=?utf-8?q?jg6OuyGIvYUZuu3HX/0fTFvybtQqGRHdnoD7Iqx7lzKPupi7UTk6yP8ixQJ8TXbJ/?=\n\t=?utf-8?q?6bzs+R9KRIvBmOa6DKeqDD5VUMAmIqmzvnSWLIM4XkA3fN9qQ12+vCD/u4o0dLfqC?=\n\t=?utf-8?q?fsVyw/9XGMfFiJxmjETEB46fAzoyaQLcs+IGiU0XCX8iRrGcKVM0WK0wWASI6n6Hd?=\n\t=?utf-8?q?n6CbUSVRznl0rZUe7ZmsLgQleT+xv6R/SD+GV5hjJkR12DKf+64RkyrPfq4TT8zwV?=\n\t=?utf-8?q?oVL4C3K63spNOVyEcT8Xgonun/8rCy/wrh71vVK6vF29UzAUVvU8Uyr0nh6H7D6Ri?=\n\t=?utf-8?q?6DyC2PFLrKx+19PWR6o9aDd56fN6PrZVGmqHU7bZYqVvsWtZMPUi/LTKKWonrUld4?=\n\t=?utf-8?q?IhEEeperdbdqGHIKhtmYtref7OfJhDLoySgM29sJUviGIH42dYbDWkq5fDXD8k3z3?=\n\t=?utf-8?q?6c2ZrIaTUCLPwU68UiIywHgy2KAPTBcJq/q+0LCAHq9vj2xUeVHEvB69DR8HG7iAT?=\n\t=?utf-8?q?Lvk9XmvU8+WTuFw2Gg7YfIccUlV8vaxDafQ0FkgCwF6/QoxFRhpiGl5DMmgYXZXdN?=\n\t=?utf-8?q?PtsyJuJbR4Vz0WA6RSEdx5HSkuBsThK5KOJY/I8W4MtsieF8hyqH/oc2mIa2FiBWv?=\n\t=?utf-8?q?u9RFhin0IPQ7mQOP+dj/js3SBCMl3GxjEF10BsuIYFHvvSgB7H6foI5ls8gaCjAOw?=\n\t=?utf-8?q?Zgg6WMhDa6f7sfjH/IazTOAH6r2hoInU0wdA=3D=3D?=", "X-Forefront-Antispam-Report": "CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:;\n IPV:NLI; SFV:NSPM; H:CH2PR12MB4294.namprd12.prod.outlook.com; PTR:; CAT:NONE;\n SFS:(13230031)(376005)(1800799015)(366007); DIR:OUT; SFP:1101;", "X-MS-Exchange-AntiSpam-MessageData-ChunkCount": "1", "X-MS-Exchange-AntiSpam-MessageData-0": "=?utf-8?q?8+X7VtmOgNVMkLh8X4UNmcuaf+L+?=\n\t=?utf-8?q?BfrFZevLyHTBYijURNBHdp7PR67gmgKgtZSuapF4xV68tgRnipCNkjoh7ZkyER1CV?=\n\t=?utf-8?q?A0fEcgI4vrVo8CJ13xFw6xFnHGbphZ/6ZXKaHOswcXpz6KsLtGzQoa2cWaD95JR5b?=\n\t=?utf-8?q?9MrorCnrEtkLiWsNJTtLwTOgqrSoBLoWHXYmqpIrkYT39LZQ7AgwrrtG5QIGeFiw3?=\n\t=?utf-8?q?EGpEgjBpij2q+qzh0ApLr/Km8dfy74ZKLifpa4tEWxzCSt8aCrzz/6689VGLYHsvp?=\n\t=?utf-8?q?rXYBUH741B0E/CC1peUboD57AKr4/NHUrwMdcb8Fj6+7HM+gT9ZLpk7jTCOmWMoy0?=\n\t=?utf-8?q?U7PX+ysilczNrP13erlZKYw1l9v04ImZ0gxwIYNYCmyfqQNDjN6p/CQdRMHGilPhg?=\n\t=?utf-8?q?QF7Re0Ei6CrRzX1nCCNP7nhp6qRkuc/7Ld1xjzBhFI1yDDZFPiVtpB5fUX3ykZxC/?=\n\t=?utf-8?q?ra/EfJCZehJR/8Kl9/cDL3wxkona/MGsvDlArellLJXHWyAcvqMOvQDMjO27k0QgG?=\n\t=?utf-8?q?tLAmRnyCSnuwWJXuChYYplQfULRZfknBgKiB4DcWo3fG4CuI2ziup3lbuUoEWtHmC?=\n\t=?utf-8?q?GJYjR48dSCwxTXbP6TD7mo3Q7oDzKi5DSGdaUidMk94xFgJeqI0Decfh+qcOeZdUo?=\n\t=?utf-8?q?SMW4TNx218wvvc4hxVsmQJD5Ku9gwEeR46V38MacRac1CQ1p1T3RGpTYbBDjfw2q7?=\n\t=?utf-8?q?VJc6OnxzCWXWyEFPKzzxd3wVRjOPKIgqsVam9znrwbSQajzpc+BxHvpN6BZFCWKEa?=\n\t=?utf-8?q?XnvBrRnIIKoGv3D3slzmQI/jUH4Fmpmi8E3ztcE6GGvvSHKZmzeBOztUkVDZ5pm4M?=\n\t=?utf-8?q?4wA3JUGNV6t7adO7AJT9UbSkGFcI7ADrIb/5Bx+gAXr8LYSDw+MnLQhqk/Fa5OpuL?=\n\t=?utf-8?q?8mgpaUmwA3r1LAVIYDaj8w5UFCZ6L7QQY95ZBThvvJ1saBp/FQbqQrr7bB6TQKbO9?=\n\t=?utf-8?q?W6+ousQKasAXHCkTxBCrFxlOQE8kuF+kbfKXHO7u+nOTJz83x5P4qehvqUM0CVP1p?=\n\t=?utf-8?q?OhjjbqSaAXuXrYP6HMB///FmEbOryKpltkgamLZacFQEdMvoU/QYbtulTTxoXmsCq?=\n\t=?utf-8?q?knpv6GbxmdZAqivLLxOC0kUcxV2OgVcJ1z/k4a31Rh5Ne0eUjcrHQKb/zgDg0EmqH?=\n\t=?utf-8?q?ZSimYzNYJY8uTOjJf2F1PQzSo6OSt9A2DLYsRwmTDT/rnsh+e0ZYRRRt/j0ewfBMf?=\n\t=?utf-8?q?yOZkhm4kxKaK/BVOLvb25RNJiWJxFcjrU9oSK0ZSAuEdQd4iONGGTH4xVbdb5abM3?=\n\t=?utf-8?q?aoyZR/mw9l8/v7k3apoAYi8PWykaAb1NqvseK8kT9xTrwA2oBmW5JqZgYss7nz6Pb?=\n\t=?utf-8?q?TKDNFHUcj6GLkfHIfh+naIbfvrOk99Ru3nr4PSLP//c26iu9z7de2N7a66UUAkH7m?=\n\t=?utf-8?q?ZKiW+xmIrwa/BzNwmnF56gRxPZxSeqPSAdLKMyz8NHNWhO5HrMCL4yuoWSds3U8B9?=\n\t=?utf-8?q?UGAJeIVtaYr7P/WU9k0nLBcqI/hTkY+dhmTMjIgsVm8vc0rb8UZq5XpifGcAJknnb?=\n\t=?utf-8?q?sC3JH9bMu8Ab?=", "X-OriginatorOrg": "amd.com", "X-MS-Exchange-CrossTenant-Network-Message-Id": "\n 1aad970f-9980-4f87-7e57-08dc6488c1f8", "X-MS-Exchange-CrossTenant-AuthSource": "CH2PR12MB4294.namprd12.prod.outlook.com", "X-MS-Exchange-CrossTenant-AuthAs": "Internal", "X-MS-Exchange-CrossTenant-OriginalArrivalTime": "24 Apr 2024 18:02:51.4603 (UTC)", "X-MS-Exchange-CrossTenant-FromEntityHeader": "Hosted", "X-MS-Exchange-CrossTenant-Id": "3dd8961f-e488-4e60-8e11-a82d994e183d", "X-MS-Exchange-CrossTenant-MailboxType": "HOSTED", "X-MS-Exchange-CrossTenant-UserPrincipalName": "\n 9v+2dhG7QmV5qlUZ1KsG7VMFAa4jT5LWUtq9DlqyUpLSD8PRpm2tDX98EDbu4BC7", "X-MS-Exchange-Transport-CrossTenantHeadersStamped": "DM6PR12MB4108", "X-BeenThere": "dev@dpdk.org", "X-Mailman-Version": "2.1.29", "Precedence": "list", "List-Id": "DPDK patches and discussions <dev.dpdk.org>", "List-Unsubscribe": "<https://mails.dpdk.org/options/dev>,\n <mailto:dev-request@dpdk.org?subject=unsubscribe>", "List-Archive": "<http://mails.dpdk.org/archives/dev/>", "List-Post": "<mailto:dev@dpdk.org>", "List-Help": "<mailto:dev-request@dpdk.org?subject=help>", "List-Subscribe": "<https://mails.dpdk.org/listinfo/dev>,\n <mailto:dev-request@dpdk.org?subject=subscribe>", "Errors-To": "dev-bounces@dpdk.org" }, "addressed": null }, { "id": 169645, "web_url": "http://patches.dpdk.org/comment/169645/", "msgid": "<20240424121330.7547e290@hermes.local>", "list_archive_url": "https://inbox.dpdk.org/dev/20240424121330.7547e290@hermes.local", "date": "2024-04-24T19:13:30", "subject": "Re: [PATCH] net/af_packet: cache align Rx/Tx structs", "submitter": { "id": 27, "url": "http://patches.dpdk.org/api/people/27/?format=api", "name": "Stephen Hemminger", "email": "stephen@networkplumber.org" }, "content": "On Wed, 24 Apr 2024 18:50:50 +0100\nFerruh Yigit <ferruh.yigit@amd.com> wrote:\n\n> > I don't know how slow af_packet is, but if you care about performance,\n> > you don't want to use atomic add for statistics.\n> > \n> \n> There are a few soft drivers already using atomics adds for updating stats.\n> If we document expectations from 'rte_eth_stats_reset()', we can update\n> those usages.\n\nUsing atomic add is lots of extra overhead. The statistics are not guaranteed\nto be perfect. If nothing else, the bytes and packets can be skewed.\n\nThe soft drivers af_xdp, af_packet, and tun performance is dominated by the\noverhead of the kernel system call and copies. Yes, alignment is good\nbut won't be noticeable.", "headers": { "Return-Path": "<dev-bounces@dpdk.org>", "X-Original-To": "patchwork@inbox.dpdk.org", "Delivered-To": "patchwork@inbox.dpdk.org", "Received": [ "from mails.dpdk.org (mails.dpdk.org [217.70.189.124])\n\tby inbox.dpdk.org (Postfix) with ESMTP id 8A40043EF9;\n\tWed, 24 Apr 2024 21:13:35 +0200 (CEST)", "from mails.dpdk.org (localhost [127.0.0.1])\n\tby mails.dpdk.org (Postfix) with ESMTP id 63DAB40691;\n\tWed, 24 Apr 2024 21:13:35 +0200 (CEST)", "from mail-pg1-f179.google.com (mail-pg1-f179.google.com\n [209.85.215.179])\n by mails.dpdk.org (Postfix) with ESMTP id CF7B440689\n for <dev@dpdk.org>; Wed, 24 Apr 2024 21:13:33 +0200 (CEST)", "by mail-pg1-f179.google.com with SMTP id\n 41be03b00d2f7-602801ea164so147643a12.0\n for <dev@dpdk.org>; Wed, 24 Apr 2024 12:13:33 -0700 (PDT)", "from hermes.local (204-195-96-226.wavecable.com. [204.195.96.226])\n by smtp.gmail.com with ESMTPSA id\n m6-20020a62f206000000b006ea80883ce3sm11750026pfh.133.2024.04.24.12.13.32\n (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);\n Wed, 24 Apr 2024 12:13:32 -0700 (PDT)" ], "DKIM-Signature": "v=1; a=rsa-sha256; c=relaxed/relaxed;\n d=networkplumber-org.20230601.gappssmtp.com; s=20230601; t=1713986013;\n x=1714590813; darn=dpdk.org;\n h=content-transfer-encoding:mime-version:references:in-reply-to\n :message-id:subject:cc:to:from:date:from:to:cc:subject:date\n :message-id:reply-to;\n bh=Odu5MZD/xpqvHNkgNlfKc2To3qQv76gLukACD0nJ2d8=;\n b=XxBSotgV8MN3XRdThHdp1TAa+jOh0rywSTL/tU/y+c69vyOhKSQTRYXcj/7ovp4Q7v\n d31X37b64BeN3q3jIw6eIALUVwv+i0RfvptnGvth9J+ag4vxyF2B3PiGadkgo25jgTY9\n bAGVEbDnZXN4ghk7PxSE0sF7twwOPn2R3h3hSF8L42bFvaOjh4CQBe80R85cUMWIrDOy\n oNmawszylsUcMp7yWzmVcDFmGl4tuj/O+4Znayr6YXdODnplGw4S6xaujfuB1LPuxdRl\n G+yX0mZq2vzdcGjk/VcN2d9+2XQZrH/4vf8e3pG3eJ/N2OA+ykcAPYOBhAZEFtpeUdvB\n VMZA==", "X-Google-DKIM-Signature": "v=1; a=rsa-sha256; c=relaxed/relaxed;\n d=1e100.net; s=20230601; t=1713986013; x=1714590813;\n h=content-transfer-encoding:mime-version:references:in-reply-to\n :message-id:subject:cc:to:from:date:x-gm-message-state:from:to:cc\n :subject:date:message-id:reply-to;\n bh=Odu5MZD/xpqvHNkgNlfKc2To3qQv76gLukACD0nJ2d8=;\n b=im+0xZfrAJS82d8co4EQNB3q9GNnej1TCMAVDQBo1FO87eFzaQ5BKqP8kwzvBlG4PU\n xpnR0DVB4k5RsoDVgz7Nqr6h5sT7/8QIpHK/Hw413hb/SN30el4GXVO74kcx//B9HQk7\n TraQJJEiaG/ArdoGfdKdeFu8cL8wtAZdmAbhJCJz5mUSH6PC7Yg8JE8/l17Qmgf9Qab8\n i3x2sLsNrqp2kkibAMOobXDhkt+pzwdRWIqgQA1mO8PC1g/QGewTqFfDjwceL+irvawH\n eBfH6Z0fOgaVtHCtm2imy/Vm4Sm/I6GsMo3y+PvKkAVUTpKIA7FeW0T3kgUk4u9v8IsH\n g2Lg==", "X-Forwarded-Encrypted": "i=1;\n AJvYcCUS3MToAu1KrwhJk32b9iGRtiphyjBlTYbGvGPkv/ZIzMWmw75IZqTkKhWdaLrlrcdjIiK0Pq/ttv+zYlQ=", "X-Gm-Message-State": "AOJu0YwhmtL2sxNqAZkdktFMX+x88Nvn0LNtWlTjYvhzJo0xB/qx36TJ\n XjNbNT9AywOFhCKIGQ1nllbO5wbfTi55cheXjRUc2Q3lZHeyUeHTCMIYag0JOaE=", "X-Google-Smtp-Source": "\n AGHT+IGN9Jj6+VQKmRpqEsTVseMW0j+AEp5c0zgPhVoCrDfdkqsBGjITJG8eWX6VxWhNUI6hVON8Lg==", "X-Received": "by 2002:a05:6a20:dd9d:b0:1a7:507a:c9f4 with SMTP id\n kw29-20020a056a20dd9d00b001a7507ac9f4mr3473019pzb.30.1713986012900;\n Wed, 24 Apr 2024 12:13:32 -0700 (PDT)", "Date": "Wed, 24 Apr 2024 12:13:30 -0700", "From": "Stephen Hemminger <stephen@networkplumber.org>", "To": "Ferruh Yigit <ferruh.yigit@amd.com>", "Cc": "Mattias =?utf-8?b?UsO2bm5ibG9t?= <hofors@lysator.liu.se>, Mattias\n\t=?utf-8?b?UsO2bm5ibG9t?= <mattias.ronnblom@ericsson.com>,\n \"John W . Linville\" <linville@tuxdriver.com>, dev@dpdk.org,\n Tyler Retzlaff <roretzla@linux.microsoft.com>,\n Honnappa Nagarahalli <Honnappa.Nagarahalli@arm.com>", "Subject": "Re: [PATCH] net/af_packet: cache align Rx/Tx structs", "Message-ID": "<20240424121330.7547e290@hermes.local>", "In-Reply-To": "<0ff40e60-926b-44eb-8af5-2e16aff1c336@amd.com>", "References": "<20240423090813.94110-1-mattias.ronnblom@ericsson.com>\n <6f7aabcb-2c12-4cfe-ae9d-73b42bfd4977@amd.com>\n <63dbb564-61f6-4d9f-9c13-4a21f5e97dc9@lysator.liu.se>\n <5d2a0887-527a-4948-943c-65f1dfda9328@amd.com>\n <3b2cf48e-2293-4226-b6cd-5f4dd3969f99@lysator.liu.se>\n <0ff40e60-926b-44eb-8af5-2e16aff1c336@amd.com>", "MIME-Version": "1.0", "Content-Type": "text/plain; charset=US-ASCII", "Content-Transfer-Encoding": "7bit", "X-BeenThere": "dev@dpdk.org", "X-Mailman-Version": "2.1.29", "Precedence": "list", "List-Id": "DPDK patches and discussions <dev.dpdk.org>", "List-Unsubscribe": "<https://mails.dpdk.org/options/dev>,\n <mailto:dev-request@dpdk.org?subject=unsubscribe>", "List-Archive": "<http://mails.dpdk.org/archives/dev/>", "List-Post": "<mailto:dev@dpdk.org>", "List-Help": "<mailto:dev-request@dpdk.org?subject=help>", "List-Subscribe": "<https://mails.dpdk.org/listinfo/dev>,\n <mailto:dev-request@dpdk.org?subject=subscribe>", "Errors-To": "dev-bounces@dpdk.org" }, "addressed": null }, { "id": 169646, "web_url": "http://patches.dpdk.org/comment/169646/", "msgid": "<2371b1a8-bdc5-4184-8491-54e2e3a64211@lysator.liu.se>", "list_archive_url": "https://inbox.dpdk.org/dev/2371b1a8-bdc5-4184-8491-54e2e3a64211@lysator.liu.se", "date": "2024-04-24T22:27:36", "subject": "Re: [PATCH] net/af_packet: cache align Rx/Tx structs", "submitter": { "id": 906, "url": "http://patches.dpdk.org/api/people/906/?format=api", "name": "Mattias Rönnblom", "email": "hofors@lysator.liu.se" }, "content": "On 2024-04-24 21:13, Stephen Hemminger wrote:\n> On Wed, 24 Apr 2024 18:50:50 +0100\n> Ferruh Yigit <ferruh.yigit@amd.com> wrote:\n> \n>>> I don't know how slow af_packet is, but if you care about performance,\n>>> you don't want to use atomic add for statistics.\n>>> \n>>\n>> There are a few soft drivers already using atomics adds for updating stats.\n>> If we document expectations from 'rte_eth_stats_reset()', we can update\n>> those usages.\n> \n> Using atomic add is lots of extra overhead. The statistics are not guaranteed\n> to be perfect. If nothing else, the bytes and packets can be skewed.\n> \n\nThe sad thing here is that in case the counters are reset within the \nload-modify-store cycle of the lcore counter update, the reset may end \nup being a nop. So, it's not like you missed a packet or two, or suffer \nsome transient inconsistency, but you completed and permanently ignored \nthe reset request.\n\n> The soft drivers af_xdp, af_packet, and tun performance is dominated by the\n> overhead of the kernel system call and copies. Yes, alignment is good\n> but won't be noticeable.\n\nThere aren't any syscalls in the RX path in the af_packet PMD.\n\nI added the same statistics updates as the af_packet PMD uses into an \nbenchmark app which consumes ~1000 cc in-between stats updates.\n\nIf the equivalent of the RX queue struct was cache aligned, the \nstatistics overhead was so small it was difficult to measure. Less than \n3-4 cc per update. This was with volatile, but without atomics.\n\nIf the RX queue struct wasn't cache aligned, and sized so a cache line \ngenerally was used by two (neighboring) cores, the stats incurred a cost \nof ~55 cc per update.\n\nShaving off 55 cc should translate to a couple of hundred percent \nincreased performance for an empty af_packet poll. If your lcore has \nsome other primary source of work than the af_packet RX queue, and the \nRX queue is polled often, then this may well be a noticeable gain.\n\nThe benchmark was run on 16 Gracemont cores, which in my experience \nseems to have a little shorter core-to-core latency than many other \nsystems, provided the remote core/cache line owner is located in the \nsame cluster.", "headers": { "Return-Path": "<dev-bounces@dpdk.org>", "X-Original-To": "patchwork@inbox.dpdk.org", "Delivered-To": "patchwork@inbox.dpdk.org", "Received": [ "from mails.dpdk.org (mails.dpdk.org [217.70.189.124])\n\tby inbox.dpdk.org (Postfix) with ESMTP id 9993243EFA;\n\tThu, 25 Apr 2024 00:27:42 +0200 (CEST)", "from mails.dpdk.org (localhost [127.0.0.1])\n\tby mails.dpdk.org (Postfix) with ESMTP id 49AD4402BB;\n\tThu, 25 Apr 2024 00:27:42 +0200 (CEST)", "from mail.lysator.liu.se (mail.lysator.liu.se [130.236.254.3])\n by mails.dpdk.org (Postfix) with ESMTP id 2B1E14028A\n for <dev@dpdk.org>; Thu, 25 Apr 2024 00:27:41 +0200 (CEST)", "from mail.lysator.liu.se (localhost [127.0.0.1])\n by mail.lysator.liu.se (Postfix) with ESMTP id 5F1EAC181\n for <dev@dpdk.org>; Thu, 25 Apr 2024 00:27:40 +0200 (CEST)", "by mail.lysator.liu.se (Postfix, from userid 1004)\n id 3D4E3C0E3; Thu, 25 Apr 2024 00:27:40 +0200 (CEST)", "from [192.168.1.59] (h-62-63-215-114.A163.priv.bahnhof.se\n [62.63.215.114])\n (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)\n key-exchange X25519 server-signature RSA-PSS (2048 bits) server-digest\n SHA256)\n (No client certificate requested)\n by mail.lysator.liu.se (Postfix) with ESMTPSA id BFEDDC121;\n Thu, 25 Apr 2024 00:27:36 +0200 (CEST)" ], "X-Spam-Checker-Version": "SpamAssassin 4.0.0 (2022-12-13) on\n hermod.lysator.liu.se", "X-Spam-Level": "", "X-Spam-Status": "No, score=-1.3 required=5.0 tests=ALL_TRUSTED,AWL,\n T_SCC_BODY_TEXT_LINE autolearn=disabled version=4.0.0", "X-Spam-Score": "-1.3", "Message-ID": "<2371b1a8-bdc5-4184-8491-54e2e3a64211@lysator.liu.se>", "Date": "Thu, 25 Apr 2024 00:27:36 +0200", "MIME-Version": "1.0", "User-Agent": "Mozilla Thunderbird", "From": "=?utf-8?q?Mattias_R=C3=B6nnblom?= <hofors@lysator.liu.se>", "Subject": "Re: [PATCH] net/af_packet: cache align Rx/Tx structs", "To": "Stephen Hemminger <stephen@networkplumber.org>,\n Ferruh Yigit <ferruh.yigit@amd.com>", "Cc": "=?utf-8?q?Mattias_R=C3=B6nnblom?= <mattias.ronnblom@ericsson.com>,\n \"John W . Linville\" <linville@tuxdriver.com>, dev@dpdk.org,\n Tyler Retzlaff <roretzla@linux.microsoft.com>,\n Honnappa Nagarahalli <Honnappa.Nagarahalli@arm.com>", "References": "<20240423090813.94110-1-mattias.ronnblom@ericsson.com>\n <6f7aabcb-2c12-4cfe-ae9d-73b42bfd4977@amd.com>\n <63dbb564-61f6-4d9f-9c13-4a21f5e97dc9@lysator.liu.se>\n <5d2a0887-527a-4948-943c-65f1dfda9328@amd.com>\n <3b2cf48e-2293-4226-b6cd-5f4dd3969f99@lysator.liu.se>\n <0ff40e60-926b-44eb-8af5-2e16aff1c336@amd.com>\n <20240424121330.7547e290@hermes.local>", "Content-Language": "en-US", "In-Reply-To": "<20240424121330.7547e290@hermes.local>", "Content-Type": "text/plain; charset=UTF-8; format=flowed", "Content-Transfer-Encoding": "7bit", "X-Virus-Scanned": "ClamAV using ClamSMTP", "X-BeenThere": "dev@dpdk.org", "X-Mailman-Version": "2.1.29", "Precedence": "list", "List-Id": "DPDK patches and discussions <dev.dpdk.org>", "List-Unsubscribe": "<https://mails.dpdk.org/options/dev>,\n <mailto:dev-request@dpdk.org?subject=unsubscribe>", "List-Archive": "<http://mails.dpdk.org/archives/dev/>", "List-Post": "<mailto:dev@dpdk.org>", "List-Help": "<mailto:dev-request@dpdk.org?subject=help>", "List-Subscribe": "<https://mails.dpdk.org/listinfo/dev>,\n <mailto:dev-request@dpdk.org?subject=subscribe>", "Errors-To": "dev-bounces@dpdk.org" }, "addressed": null }, { "id": 169648, "web_url": "http://patches.dpdk.org/comment/169648/", "msgid": "<20240424165534.2ad8ae0a@hermes.local>", "list_archive_url": "https://inbox.dpdk.org/dev/20240424165534.2ad8ae0a@hermes.local", "date": "2024-04-24T23:55:34", "subject": "Re: [PATCH] net/af_packet: cache align Rx/Tx structs", "submitter": { "id": 27, "url": "http://patches.dpdk.org/api/people/27/?format=api", "name": "Stephen Hemminger", "email": "stephen@networkplumber.org" }, "content": "On Thu, 25 Apr 2024 00:27:36 +0200\nMattias Rönnblom <hofors@lysator.liu.se> wrote:\n\n> On 2024-04-24 21:13, Stephen Hemminger wrote:\n> > On Wed, 24 Apr 2024 18:50:50 +0100\n> > Ferruh Yigit <ferruh.yigit@amd.com> wrote:\n> > \n> >>> I don't know how slow af_packet is, but if you care about performance,\n> >>> you don't want to use atomic add for statistics.\n> >>> \n> >>\n> >> There are a few soft drivers already using atomics adds for updating stats.\n> >> If we document expectations from 'rte_eth_stats_reset()', we can update\n> >> those usages. \n> > \n> > Using atomic add is lots of extra overhead. The statistics are not guaranteed\n> > to be perfect. If nothing else, the bytes and packets can be skewed.\n> > \n> \n> The sad thing here is that in case the counters are reset within the \n> load-modify-store cycle of the lcore counter update, the reset may end \n> up being a nop. So, it's not like you missed a packet or two, or suffer \n> some transient inconsistency, but you completed and permanently ignored \n> the reset request.\n\nThat is one of the many reasons the Linux kernel intentionally did not\nimplement a reset statistics operation.", "headers": { "Return-Path": "<dev-bounces@dpdk.org>", "X-Original-To": "patchwork@inbox.dpdk.org", "Delivered-To": "patchwork@inbox.dpdk.org", "Received": [ "from mails.dpdk.org (mails.dpdk.org [217.70.189.124])\n\tby inbox.dpdk.org (Postfix) with ESMTP id CA26C43EFD;\n\tThu, 25 Apr 2024 01:55:40 +0200 (CEST)", "from mails.dpdk.org (localhost [127.0.0.1])\n\tby mails.dpdk.org (Postfix) with ESMTP id 5FF32402BB;\n\tThu, 25 Apr 2024 01:55:40 +0200 (CEST)", "from mail-pl1-f181.google.com (mail-pl1-f181.google.com\n [209.85.214.181])\n by mails.dpdk.org (Postfix) with ESMTP id D137C4028A\n for <dev@dpdk.org>; Thu, 25 Apr 2024 01:55:37 +0200 (CEST)", "by mail-pl1-f181.google.com with SMTP id\n d9443c01a7336-1e4f341330fso3968725ad.0\n for <dev@dpdk.org>; Wed, 24 Apr 2024 16:55:37 -0700 (PDT)", "from hermes.local (204-195-96-226.wavecable.com. [204.195.96.226])\n by smtp.gmail.com with ESMTPSA id\n o10-20020a17090a420a00b002ad059491f6sm8109419pjg.5.2024.04.24.16.55.36\n (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);\n Wed, 24 Apr 2024 16:55:36 -0700 (PDT)" ], "DKIM-Signature": "v=1; a=rsa-sha256; c=relaxed/relaxed;\n d=networkplumber-org.20230601.gappssmtp.com; s=20230601; t=1714002937;\n x=1714607737; darn=dpdk.org;\n h=content-transfer-encoding:mime-version:references:in-reply-to\n :message-id:subject:cc:to:from:date:from:to:cc:subject:date\n :message-id:reply-to;\n bh=1aTi/tMSAiF0CYPkqMAR76HhMz2L7cnYWjFW2pol3Ho=;\n b=2KYbtlsPBFkVT2FxQyZxE9W5/Zwl6rMYD1ymT86GfePLM5UotUh2OVRapFG5jEYX9y\n 7SthXZb19nE8jnjYDGxdiGmc2H4mtVo6oOBE66f8MxTklYvVfPRKK0EOhc0YqPlTZ9ct\n 6GWDuPZGKuRVTS7s3/443CDtkAP56bw0hDWiDhEVrFLr556ZAtl98CT7Z8D7ZLBS64Mr\n 5ab5SXlDG7gb3XqcI4RDmwo5d73hyG0WL/g9iGVctW6KWaWksha21gSXlaEoiSrzStAZ\n SVHhpGySJ2w525kh2b5BXthx9CFzqR3VJ88Zv+jFDRZlEC/xsZtz//zWUg0AIFjGL5GM\n K5sA==", "X-Google-DKIM-Signature": "v=1; a=rsa-sha256; c=relaxed/relaxed;\n d=1e100.net; s=20230601; t=1714002937; x=1714607737;\n h=content-transfer-encoding:mime-version:references:in-reply-to\n :message-id:subject:cc:to:from:date:x-gm-message-state:from:to:cc\n :subject:date:message-id:reply-to;\n bh=1aTi/tMSAiF0CYPkqMAR76HhMz2L7cnYWjFW2pol3Ho=;\n b=meWr4mGpdNsHrRo362FoXqq6mZpEnyI9cFt+0hx2HQXkXMx+h0tTEDtBMC8QivS0mM\n BD5+mZt0Pi3ZCQVmKOz5I1YkF7lTcM+SzQkT2ojKs309RkEaRi/I98Uiw+la1dkrue8N\n rQJ8oEgIS5TGOPE9/h3JHVbST5w25K2oTGpjHP47f0lwRWKOzljhLfJx+0bFJW1YdhCy\n GO/VDnD441aic+Uy5p9JzT/XeShPSRHC48GQzCVqzb46NjVGlrLEohqrFy795JT75ems\n d57bw2Vby5VsSfBT4CnxTEZLVJ8Qw1Kg3Q/P9xEJJcmdvDwaBB07npTbUwV1C3nzaodQ\n vMpg==", "X-Forwarded-Encrypted": "i=1;\n AJvYcCV/63zuiN6p6N7cu/iHa8R7I1CJllABSv9p0QHHvS9hZVX4y1aQTKulVj4yVr9BtVGugQXOZx0yHvylfww=", "X-Gm-Message-State": "AOJu0YybzIZ51Bqerj/VXOQq6TP9vvlmR71HT9Ah7vnz7cTBVe0BS44o\n Fxml9V2tVC+oYW+Fjrj1RC+2nPMa8spyAy99BQBPi5kuLk0HLzZK+4WdfBZocms=", "X-Google-Smtp-Source": "\n AGHT+IHUkGhkOFjYNvZiq/3QbLxSqYDPWHJsEvaRnsccBDMEE1e7cM2Og/Dccg5gyub8xcEKs7OYZw==", "X-Received": "by 2002:a17:90a:ab18:b0:29c:582d:bade with SMTP id\n m24-20020a17090aab1800b0029c582dbademr3862228pjq.2.1714002936899;\n Wed, 24 Apr 2024 16:55:36 -0700 (PDT)", "Date": "Wed, 24 Apr 2024 16:55:34 -0700", "From": "Stephen Hemminger <stephen@networkplumber.org>", "To": "Mattias =?utf-8?b?UsO2bm5ibG9t?= <hofors@lysator.liu.se>", "Cc": "Ferruh Yigit <ferruh.yigit@amd.com>,\n Mattias =?utf-8?b?UsO2bm5ibG9t?= <mattias.ronnblom@ericsson.com>,\n \"John W . Linville\" <linville@tuxdriver.com>, dev@dpdk.org,\n Tyler Retzlaff <roretzla@linux.microsoft.com>,\n Honnappa Nagarahalli <Honnappa.Nagarahalli@arm.com>", "Subject": "Re: [PATCH] net/af_packet: cache align Rx/Tx structs", "Message-ID": "<20240424165534.2ad8ae0a@hermes.local>", "In-Reply-To": "<2371b1a8-bdc5-4184-8491-54e2e3a64211@lysator.liu.se>", "References": "<20240423090813.94110-1-mattias.ronnblom@ericsson.com>\n <6f7aabcb-2c12-4cfe-ae9d-73b42bfd4977@amd.com>\n <63dbb564-61f6-4d9f-9c13-4a21f5e97dc9@lysator.liu.se>\n <5d2a0887-527a-4948-943c-65f1dfda9328@amd.com>\n <3b2cf48e-2293-4226-b6cd-5f4dd3969f99@lysator.liu.se>\n <0ff40e60-926b-44eb-8af5-2e16aff1c336@amd.com>\n <20240424121330.7547e290@hermes.local>\n <2371b1a8-bdc5-4184-8491-54e2e3a64211@lysator.liu.se>", "MIME-Version": "1.0", "Content-Type": "text/plain; charset=UTF-8", "Content-Transfer-Encoding": "quoted-printable", "X-BeenThere": "dev@dpdk.org", "X-Mailman-Version": "2.1.29", "Precedence": "list", "List-Id": "DPDK patches and discussions <dev.dpdk.org>", "List-Unsubscribe": "<https://mails.dpdk.org/options/dev>,\n <mailto:dev-request@dpdk.org?subject=unsubscribe>", "List-Archive": "<http://mails.dpdk.org/archives/dev/>", "List-Post": "<mailto:dev@dpdk.org>", "List-Help": "<mailto:dev-request@dpdk.org?subject=help>", "List-Subscribe": "<https://mails.dpdk.org/listinfo/dev>,\n <mailto:dev-request@dpdk.org?subject=subscribe>", "Errors-To": "dev-bounces@dpdk.org" }, "addressed": null }, { "id": 169653, "web_url": "http://patches.dpdk.org/comment/169653/", "msgid": "<4c0f1625-4387-4870-a60a-dc423885811e@lysator.liu.se>", "list_archive_url": "https://inbox.dpdk.org/dev/4c0f1625-4387-4870-a60a-dc423885811e@lysator.liu.se", "date": "2024-04-25T09:26:00", "subject": "Re: [PATCH] net/af_packet: cache align Rx/Tx structs", "submitter": { "id": 906, "url": "http://patches.dpdk.org/api/people/906/?format=api", "name": "Mattias Rönnblom", "email": "hofors@lysator.liu.se" }, "content": "On 2024-04-25 01:55, Stephen Hemminger wrote:\n> On Thu, 25 Apr 2024 00:27:36 +0200\n> Mattias Rönnblom <hofors@lysator.liu.se> wrote:\n> \n>> On 2024-04-24 21:13, Stephen Hemminger wrote:\n>>> On Wed, 24 Apr 2024 18:50:50 +0100\n>>> Ferruh Yigit <ferruh.yigit@amd.com> wrote:\n>>> \n>>>>> I don't know how slow af_packet is, but if you care about performance,\n>>>>> you don't want to use atomic add for statistics.\n>>>>> \n>>>>\n>>>> There are a few soft drivers already using atomics adds for updating stats.\n>>>> If we document expectations from 'rte_eth_stats_reset()', we can update\n>>>> those usages.\n>>>\n>>> Using atomic add is lots of extra overhead. The statistics are not guaranteed\n>>> to be perfect. If nothing else, the bytes and packets can be skewed.\n>>> \n>>\n>> The sad thing here is that in case the counters are reset within the\n>> load-modify-store cycle of the lcore counter update, the reset may end\n>> up being a nop. So, it's not like you missed a packet or two, or suffer\n>> some transient inconsistency, but you completed and permanently ignored\n>> the reset request.\n> \n> That is one of the many reasons the Linux kernel intentionally did not\n> implement a reset statistics operation.\n\nDPDK should deprecate statistics reset, it seems to me.\n\nThe current API is broken anyway, if you care about correctness. A reset \nfunction must return the current state of the counters, at the point \nthem being reset. Otherwise, a higher layer may miss counter updates.\n\nThe af_packet PMD should return -ENOTSUP on reset (which is allowed by \nthe API).\n\nMaintaining an offset-since-last-reset for counters is a control plane \nthing, and shouldn't be in PMDs. (If MT-safe reset for SW-managed \ncounters are to be expected from the PMDs, we should have some helper \nAPI to facilitate its efficient & correct-enough implementation.)", "headers": { "Return-Path": "<dev-bounces@dpdk.org>", "X-Original-To": "patchwork@inbox.dpdk.org", "Delivered-To": "patchwork@inbox.dpdk.org", "Received": [ "from mails.dpdk.org (mails.dpdk.org [217.70.189.124])\n\tby inbox.dpdk.org (Postfix) with ESMTP id 4C73243381;\n\tThu, 25 Apr 2024 11:26:06 +0200 (CEST)", "from mails.dpdk.org (localhost [127.0.0.1])\n\tby mails.dpdk.org (Postfix) with ESMTP id C5BC9436BD;\n\tThu, 25 Apr 2024 11:26:05 +0200 (CEST)", "from mail.lysator.liu.se (mail.lysator.liu.se [130.236.254.3])\n by mails.dpdk.org (Postfix) with ESMTP id 7D6BF436B3\n for <dev@dpdk.org>; Thu, 25 Apr 2024 11:26:04 +0200 (CEST)", "from mail.lysator.liu.se (localhost [127.0.0.1])\n by mail.lysator.liu.se (Postfix) with ESMTP id 36EFBE3CC\n for <dev@dpdk.org>; Thu, 25 Apr 2024 11:26:04 +0200 (CEST)", "by mail.lysator.liu.se (Postfix, from userid 1004)\n id 2B763E449; Thu, 25 Apr 2024 11:26:04 +0200 (CEST)", "from [192.168.1.59] (h-62-63-215-114.A163.priv.bahnhof.se\n [62.63.215.114])\n (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)\n key-exchange X25519 server-signature RSA-PSS (2048 bits) server-digest\n SHA256)\n (No client certificate requested)\n by mail.lysator.liu.se (Postfix) with ESMTPSA id 996ACE446;\n Thu, 25 Apr 2024 11:26:00 +0200 (CEST)" ], "X-Spam-Checker-Version": "SpamAssassin 4.0.0 (2022-12-13) on\n hermod.lysator.liu.se", "X-Spam-Level": "", "X-Spam-Status": "No, score=-1.3 required=5.0 tests=ALL_TRUSTED,AWL,\n T_SCC_BODY_TEXT_LINE autolearn=disabled version=4.0.0", "X-Spam-Score": "-1.3", "Message-ID": "<4c0f1625-4387-4870-a60a-dc423885811e@lysator.liu.se>", "Date": "Thu, 25 Apr 2024 11:26:00 +0200", "MIME-Version": "1.0", "User-Agent": "Mozilla Thunderbird", "Subject": "Re: [PATCH] net/af_packet: cache align Rx/Tx structs", "To": "Stephen Hemminger <stephen@networkplumber.org>", "Cc": "Ferruh Yigit <ferruh.yigit@amd.com>,\n =?utf-8?q?Mattias_R=C3=B6nnblom?= <mattias.ronnblom@ericsson.com>,\n \"John W . Linville\" <linville@tuxdriver.com>, dev@dpdk.org,\n Tyler Retzlaff <roretzla@linux.microsoft.com>,\n Honnappa Nagarahalli <Honnappa.Nagarahalli@arm.com>", "References": "<20240423090813.94110-1-mattias.ronnblom@ericsson.com>\n <6f7aabcb-2c12-4cfe-ae9d-73b42bfd4977@amd.com>\n <63dbb564-61f6-4d9f-9c13-4a21f5e97dc9@lysator.liu.se>\n <5d2a0887-527a-4948-943c-65f1dfda9328@amd.com>\n <3b2cf48e-2293-4226-b6cd-5f4dd3969f99@lysator.liu.se>\n <0ff40e60-926b-44eb-8af5-2e16aff1c336@amd.com>\n <20240424121330.7547e290@hermes.local>\n <2371b1a8-bdc5-4184-8491-54e2e3a64211@lysator.liu.se>\n <20240424165534.2ad8ae0a@hermes.local>", "Content-Language": "en-US", "From": "=?utf-8?q?Mattias_R=C3=B6nnblom?= <hofors@lysator.liu.se>", "In-Reply-To": "<20240424165534.2ad8ae0a@hermes.local>", "Content-Type": "text/plain; charset=UTF-8; format=flowed", "Content-Transfer-Encoding": "8bit", "X-Virus-Scanned": "ClamAV using ClamSMTP", "X-BeenThere": "dev@dpdk.org", "X-Mailman-Version": "2.1.29", "Precedence": "list", "List-Id": "DPDK patches and discussions <dev.dpdk.org>", "List-Unsubscribe": "<https://mails.dpdk.org/options/dev>,\n <mailto:dev-request@dpdk.org?subject=unsubscribe>", "List-Archive": "<http://mails.dpdk.org/archives/dev/>", "List-Post": "<mailto:dev@dpdk.org>", "List-Help": "<mailto:dev-request@dpdk.org?subject=help>", "List-Subscribe": "<https://mails.dpdk.org/listinfo/dev>,\n <mailto:dev-request@dpdk.org?subject=subscribe>", "Errors-To": "dev-bounces@dpdk.org" }, "addressed": null }, { "id": 169654, "web_url": "http://patches.dpdk.org/comment/169654/", "msgid": "<98CBD80474FA8B44BF855DF32C47DC35E9F3E7@smartserver.smartshare.dk>", "list_archive_url": "https://inbox.dpdk.org/dev/98CBD80474FA8B44BF855DF32C47DC35E9F3E7@smartserver.smartshare.dk", "date": "2024-04-25T09:49:00", "subject": "RE: [PATCH] net/af_packet: cache align Rx/Tx structs", "submitter": { "id": 591, "url": "http://patches.dpdk.org/api/people/591/?format=api", "name": "Morten Brørup", "email": "mb@smartsharesystems.com" }, "content": "> From: Mattias Rönnblom [mailto:hofors@lysator.liu.se]\n> Sent: Thursday, 25 April 2024 11.26\n> \n> On 2024-04-25 01:55, Stephen Hemminger wrote:\n> > On Thu, 25 Apr 2024 00:27:36 +0200\n> > Mattias Rönnblom <hofors@lysator.liu.se> wrote:\n> >\n> >> On 2024-04-24 21:13, Stephen Hemminger wrote:\n> >>> On Wed, 24 Apr 2024 18:50:50 +0100\n> >>> Ferruh Yigit <ferruh.yigit@amd.com> wrote:\n> >>>\n> >>>>> I don't know how slow af_packet is, but if you care about performance,\n> >>>>> you don't want to use atomic add for statistics.\n> >>>>>\n> >>>>\n> >>>> There are a few soft drivers already using atomics adds for updating\n> stats.\n> >>>> If we document expectations from 'rte_eth_stats_reset()', we can update\n> >>>> those usages.\n> >>>\n> >>> Using atomic add is lots of extra overhead. The statistics are not\n> guaranteed\n> >>> to be perfect. If nothing else, the bytes and packets can be skewed.\n> >>>\n> >>\n> >> The sad thing here is that in case the counters are reset within the\n> >> load-modify-store cycle of the lcore counter update, the reset may end\n> >> up being a nop. So, it's not like you missed a packet or two, or suffer\n> >> some transient inconsistency, but you completed and permanently ignored\n> >> the reset request.\n> >\n> > That is one of the many reasons the Linux kernel intentionally did not\n> > implement a reset statistics operation.\n> \n> DPDK should deprecate statistics reset, it seems to me.\n\n+1\n\n> \n> The current API is broken anyway, if you care about correctness. A reset\n> function must return the current state of the counters, at the point\n> them being reset. Otherwise, a higher layer may miss counter updates.\n> \n> The af_packet PMD should return -ENOTSUP on reset (which is allowed by\n> the API).\n> \n> Maintaining an offset-since-last-reset for counters is a control plane\n> thing, and shouldn't be in PMDs. (If MT-safe reset for SW-managed\n> counters are to be expected from the PMDs, we should have some helper\n> API to facilitate its efficient & correct-enough implementation.)", "headers": { "Return-Path": "<dev-bounces@dpdk.org>", "X-Original-To": "patchwork@inbox.dpdk.org", "Delivered-To": "patchwork@inbox.dpdk.org", "Received": [ "from mails.dpdk.org (mails.dpdk.org [217.70.189.124])\n\tby inbox.dpdk.org (Postfix) with ESMTP id 234AC43EFB;\n\tThu, 25 Apr 2024 11:49:04 +0200 (CEST)", "from mails.dpdk.org (localhost [127.0.0.1])\n\tby mails.dpdk.org (Postfix) with ESMTP id E10E9436BD;\n\tThu, 25 Apr 2024 11:49:03 +0200 (CEST)", "from dkmailrelay1.smartsharesystems.com\n (smartserver.smartsharesystems.com [77.243.40.215])\n by mails.dpdk.org (Postfix) with ESMTP id 8558C436B3\n for <dev@dpdk.org>; Thu, 25 Apr 2024 11:49:02 +0200 (CEST)", "from smartserver.smartsharesystems.com\n (smartserver.smartsharesys.local [192.168.4.10])\n by dkmailrelay1.smartsharesystems.com (Postfix) with ESMTP id 5AAD520589;\n Thu, 25 Apr 2024 11:49:02 +0200 (CEST)" ], "Content-class": "urn:content-classes:message", "MIME-Version": "1.0", "Content-Type": "text/plain;\n\tcharset=\"UTF-8\"", "Content-Transfer-Encoding": "base64", "Subject": "RE: [PATCH] net/af_packet: cache align Rx/Tx structs", "Date": "Thu, 25 Apr 2024 11:49:00 +0200", "X-MimeOLE": "Produced By Microsoft Exchange V6.5", "Message-ID": "<98CBD80474FA8B44BF855DF32C47DC35E9F3E7@smartserver.smartshare.dk>", "In-Reply-To": "<4c0f1625-4387-4870-a60a-dc423885811e@lysator.liu.se>", "X-MS-Has-Attach": "", "X-MS-TNEF-Correlator": "", "Thread-Topic": "[PATCH] net/af_packet: cache align Rx/Tx structs", "Thread-Index": "AdqW8pvCmYnt9a4aS3SVdagwcFOP3QAAqtog", "References": "<20240423090813.94110-1-mattias.ronnblom@ericsson.com>\n <6f7aabcb-2c12-4cfe-ae9d-73b42bfd4977@amd.com>\n <63dbb564-61f6-4d9f-9c13-4a21f5e97dc9@lysator.liu.se>\n <5d2a0887-527a-4948-943c-65f1dfda9328@amd.com>\n <3b2cf48e-2293-4226-b6cd-5f4dd3969f99@lysator.liu.se>\n <0ff40e60-926b-44eb-8af5-2e16aff1c336@amd.com>\n <20240424121330.7547e290@hermes.local>\n <2371b1a8-bdc5-4184-8491-54e2e3a64211@lysator.liu.se>\n <20240424165534.2ad8ae0a@hermes.local>\n <4c0f1625-4387-4870-a60a-dc423885811e@lysator.liu.se>", "From": "=?utf-8?q?Morten_Br=C3=B8rup?= <mb@smartsharesystems.com>", "To": "=?utf-8?q?Mattias_R=C3=B6nnblom?= <hofors@lysator.liu.se>,\n \"Stephen Hemminger\" <stephen@networkplumber.org>", "Cc": "\"Ferruh Yigit\" <ferruh.yigit@amd.com>,\n =?utf-8?q?Mattias_R=C3=B6nnblom?= <mattias.ronnblom@ericsson.com>,\n \"John W . Linville\" <linville@tuxdriver.com>, <dev@dpdk.org>,\n \"Tyler Retzlaff\" <roretzla@linux.microsoft.com>,\n \"Honnappa Nagarahalli\" <Honnappa.Nagarahalli@arm.com>", "X-BeenThere": "dev@dpdk.org", "X-Mailman-Version": "2.1.29", "Precedence": "list", "List-Id": "DPDK patches and discussions <dev.dpdk.org>", "List-Unsubscribe": "<https://mails.dpdk.org/options/dev>,\n <mailto:dev-request@dpdk.org?subject=unsubscribe>", "List-Archive": "<http://mails.dpdk.org/archives/dev/>", "List-Post": "<mailto:dev@dpdk.org>", "List-Help": "<mailto:dev-request@dpdk.org?subject=help>", "List-Subscribe": "<https://mails.dpdk.org/listinfo/dev>,\n <mailto:dev-request@dpdk.org?subject=subscribe>", "Errors-To": "dev-bounces@dpdk.org" }, "addressed": null }, { "id": 169663, "web_url": "http://patches.dpdk.org/comment/169663/", "msgid": "<2d07603e-e024-45a4-bfb1-c350b08ccdfb@amd.com>", "list_archive_url": "https://inbox.dpdk.org/dev/2d07603e-e024-45a4-bfb1-c350b08ccdfb@amd.com", "date": "2024-04-25T14:04:27", "subject": "Re: [PATCH] net/af_packet: cache align Rx/Tx structs", "submitter": { "id": 2700, "url": "http://patches.dpdk.org/api/people/2700/?format=api", "name": "Ferruh Yigit", "email": "ferruh.yigit@amd.com" }, "content": "On 4/25/2024 10:26 AM, Mattias Rönnblom wrote:\n> On 2024-04-25 01:55, Stephen Hemminger wrote:\n>> On Thu, 25 Apr 2024 00:27:36 +0200\n>> Mattias Rönnblom <hofors@lysator.liu.se> wrote:\n>>\n>>> On 2024-04-24 21:13, Stephen Hemminger wrote:\n>>>> On Wed, 24 Apr 2024 18:50:50 +0100\n>>>> Ferruh Yigit <ferruh.yigit@amd.com> wrote:\n>>>>   \n>>>>>> I don't know how slow af_packet is, but if you care about\n>>>>>> performance,\n>>>>>> you don't want to use atomic add for statistics.\n>>>>>>       \n>>>>>\n>>>>> There are a few soft drivers already using atomics adds for\n>>>>> updating stats.\n>>>>> If we document expectations from 'rte_eth_stats_reset()', we can\n>>>>> update\n>>>>> those usages.\n>>>>\n>>>> Using atomic add is lots of extra overhead. The statistics are not\n>>>> guaranteed\n>>>> to be perfect.  If nothing else, the bytes and packets can be skewed.\n>>>>    \n>>>\n>>> The sad thing here is that in case the counters are reset within the\n>>> load-modify-store cycle of the lcore counter update, the reset may end\n>>> up being a nop. So, it's not like you missed a packet or two, or suffer\n>>> some transient inconsistency, but you completed and permanently ignored\n>>> the reset request.\n>>\n>> That is one of the many reasons the Linux kernel intentionally did not\n>> implement a reset statistics operation.\n> \n> DPDK should deprecate statistics reset, it seems to me.\n> \n> The current API is broken anyway, if you care about correctness. A reset\n> function must return the current state of the counters, at the point\n> them being reset. Otherwise, a higher layer may miss counter updates.\n> \n> The af_packet PMD should return -ENOTSUP on reset (which is allowed by\n> the API).\n> \n> Maintaining an offset-since-last-reset for counters is a control plane\n> thing, and shouldn't be in PMDs. (If MT-safe reset for SW-managed\n> counters are to be expected from the PMDs, we should have some helper\n> API to facilitate its efficient & correct-enough implementation.)\n>\n\nstatistics reset works for HW devices, instead of removing statics reset\nI am for documenting API that it may be not reliable, I can send a patch\nfor it.\n\nWith above change, we can be more relax on stats update specially for\nsoft drivers, and can convert atomic_add stats updates to \"atomic load +\nadd + atomic store\".\n\nDoes this plan make sense?", "headers": { "Return-Path": "<dev-bounces@dpdk.org>", "X-Original-To": "patchwork@inbox.dpdk.org", "Delivered-To": "patchwork@inbox.dpdk.org", "Received": [ "from mails.dpdk.org (mails.dpdk.org [217.70.189.124])\n\tby inbox.dpdk.org (Postfix) with ESMTP id A238C43F05;\n\tThu, 25 Apr 2024 16:04:36 +0200 (CEST)", "from mails.dpdk.org (localhost [127.0.0.1])\n\tby mails.dpdk.org (Postfix) with ESMTP id 881EB43853;\n\tThu, 25 Apr 2024 16:04:36 +0200 (CEST)", "from NAM12-MW2-obe.outbound.protection.outlook.com\n (mail-mw2nam12on2087.outbound.protection.outlook.com [40.107.244.87])\n by mails.dpdk.org (Postfix) with ESMTP id 15C0C40284\n for <dev@dpdk.org>; Thu, 25 Apr 2024 16:04:35 +0200 (CEST)", "from CH2PR12MB4294.namprd12.prod.outlook.com (2603:10b6:610:a9::11)\n by IA0PR12MB8208.namprd12.prod.outlook.com (2603:10b6:208:409::17)\n with Microsoft SMTP Server (version=TLS1_2,\n cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7519.24; Thu, 25 Apr\n 2024 14:04:31 +0000", "from CH2PR12MB4294.namprd12.prod.outlook.com\n ([fe80::282f:29d3:cac1:cde3]) by CH2PR12MB4294.namprd12.prod.outlook.com\n ([fe80::282f:29d3:cac1:cde3%7]) with mapi id 15.20.7472.044; Thu, 25 Apr 2024\n 14:04:31 +0000" ], "ARC-Seal": "i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;\n b=VSBDL32pxZeZrHpX4iuR59oPzh3AhqDp0QEgHtG/G0+aIRbRE1yyfao7+hug+Hwi98kJlya4dDMA+MdUicQVES7rbnCtgRfdt0W4sMGObGthosDjl5W9GkU+fv2R2d2C6+9fYqX8jo5QtPy332m2LPHPXXNA+n5jVZfP9iPDnzjzDKmsVLl915ah+CQqLWRnQyypb9zu2NWgKolja/AKvUTwlPAC9FxEzgnU+K5XoAhGPzFXrciVRK6OIfOSPZgkX7TqLFeFUyj/rfQeJyRUpKb1DfYfMyxKoX723NpiY1T80+wJQbmcYhBAfoZpbPYyTSZnpYmux2tPedR6vvxzpw==", "ARC-Message-Signature": "i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;\n s=arcselector9901;\n h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;\n bh=KyGa6mb3n7mEcPWuA7oC5356iS8/UvrB9PhDwPDJaR8=;\n b=eEW2QiCxciSE58BfdC3Ldxklltosj5iTUe5Px/mbb1Fm9GEybHi8sdZ4vb07YA3gEPbaTsuA8Y8BnONKv/pxZfs24AAT1PENKJGFE7rvQrYuFBLIbN6qaB+roJYW0dqHRuqijWPr15JaHho3hDsfYf59d7JGNn+eyVCx5R+VKdE4wq+do8dLDYRT70QAaVvEGwjE85w52X3G7WGkFkLFwALWAndWs/ruKUlgCsLoexBTZFFRAX+MAMERGuoNu5YFYQ+aH217dB4UlP2f6VbxQJjDpYjz71UgWyqMvp6RwV2js/L0/kEJNSjzWvgaDvNdUwzaizCbucABcp5rns/qWw==", "ARC-Authentication-Results": "i=1; mx.microsoft.com 1; spf=pass\n smtp.mailfrom=amd.com; dmarc=pass action=none header.from=amd.com; dkim=pass\n header.d=amd.com; arc=none", "DKIM-Signature": "v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1;\n h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;\n bh=KyGa6mb3n7mEcPWuA7oC5356iS8/UvrB9PhDwPDJaR8=;\n b=HnVJOJ8i2A0F1AAknhxReawMvT59ej5MHrsnJD4DZAeZurlDx/xFEDGtb1idOPgwjpRIqp8Kk7BxV2C4l2z0SR89Ru7I9N1ApixbaI0JBZN6l8CmSvFudmqpkr6B2lcMWeM90znHS4kh6+2NKA9K+5i/4qHbeR2uKbjhbaeIh0I=", "Authentication-Results": "dkim=none (message not signed)\n header.d=none;dmarc=none action=none header.from=amd.com;", "Message-ID": "<2d07603e-e024-45a4-bfb1-c350b08ccdfb@amd.com>", "Date": "Thu, 25 Apr 2024 15:04:27 +0100", "User-Agent": "Mozilla Thunderbird", "Subject": "Re: [PATCH] net/af_packet: cache align Rx/Tx structs", "To": "=?utf-8?q?Mattias_R=C3=B6nnblom?= <hofors@lysator.liu.se>,\n Stephen Hemminger <stephen@networkplumber.org>", "Cc": "=?utf-8?q?Mattias_R=C3=B6nnblom?= <mattias.ronnblom@ericsson.com>,\n \"John W . Linville\" <linville@tuxdriver.com>, dev@dpdk.org,\n Tyler Retzlaff <roretzla@linux.microsoft.com>,\n Honnappa Nagarahalli <Honnappa.Nagarahalli@arm.com>, =?utf-8?q?Morten_Br?=\n\t=?utf-8?q?=C3=B8rup?= <mb@smartsharesystems.com>", "References": "<20240423090813.94110-1-mattias.ronnblom@ericsson.com>\n <6f7aabcb-2c12-4cfe-ae9d-73b42bfd4977@amd.com>\n <63dbb564-61f6-4d9f-9c13-4a21f5e97dc9@lysator.liu.se>\n <5d2a0887-527a-4948-943c-65f1dfda9328@amd.com>\n <3b2cf48e-2293-4226-b6cd-5f4dd3969f99@lysator.liu.se>\n <0ff40e60-926b-44eb-8af5-2e16aff1c336@amd.com>\n <20240424121330.7547e290@hermes.local>\n <2371b1a8-bdc5-4184-8491-54e2e3a64211@lysator.liu.se>\n <20240424165534.2ad8ae0a@hermes.local>\n <4c0f1625-4387-4870-a60a-dc423885811e@lysator.liu.se>", "Content-Language": "en-US", "From": "Ferruh Yigit <ferruh.yigit@amd.com>", "Autocrypt": "addr=ferruh.yigit@amd.com; keydata=\n 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 8Zk=", "In-Reply-To": "<4c0f1625-4387-4870-a60a-dc423885811e@lysator.liu.se>", "Content-Type": "text/plain; charset=UTF-8", "Content-Transfer-Encoding": "8bit", "X-ClientProxiedBy": "LO4P123CA0250.GBRP123.PROD.OUTLOOK.COM\n (2603:10a6:600:1a7::21) To CH2PR12MB4294.namprd12.prod.outlook.com\n (2603:10b6:610:a9::11)", "MIME-Version": "1.0", "X-MS-PublicTrafficType": "Email", "X-MS-TrafficTypeDiagnostic": "CH2PR12MB4294:EE_|IA0PR12MB8208:EE_", "X-MS-Office365-Filtering-Correlation-Id": "b338552e-29bb-4182-5878-08dc6530a096", "X-MS-Exchange-SenderADCheck": "1", "X-MS-Exchange-AntiSpam-Relay": "0", "X-Microsoft-Antispam": "BCL:0;ARA:13230031|1800799015|376005|366007;", "X-Microsoft-Antispam-Message-Info": "=?utf-8?q?EioFWpp8QEbqnCqTmlLFHYkJs1zIHXy?=\n\t=?utf-8?q?/DZGZezxRqcFQ8jh3/XPeiLgNPjpCyoQ+/WiCCcsNK7WUh1GHEV344ccUmloiO4Rd?=\n\t=?utf-8?q?l7us5lWx3gHat0m22+hLltjaIV+PjMO10jCHQbg9AYIdK6tytLTOGpaspDj8HpaKC?=\n\t=?utf-8?q?oUStWKbKjhvR7XFKcs/EDDOHFgu60d5UHManKo4RFzzRud0/H/egU5/9dIrRnKaQD?=\n\t=?utf-8?q?oOYPk8lMdZ0+QkFqSMMQ7bvgCXR7GzsgZvEedehRtdl+6BKRVPHsOTk6F7YKrq6jt?=\n\t=?utf-8?q?0P/sJyXC+1FF7u/5PTKtBgltvGB6zIGXqjYDO1EwJvknkcDfCoU4qGyZpqfE8Irtx?=\n\t=?utf-8?q?MSaRF5yvOYSNAAdSXx81QdCFwoj0oHfnB9YkeBtj1w1iKc9uyq7phFP1ZD31g/LqD?=\n\t=?utf-8?q?yPBgu3BFdEERROR9YtAbcczI5338DhS+3Q348infKj5Vp0rjWfG/ZEG1tNNjUZHh+?=\n\t=?utf-8?q?rY4PN+SN4hjnBmnPNoMhAJAthAuBh7dJxMrVhPfC4FAa6Ycnn9x0YjeXOvHv3OijY?=\n\t=?utf-8?q?l2NX8RJJ4ifP45zNEokKz5yCtUY9eLi64tT6UvH7lITa91aYiKSFN7qnsldGM3CBp?=\n\t=?utf-8?q?vezHhJHc+IE95kgFWF213zyfzoTmfesbmn48Hc9G3gbF8/n5poUceNUTyCSRJaVes?=\n\t=?utf-8?q?CtAyDqRy6RPaT4aw7bfjF7C/Fp4oLe3MXcQ1WmzOJLzbeU3qaoY3K0EGzX3Kda1U8?=\n\t=?utf-8?q?xfeYlWkOHCygNz1tg/2Bvyl5DRIiMb/FWLImVW3vyStRSqgcexUpSTOKeXiw/pmGW?=\n\t=?utf-8?q?KxQ7veUGy2SfP3/fpi6ZpBL9PmNTbTyVufWEDPPGm+hrT81ln/9nfv5vLiT2gKYHv?=\n\t=?utf-8?q?vz3XtumgKS0ojs7tCilDHyuW8PAfdNby9RdT7Vo3JokzlNAIlnIf1j1u/26Md7Y+f?=\n\t=?utf-8?q?pB82N1LDPSQb4bVzhWhk/xf4/KmGkvAHKfpbXnDDAszMiivxW5cvqD+nicM64BM0x?=\n\t=?utf-8?q?VnJZq1msAo1p4O6Rz/eL4Ss1mouIWPbheSKSjifcCViwZD8NuYeNM9FiJYqKkNM1g?=\n\t=?utf-8?q?6oOHNKm0hQB8dosoT9vEDmc30/QDsIwmYW2ZG5fdLcXckpz7mUo2DETvWwwsKjoyH?=\n\t=?utf-8?q?CLZEchifvQDk+jPmhTKhEhdRhXQCNKmQ0it+xwOKlghUCr3cA5Z6ombltT1oCSxWK?=\n\t=?utf-8?q?WVY2BSTKttWRqvY8CHdkZHU6l5i1tPouAo7EHroKZb3d+npIxFwu0RBtUT8D4TrXA?=\n\t=?utf-8?q?9L75Ui8Pr6bsvaYSaakqF0FoHQgO8n0PEk4Q=3D=3D?=", "X-Forefront-Antispam-Report": "CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:;\n IPV:NLI; SFV:NSPM; H:CH2PR12MB4294.namprd12.prod.outlook.com; PTR:; CAT:NONE;\n SFS:(13230031)(1800799015)(376005)(366007); DIR:OUT; SFP:1101;", "X-MS-Exchange-AntiSpam-MessageData-ChunkCount": "1", "X-MS-Exchange-AntiSpam-MessageData-0": "=?utf-8?q?Coa1tnsSZIK76KENkaCJ90MBYMXj?=\n\t=?utf-8?q?kzWSOfJQ1d+tZwXCO5RJ/TULPBFls0gOB+jKkCX150LbYoeztNiqwoF5IjfdVTUUc?=\n\t=?utf-8?q?JnllGnsKXxLmOuUqlqpsl/X3Ow81aJlK5AAJOlgTlJPKIvjfmeFhQBgG06Qk/o+FX?=\n\t=?utf-8?q?JCsk1ZFZi/HVcAiTTSbmO9oQiUo1Ni4EtfVhwijQvErSFcY50G3x1aTyOUMLOSiBQ?=\n\t=?utf-8?q?y6V1jZ2Ua4vvr6fXxSfRtzNyg54zTO3xZuhbpUndkQCNcTjg7kBUGiHQuUd5ALejL?=\n\t=?utf-8?q?8ynSg3GUD6ifqQ0el4SDTNJguBwEfXYIV9m9BwjvqcWT5ZvarFRr8P94Gs878+kyy?=\n\t=?utf-8?q?tHVAe784NZCcQSg/KUSR3JYZy3O+7OINEA30WL+f9nmMBwkRfL7tw5O07yDd0Bko8?=\n\t=?utf-8?q?QthOKiaGneuTEUC3+59Xq1Rf/qFLA44+2AJJALcjt1EiLXywssWpyA7gNWgRRQTzZ?=\n\t=?utf-8?q?z12YUZttCRPGWJFw9vesPgIBprMtc4mZDeCsEUfr9+LcXBKQwCCly+fnOiCjcGMDt?=\n\t=?utf-8?q?9BVQ2fQCttO+bB1R+gTdBBg3HXAgPslEtIKaSeBw5ERZGA/veqxRPC0/aHmjaTjnA?=\n\t=?utf-8?q?YSjd9+wRvlrWAFjHzxeNmm0R9t9QIfeB1JYpiPSbmkWVwshiF4Am3lSVkAYLgfcWU?=\n\t=?utf-8?q?tNCeoT5Tg6i47ojbMuLzCcv7GmX1CikW+HujIQ5f5exChJ/KWwI8zFDHlc0mu1NRk?=\n\t=?utf-8?q?AkyzsqGOTURdh2K1Re0KaJnQJ3PMO7ceijaTDw+KbU8/ewcRM8OHjziCF5D49ZBH1?=\n\t=?utf-8?q?DQ66G+o7huOWagLWvMd5YuUvfBFoINDOKvfx608SXGTkZv0kqKf08ATRdEFHmmpUO?=\n\t=?utf-8?q?GZVrncWq7hB67c3U2ZmbEzhuV24tgcYWiKr7v8Wa8H6JUriwvAUu8CdlelXx5em/Z?=\n\t=?utf-8?q?jesA1gYq7o9Lho50HX/58iry5qd9Ttym78dlsbBt0h/o6y5A7f6+EWWv+YutjT5Sd?=\n\t=?utf-8?q?d2kQA51lTay7mYVM6MbRLTtTSkvcU/cSxYodTOAFfMWOwJGWvzUQExgzgL8EtP0+z?=\n\t=?utf-8?q?7u9WRiwhJpDVFCQLdQkofyboKJJvF7u5Ccw+OXE0GguSNjslc3pTe3iSBskHVUvGP?=\n\t=?utf-8?q?i+7PPWn+tCtbOB7WdQGK1KrXVJ2iVkBTGxRHc1HETZgy5LO5sArAtO3hvfNjXzXnd?=\n\t=?utf-8?q?9Zz8mdq2N4lImZc2PE96N1FaYYu1MoyUYdF6n8vjG9SzsnP+0Z8D0aWLMI5fUZMjk?=\n\t=?utf-8?q?01rxqFn57Rnzd+b7tg3OGKBZqicrEklyOB/zNo8ryT2Y1TxPCUgijBQMewgQlH0CV?=\n\t=?utf-8?q?g0xrqSO8p1KrOXNUg2BubilFmZgMmfQiY1EW0783eRadNDo0YKM8Ohwvu7tKuJECv?=\n\t=?utf-8?q?L4G4aapguIXKwdL0+KMRRLGlQlQIKzEdkDcGVf+yiQBNGi3u5ENZbo4gEKmCzduET?=\n\t=?utf-8?q?o9x9FdJ++Y2NKPPwn0uD8ORgCcdoXyRX3pSmDJNamDxCOAzz1XCYRXOOHlnrdHwSr?=\n\t=?utf-8?q?qCcz6FGaRT+0xlE3gGz3YDzWV8EFkjaJ5frfkys3C4EvPfWav7B9tDj3QwVifWtIV?=\n\t=?utf-8?q?oWm6NAfJNmQ8?=", "X-OriginatorOrg": "amd.com", "X-MS-Exchange-CrossTenant-Network-Message-Id": "\n b338552e-29bb-4182-5878-08dc6530a096", "X-MS-Exchange-CrossTenant-AuthSource": "CH2PR12MB4294.namprd12.prod.outlook.com", "X-MS-Exchange-CrossTenant-AuthAs": "Internal", "X-MS-Exchange-CrossTenant-OriginalArrivalTime": "25 Apr 2024 14:04:30.9571 (UTC)", "X-MS-Exchange-CrossTenant-FromEntityHeader": "Hosted", "X-MS-Exchange-CrossTenant-Id": "3dd8961f-e488-4e60-8e11-a82d994e183d", "X-MS-Exchange-CrossTenant-MailboxType": "HOSTED", "X-MS-Exchange-CrossTenant-UserPrincipalName": "\n RXcHyk0aHHb5jamu6agsiAzjE5QWIrM7owYxVs8+A8W/YG51jqd131vxPBp11JHA", "X-MS-Exchange-Transport-CrossTenantHeadersStamped": "IA0PR12MB8208", "X-BeenThere": "dev@dpdk.org", "X-Mailman-Version": "2.1.29", "Precedence": "list", "List-Id": "DPDK patches and discussions <dev.dpdk.org>", "List-Unsubscribe": "<https://mails.dpdk.org/options/dev>,\n <mailto:dev-request@dpdk.org?subject=unsubscribe>", "List-Archive": "<http://mails.dpdk.org/archives/dev/>", "List-Post": "<mailto:dev@dpdk.org>", "List-Help": "<mailto:dev-request@dpdk.org?subject=help>", "List-Subscribe": "<https://mails.dpdk.org/listinfo/dev>,\n <mailto:dev-request@dpdk.org?subject=subscribe>", "Errors-To": "dev-bounces@dpdk.org" }, "addressed": null }, { "id": 169664, "web_url": "http://patches.dpdk.org/comment/169664/", "msgid": "<a2429203-d2c7-40d3-aa18-d7201dc5d341@amd.com>", "list_archive_url": "https://inbox.dpdk.org/dev/a2429203-d2c7-40d3-aa18-d7201dc5d341@amd.com", "date": "2024-04-25T14:08:12", "subject": "Re: [PATCH] net/af_packet: cache align Rx/Tx structs", "submitter": { "id": 2700, "url": "http://patches.dpdk.org/api/people/2700/?format=api", "name": "Ferruh Yigit", "email": "ferruh.yigit@amd.com" }, "content": "On 4/23/2024 12:15 PM, Ferruh Yigit wrote:\n>> Signed-off-by: Mattias Rönnblom <mattias.ronnblom@ericsson.com>\n>> ---\n>> drivers/net/af_packet/rte_eth_af_packet.c | 5 +++--\n>> 1 file changed, 3 insertions(+), 2 deletions(-)\n>>\n>> diff --git a/drivers/net/af_packet/rte_eth_af_packet.c b/drivers/net/af_packet/rte_eth_af_packet.c\n>> index 397a32db58..28aeb7d08e 100644\n>> --- a/drivers/net/af_packet/rte_eth_af_packet.c\n>> +++ b/drivers/net/af_packet/rte_eth_af_packet.c\n>> @@ -6,6 +6,7 @@\n>> * All rights reserved.\n>> */\n>> \n>> +#include <rte_common.h>\n>> #include <rte_string_fns.h>\n>> #include <rte_mbuf.h>\n>> #include <ethdev_driver.h>\n>> @@ -53,7 +54,7 @@ struct pkt_rx_queue {\n>> \n>> \tvolatile unsigned long rx_pkts;\n>> \tvolatile unsigned long rx_bytes;\n>> -};\n>> +} __rte_cache_aligned;\n>> \n> Latest location for '__rte_cache_aligned' tag is at the beginning of the\n> struct [1], so something like:\n> `struct __rte_cache_aligned pkt_rx_queue {`\n> \n> [1]\n> https://patchwork.dpdk.org/project/dpdk/list/?series=31746&state=%2A&archive=both\n>\n\nHi Mattias,\n\nWe dived into side discussions but with above change I can proceed with\nthe patch.", "headers": { "Return-Path": "<dev-bounces@dpdk.org>", "X-Original-To": "patchwork@inbox.dpdk.org", "Delivered-To": "patchwork@inbox.dpdk.org", "Received": [ "from mails.dpdk.org (mails.dpdk.org [217.70.189.124])\n\tby inbox.dpdk.org (Postfix) with ESMTP id 74A2043F05;\n\tThu, 25 Apr 2024 16:08:21 +0200 (CEST)", "from mails.dpdk.org (localhost [127.0.0.1])\n\tby mails.dpdk.org (Postfix) with ESMTP id 6107E435F4;\n\tThu, 25 Apr 2024 16:08:21 +0200 (CEST)", "from NAM10-MW2-obe.outbound.protection.outlook.com\n (mail-mw2nam10on2043.outbound.protection.outlook.com [40.107.94.43])\n by mails.dpdk.org (Postfix) with ESMTP id 7E34640284\n for <dev@dpdk.org>; Thu, 25 Apr 2024 16:08:19 +0200 (CEST)", "from CH2PR12MB4294.namprd12.prod.outlook.com (2603:10b6:610:a9::11)\n by SA1PR12MB8968.namprd12.prod.outlook.com (2603:10b6:806:388::10)\n with Microsoft SMTP Server (version=TLS1_2,\n cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7472.44; Thu, 25 Apr\n 2024 14:08:15 +0000", "from CH2PR12MB4294.namprd12.prod.outlook.com\n ([fe80::282f:29d3:cac1:cde3]) by CH2PR12MB4294.namprd12.prod.outlook.com\n ([fe80::282f:29d3:cac1:cde3%7]) with mapi id 15.20.7472.044; Thu, 25 Apr 2024\n 14:08:15 +0000" ], "ARC-Seal": "i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;\n b=m0jNu9+E9fldtbrle3DvtQ5dclD1GFI8BDWWcs5/DFmAF6fhi1QIy64xLkhK4b2GRJTYugV8ukm6wXkD6kozqRUxLPqs6cearQLV9NHKKeJEJ9Zw0imrhJ+G3bqs0YTA1PVPAqUttl/Gh5u1XPT2YHZyGauJsJEPxQ8X9kV51kPGgsQP4jxXM/bClyQzj69SvIbSAVPDpG7AmVwbGvPwuEx6/S5h4r5za818MfJDf12P+DP4EzZ8CTyF2PizqLlFRMSrsy1BPs4gV0LiWoQONX1gtmAsIvCYGqWPINZiJ5s709bFD5r6rYw6SdYqn7vLtvwZXbcOy/Xvx3Ad0WGiJw==", "ARC-Message-Signature": "i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;\n s=arcselector9901;\n h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;\n bh=tTzD/e6V5PEiow5P7MzOQiHyfCsFfTnoACJvwDDepWM=;\n b=Eznl6fTUe3CppnO5eYyDGHbnzIpXv1DkBN2KOAwDbSCeYyzE9U5PiWKK5UNLEYxAWg8s60ofjOZLQ6by1r/Ct1TJtHDRQ6UpcUHEw2UqVJe1dzsl+IdKe0tPteh5mvnfhGO/f/B2VVVCTEh+k+3aDWSpRF4wUaUqJn9/DPpeO6OyiRahfYWfCA5JG5MGPmfWKZaR1NVyhaLmD55Mih1jXsOQyI8R/F+iVmf4hUxYKhq82NjbEdm0nZfqNAUNZ4jJgGj7jsid/6vsjfswxNP36hTA2ZM/tUPTB/G/qjsr8ay1vrJ/ol/Js6tzqlRS1aU26LFPGGMs+V73y9FKnwBFdQ==", "ARC-Authentication-Results": "i=1; mx.microsoft.com 1; spf=pass\n smtp.mailfrom=amd.com; dmarc=pass action=none header.from=amd.com; dkim=pass\n header.d=amd.com; arc=none", "DKIM-Signature": "v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1;\n h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;\n bh=tTzD/e6V5PEiow5P7MzOQiHyfCsFfTnoACJvwDDepWM=;\n b=oIsvLnAg+5j1YsjkDHnwmjIsICAjBh1tXbgtI9yu1HL0zYuM7xo1ZgmeqvGf7Fn8KYdEQ8QkX39i1QuzjJ+tsSdVGxcUlQJ6tqCexDeSH7V6lRQS8lYdV+bcCsl2LpE07Q8nO6IH6XYBi7sS+ci0oatmt7C4TcifhqzftBX+QM0=", "Authentication-Results": "dkim=none (message not signed)\n header.d=none;dmarc=none action=none header.from=amd.com;", "Message-ID": "<a2429203-d2c7-40d3-aa18-d7201dc5d341@amd.com>", "Date": "Thu, 25 Apr 2024 15:08:12 +0100", "User-Agent": "Mozilla Thunderbird", "Subject": "Re: [PATCH] net/af_packet: cache align Rx/Tx structs", "From": "Ferruh Yigit <ferruh.yigit@amd.com>", "To": "=?utf-8?q?Mattias_R=C3=B6nnblom?= <mattias.ronnblom@ericsson.com>,\n \"John W . Linville\" <linville@tuxdriver.com>", "Cc": "dev@dpdk.org, hofors@lysator.liu.se,\n Tyler Retzlaff <roretzla@linux.microsoft.com>", "References": "<20240423090813.94110-1-mattias.ronnblom@ericsson.com>\n <6f7aabcb-2c12-4cfe-ae9d-73b42bfd4977@amd.com>", "Content-Language": "en-US", "Autocrypt": "addr=ferruh.yigit@amd.com; keydata=\n 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 8Zk=", "In-Reply-To": "<6f7aabcb-2c12-4cfe-ae9d-73b42bfd4977@amd.com>", "Content-Type": "text/plain; charset=UTF-8", "Content-Transfer-Encoding": "8bit", "X-ClientProxiedBy": "LO4P123CA0133.GBRP123.PROD.OUTLOOK.COM\n (2603:10a6:600:193::12) To CH2PR12MB4294.namprd12.prod.outlook.com\n (2603:10b6:610:a9::11)", "MIME-Version": "1.0", "X-MS-PublicTrafficType": "Email", "X-MS-TrafficTypeDiagnostic": "CH2PR12MB4294:EE_|SA1PR12MB8968:EE_", "X-MS-Office365-Filtering-Correlation-Id": "973f8b48-c924-4911-97fe-08dc6531269e", "X-MS-Exchange-SenderADCheck": "1", "X-MS-Exchange-AntiSpam-Relay": "0", "X-Microsoft-Antispam": "BCL:0;", "X-Microsoft-Antispam-Message-Info": "=?utf-8?q?hUTUXOUOyOkdftf3rn8iBM7hcc/fApU?=\n\t=?utf-8?q?ZiFFwxrrh6rXYasHPXyqT/5V3EvHWilhoh53hQpKkLJ/dbgp+KXWMYnwArd/+gRts?=\n\t=?utf-8?q?Wt6bonT8ZvRh2xd4nhyVbvcga8w/TXVTcofFkpR6gzLD8QunyP+haCprJ3j5/0/f3?=\n\t=?utf-8?q?AnS+FuZo4e5IKFk5yBTNXohvVlePvPHyJ6Mq2uVaau/C/4o7OYL6kddRAeen0Hkxr?=\n\t=?utf-8?q?r9HP2c3V1izMFcX/DZ3sh8tk9yyiTEfCRO5Bm5gTnPHw/IAPCX8kMStlYskwFAnLe?=\n\t=?utf-8?q?9/LfuLVyqYsqCbCXlayw3qsuSg0W/GvnP1PZpvQXZ82WaEHujZDkl58cvBFpqYpQm?=\n\t=?utf-8?q?RDzpydnJTIpDRc7GCOrXFnCGVlTy1qZx/Ovb7SEcr1UOt92mwrKIc/PKHsyQEx7sc?=\n\t=?utf-8?q?RopSQ6xXTzEgLOWG8O9QNmoziBKuqrRD1Zwyqw9e1JOEvGtNeGZY1dpvAwD8tnd2e?=\n\t=?utf-8?q?FidsA2NICZrtxdLNXib6aXOww6ILtZpQNStGQzkiSaUGxBIbklLgE3/RcXRzvuBB+?=\n\t=?utf-8?q?yfbMDtnukNN33j5igreUjaji0ATBBBsa7AiV47cx+NaVx4l6ZnrF0G9d6tI8wGb0I?=\n\t=?utf-8?q?cQK3n2bfOvvv4YOtc52l6fvN6GvGCKu93d9mr4fLkFspJQxZGDQSR6lu4pySJCjjV?=\n\t=?utf-8?q?+Wdt3Gu7SejoBb3KsBKYmWuK6RNsiSof+5KAx1Xft4FCvisKUF+IbywCdDnaNGUy8?=\n\t=?utf-8?q?0fz81zWjTTgN+Hfslg26yefheD88IP3fT/hJwikKWL1uHXJ8BYwhBPEzYI7AuL1KJ?=\n\t=?utf-8?q?Bh5QQ7ULaIOhy92VzLtN1c0RF9mLFNi5gM7xBQv5//8RsCjvBLRKp9e/V8p0NEqDv?=\n\t=?utf-8?q?BqmZ3FK/nbJJdBilgg4Yf7QJQzeTyILtt7agGx40rhm2vKzEtEct09/fQUoUcAqqZ?=\n\t=?utf-8?q?9rWRNnCK5rIXxNab3kwHaHJSmtCJIQpHFBA418URVr0ap7mLcZkH1veuh+LaKMVU/?=\n\t=?utf-8?q?5JDc4IfSnsz6YbjO1d5qjJplI533p2NyneaelXCjkElECbS0qAmg6xNzzHw7bzYV6?=\n\t=?utf-8?q?dy7wYt6fCs7cLvkUJ19Voq2gtKFYEGvDqRv1JyMB1o4yjUDve1DvCa4hPuZNmHe39?=\n\t=?utf-8?q?HcVptTrX58O5Rjn4W/iaEcMuJ87wzRgnTQGsGQYE5UfNE+pHBGkO+ixUvNsuJSD3i?=\n\t=?utf-8?q?k/lMYdJNLmXi7m+FkOmY8DbZsqwDDFh6iuMHmuHspghgZN8swn06rIoyXkgcEBHmi?=\n\t=?utf-8?q?kMCyBwKVSQpjAFZf0dPuqZpocaZ+hKCc+cBA=3D=3D?=", "X-Forefront-Antispam-Report": "CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:;\n IPV:NLI; SFV:NSPM; H:CH2PR12MB4294.namprd12.prod.outlook.com; PTR:; CAT:NONE;\n SFS:(13230031)(376005)(1800799015)(366007); DIR:OUT; SFP:1101;", "X-MS-Exchange-AntiSpam-MessageData-ChunkCount": "1", "X-MS-Exchange-AntiSpam-MessageData-0": "=?utf-8?q?w2NUvSI+1EjQd1ifYoArwZ4c4fym?=\n\t=?utf-8?q?D0gzNaNG6NMqcZhpjpl9vr+XVgbbwP8cAWdH3NOnWqFDN2FrjNbhhuBeE88JFf3kv?=\n\t=?utf-8?q?m9V2r2nGO1E1m3YnLdAlKa0Bv1PB/4WNcVJ1UWeUkGEZk3+B9vZtC6OXNyFo4SxRg?=\n\t=?utf-8?q?z5ChBHGOEwTSgEo+HMznfI7XWxB3SGTa/15ZVCekCsiMrIPtm6QHz8BdV/32m0gVP?=\n\t=?utf-8?q?Dcg3yYL97CmjuXF99cAJZTBzCCb91zFF0LTo+5Lvc+2qsNDdPOXdYZRAYwQKQu06V?=\n\t=?utf-8?q?ESU876DJXll+VbAKPNqAPzTfR7AVTcWaKGlPNPZQyc/Pd1lnqTyTgTaEmaci+jbW5?=\n\t=?utf-8?q?/hGJF0sjq4S5uZ1VkzUQjr8B+gDSL2BOzMs6Jxk+9EMSkP1QhX3e9XuokFBhtxaez?=\n\t=?utf-8?q?i8o7e3TDcKE9viFFbT53YugrYlwEghlPqI/GuXKp7o/LXMOWUnVxc0uNJnKzOwA87?=\n\t=?utf-8?q?EwYOF/UuujEJk1ie0B0gJYOWpKmxekTSFVyFrmYDe2w+giSZ+gG2nhfAMDtwJj33C?=\n\t=?utf-8?q?1Gv2DH/93g3KadC3dysDfhhKvaZfdNTigS4vscgLODKbyAePUr2u7tJi5A3ohUUjw?=\n\t=?utf-8?q?zVxfTuCaPXMn08ItqEtWxtm38P2KRIipA4ZHNxrx4NwAFZRiUuE3rZca24qUUQ1XH?=\n\t=?utf-8?q?NhVDSdYcsJIwun4KYAQgacDCuixtOjV811wkAfBr3yXs9s7rGEO7Z2tZZwrWq3aWQ?=\n\t=?utf-8?q?zQKCu9+a7lAS4Uc3aTGAiIsokj67dXc9kghFyhQrHuO0nO+i4z4gCHS61ohQ6TrHT?=\n\t=?utf-8?q?yGsKLGl/qm61jZEFSpRWTQpakoWg/lHXWU0QZF+3BoBh7yxgGH8M79Lo30Tv0N46c?=\n\t=?utf-8?q?XmbOf4+LE/1ycZrrK10ZQzQuILpaBdqKdVsvuQoq+R9n7gDHiBF/wkjC9EIXUP0mp?=\n\t=?utf-8?q?p5pW6d8wOB2Atr1ePhNwLlpPW/pVRFqcVrhBL6kj4gaFd3E3+CbBUbJqo6BB3dcoV?=\n\t=?utf-8?q?eEwrBIxNERnU2whCuDGb6Fzl2JNQmuKGpahhsWvCXml8TrYDS+2G4LKq3qhPLV+v7?=\n\t=?utf-8?q?cfEdAajiLgW3Mi/7opYqjlypMdu/l68nA5Jd1odgNcMiGjPMrKaTHsomUr/tC4jMV?=\n\t=?utf-8?q?iJNKLyZzWnmBe8Okl+EefNbwc3mh/6h6HcUhpZRCGDkYuN5dXo/57fMxRkx3W9/tZ?=\n\t=?utf-8?q?3Tb2YwwAOb8EHc1DX0An2fWdbqaQ0mE7QAXUtIers6qVHjXftdyc7rb1HmDbyQUzg?=\n\t=?utf-8?q?pdjSkWzAwzLUXz0ZCwAUOlqKtQGWbXa+zTQ5pdnw8TrrvZ3jOkOOGaXgv6XQVxYO8?=\n\t=?utf-8?q?cRvqggkEjqsDI0OOoaPF1THUdk76zto1UP0MVxTYG7C3/ksT2eRXf1RAbm9ug8TAN?=\n\t=?utf-8?q?n9sbSDkp7qpPI1snBCcSlkSwLsnwqORRfTDJ2OFOWO+984oii8pjxR6YAXPmut69t?=\n\t=?utf-8?q?pbViBEQekAkZmgMRpf3pkTtTWTc2pcAQmZwAPuaevdJg2mxwruhfFRO+eIjw8g9j0?=\n\t=?utf-8?q?w0kE1ubefQya/n7tCyo6l0hkB2llKUHDlCQzAqppYHrsyO+T+owEcG+ey9O2DH8QH?=\n\t=?utf-8?q?IyuwiobxB+xV?=", "X-OriginatorOrg": "amd.com", "X-MS-Exchange-CrossTenant-Network-Message-Id": "\n 973f8b48-c924-4911-97fe-08dc6531269e", "X-MS-Exchange-CrossTenant-AuthSource": "CH2PR12MB4294.namprd12.prod.outlook.com", "X-MS-Exchange-CrossTenant-AuthAs": "Internal", "X-MS-Exchange-CrossTenant-OriginalArrivalTime": "25 Apr 2024 14:08:15.7335 (UTC)", "X-MS-Exchange-CrossTenant-FromEntityHeader": "Hosted", "X-MS-Exchange-CrossTenant-Id": "3dd8961f-e488-4e60-8e11-a82d994e183d", "X-MS-Exchange-CrossTenant-MailboxType": "HOSTED", "X-MS-Exchange-CrossTenant-UserPrincipalName": "\n 7eE3FNm9ItMG7jIx/+c8qtFQ0FDbs2xrtudzYLAYTamMoSO4v45XS+ZiGY1IH/QY", "X-MS-Exchange-Transport-CrossTenantHeadersStamped": "SA1PR12MB8968", "X-BeenThere": "dev@dpdk.org", "X-Mailman-Version": "2.1.29", "Precedence": "list", "List-Id": "DPDK patches and discussions <dev.dpdk.org>", "List-Unsubscribe": "<https://mails.dpdk.org/options/dev>,\n <mailto:dev-request@dpdk.org?subject=unsubscribe>", "List-Archive": "<http://mails.dpdk.org/archives/dev/>", "List-Post": "<mailto:dev@dpdk.org>", "List-Help": "<mailto:dev-request@dpdk.org?subject=help>", "List-Subscribe": "<https://mails.dpdk.org/listinfo/dev>,\n <mailto:dev-request@dpdk.org?subject=subscribe>", "Errors-To": "dev-bounces@dpdk.org" }, "addressed": null }, { "id": 169668, "web_url": "http://patches.dpdk.org/comment/169668/", "msgid": "<37e85e59-585b-4503-81c2-2f8fc0a6746f@lysator.liu.se>", "list_archive_url": "https://inbox.dpdk.org/dev/37e85e59-585b-4503-81c2-2f8fc0a6746f@lysator.liu.se", "date": "2024-04-25T15:06:02", "subject": "Re: [PATCH] net/af_packet: cache align Rx/Tx structs", "submitter": { "id": 906, "url": "http://patches.dpdk.org/api/people/906/?format=api", "name": "Mattias Rönnblom", "email": "hofors@lysator.liu.se" }, "content": "On 2024-04-25 16:04, Ferruh Yigit wrote:\n> On 4/25/2024 10:26 AM, Mattias Rönnblom wrote:\n>> On 2024-04-25 01:55, Stephen Hemminger wrote:\n>>> On Thu, 25 Apr 2024 00:27:36 +0200\n>>> Mattias Rönnblom <hofors@lysator.liu.se> wrote:\n>>>\n>>>> On 2024-04-24 21:13, Stephen Hemminger wrote:\n>>>>> On Wed, 24 Apr 2024 18:50:50 +0100\n>>>>> Ferruh Yigit <ferruh.yigit@amd.com> wrote:\n>>>>> \n>>>>>>> I don't know how slow af_packet is, but if you care about\n>>>>>>> performance,\n>>>>>>> you don't want to use atomic add for statistics.\n>>>>>>> \n>>>>>>\n>>>>>> There are a few soft drivers already using atomics adds for\n>>>>>> updating stats.\n>>>>>> If we document expectations from 'rte_eth_stats_reset()', we can\n>>>>>> update\n>>>>>> those usages.\n>>>>>\n>>>>> Using atomic add is lots of extra overhead. The statistics are not\n>>>>> guaranteed\n>>>>> to be perfect.  If nothing else, the bytes and packets can be skewed.\n>>>>> \n>>>>\n>>>> The sad thing here is that in case the counters are reset within the\n>>>> load-modify-store cycle of the lcore counter update, the reset may end\n>>>> up being a nop. So, it's not like you missed a packet or two, or suffer\n>>>> some transient inconsistency, but you completed and permanently ignored\n>>>> the reset request.\n>>>\n>>> That is one of the many reasons the Linux kernel intentionally did not\n>>> implement a reset statistics operation.\n>>\n>> DPDK should deprecate statistics reset, it seems to me.\n>>\n>> The current API is broken anyway, if you care about correctness. A reset\n>> function must return the current state of the counters, at the point\n>> them being reset. Otherwise, a higher layer may miss counter updates.\n>>\n>> The af_packet PMD should return -ENOTSUP on reset (which is allowed by\n>> the API).\n>>\n>> Maintaining an offset-since-last-reset for counters is a control plane\n>> thing, and shouldn't be in PMDs. (If MT-safe reset for SW-managed\n>> counters are to be expected from the PMDs, we should have some helper\n>> API to facilitate its efficient & correct-enough implementation.)\n>>\n> \n> statistics reset works for HW devices, instead of removing statics reset\n> I am for documenting API that it may be not reliable, I can send a patch\n> for it.\n> \n\nWith API you mean <rte_ethdev.h>?\n\nIf rte_ethdev_stats_reset() sometimes reset the counters, and sometimes \ndoesn't, it should also have a name that reflect those semantics.\nrte_ethdev_stats_reset_or_perhaps_not()\nrte_ethdev_stats_usually_reset()\n\nRather than expecting the application to deal with unspecified \nnon-determinism is seems better to specify under which conditions the \nreset is reliable (i.e., it's not MT safe). A non-MT-safe reset will \nlimit it usefulness though. Also, it will make having an MT safe reset \nin a PMD pretty useless, except if the app is programmed not toward the \nAPI, but toward some particular PMD.\n\n> With above change, we can be more relax on stats update specially for\n> soft drivers, and can convert atomic_add stats updates to \"atomic load +\n> add + atomic store\".\n> \n> Does this plan make sense?\n\nNot really.\n\nShort-term the -ENOTSUP seems like the best option. Second best option \nis to implement a proper MT safe reset.\n\nWhat is unfortunate is that the API is silent on MT safety. I've \n*assumed* that many users will have assumed it MT safe, but there's \nnothing in the documentation to support that. Rather the opposite, the \ngeneric section of DPDK MT safety only mentions PMD RX and TX functions.\n\nThis issue is not limited to this PMD or even to ethdev. \nrte_event_dev_xstats_reset() and some of the event devs have the same \nproblem.", "headers": { "Return-Path": "<dev-bounces@dpdk.org>", "X-Original-To": "patchwork@inbox.dpdk.org", "Delivered-To": "patchwork@inbox.dpdk.org", "Received": [ "from mails.dpdk.org (mails.dpdk.org [217.70.189.124])\n\tby inbox.dpdk.org (Postfix) with ESMTP id 28A5A43F05;\n\tThu, 25 Apr 2024 17:06:13 +0200 (CEST)", "from mails.dpdk.org (localhost [127.0.0.1])\n\tby mails.dpdk.org (Postfix) with ESMTP id 2841943882;\n\tThu, 25 Apr 2024 17:06:08 +0200 (CEST)", "from mail.lysator.liu.se (mail.lysator.liu.se [130.236.254.3])\n by mails.dpdk.org (Postfix) with ESMTP id 2EF374387F\n for <dev@dpdk.org>; Thu, 25 Apr 2024 17:06:07 +0200 (CEST)", "from mail.lysator.liu.se (localhost [127.0.0.1])\n by mail.lysator.liu.se (Postfix) with ESMTP id D80B9FA41\n for <dev@dpdk.org>; Thu, 25 Apr 2024 17:06:06 +0200 (CEST)", "by mail.lysator.liu.se (Postfix, from userid 1004)\n id B5E33F9A9; Thu, 25 Apr 2024 17:06:06 +0200 (CEST)", "from [192.168.1.59] (h-62-63-215-114.A163.priv.bahnhof.se\n [62.63.215.114])\n (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)\n key-exchange X25519 server-signature RSA-PSS (2048 bits) server-digest\n SHA256)\n (No client certificate requested)\n by mail.lysator.liu.se (Postfix) with ESMTPSA id 0A7C1FA36;\n Thu, 25 Apr 2024 17:06:03 +0200 (CEST)" ], "X-Spam-Checker-Version": "SpamAssassin 4.0.0 (2022-12-13) on\n hermod.lysator.liu.se", "X-Spam-Level": "", "X-Spam-Status": "No, score=-1.3 required=5.0 tests=ALL_TRUSTED,AWL,\n T_SCC_BODY_TEXT_LINE autolearn=disabled version=4.0.0", "X-Spam-Score": "-1.3", "Message-ID": "<37e85e59-585b-4503-81c2-2f8fc0a6746f@lysator.liu.se>", "Date": "Thu, 25 Apr 2024 17:06:02 +0200", "MIME-Version": "1.0", "User-Agent": "Mozilla Thunderbird", "Subject": "Re: [PATCH] net/af_packet: cache align Rx/Tx structs", "To": "Ferruh Yigit <ferruh.yigit@amd.com>,\n Stephen Hemminger <stephen@networkplumber.org>", "Cc": "=?utf-8?q?Mattias_R=C3=B6nnblom?= <mattias.ronnblom@ericsson.com>,\n \"John W . Linville\" <linville@tuxdriver.com>, dev@dpdk.org,\n Tyler Retzlaff <roretzla@linux.microsoft.com>,\n Honnappa Nagarahalli <Honnappa.Nagarahalli@arm.com>, =?utf-8?q?Morten_Br?=\n\t=?utf-8?q?=C3=B8rup?= <mb@smartsharesystems.com>", "References": "<20240423090813.94110-1-mattias.ronnblom@ericsson.com>\n <6f7aabcb-2c12-4cfe-ae9d-73b42bfd4977@amd.com>\n <63dbb564-61f6-4d9f-9c13-4a21f5e97dc9@lysator.liu.se>\n <5d2a0887-527a-4948-943c-65f1dfda9328@amd.com>\n <3b2cf48e-2293-4226-b6cd-5f4dd3969f99@lysator.liu.se>\n <0ff40e60-926b-44eb-8af5-2e16aff1c336@amd.com>\n <20240424121330.7547e290@hermes.local>\n <2371b1a8-bdc5-4184-8491-54e2e3a64211@lysator.liu.se>\n <20240424165534.2ad8ae0a@hermes.local>\n <4c0f1625-4387-4870-a60a-dc423885811e@lysator.liu.se>\n <2d07603e-e024-45a4-bfb1-c350b08ccdfb@amd.com>", "Content-Language": "en-US", "From": "=?utf-8?q?Mattias_R=C3=B6nnblom?= <hofors@lysator.liu.se>", "In-Reply-To": "<2d07603e-e024-45a4-bfb1-c350b08ccdfb@amd.com>", "Content-Type": "text/plain; charset=UTF-8; format=flowed", "Content-Transfer-Encoding": "8bit", "X-Virus-Scanned": "ClamAV using ClamSMTP", "X-BeenThere": "dev@dpdk.org", "X-Mailman-Version": "2.1.29", "Precedence": "list", "List-Id": "DPDK patches and discussions <dev.dpdk.org>", "List-Unsubscribe": "<https://mails.dpdk.org/options/dev>,\n <mailto:dev-request@dpdk.org?subject=unsubscribe>", "List-Archive": "<http://mails.dpdk.org/archives/dev/>", "List-Post": "<mailto:dev@dpdk.org>", "List-Help": "<mailto:dev-request@dpdk.org?subject=help>", "List-Subscribe": "<https://mails.dpdk.org/listinfo/dev>,\n <mailto:dev-request@dpdk.org?subject=subscribe>", "Errors-To": "dev-bounces@dpdk.org" }, "addressed": null }, { "id": 169669, "web_url": "http://patches.dpdk.org/comment/169669/", "msgid": "<20240425080704.2f9162de@hermes.local>", "list_archive_url": "https://inbox.dpdk.org/dev/20240425080704.2f9162de@hermes.local", "date": "2024-04-25T15:07:04", "subject": "Re: [PATCH] net/af_packet: cache align Rx/Tx structs", "submitter": { "id": 27, "url": "http://patches.dpdk.org/api/people/27/?format=api", "name": "Stephen Hemminger", "email": "stephen@networkplumber.org" }, "content": "On Thu, 25 Apr 2024 15:04:27 +0100\nFerruh Yigit <ferruh.yigit@amd.com> wrote:\n\n> > Maintaining an offset-since-last-reset for counters is a control plane\n> > thing, and shouldn't be in PMDs. (If MT-safe reset for SW-managed\n> > counters are to be expected from the PMDs, we should have some helper\n> > API to facilitate its efficient & correct-enough implementation.)\n> > \n> \n> statistics reset works for HW devices, instead of removing statics reset\n> I am for documenting API that it may be not reliable, I can send a patch\n> for it.\n> \n> With above change, we can be more relax on stats update specially for\n> soft drivers, and can convert atomic_add stats updates to \"atomic load +\n> add + atomic store\".\n> \n> Does this plan make sense?\n\n\n+1", "headers": { "Return-Path": "<dev-bounces@dpdk.org>", "X-Original-To": "patchwork@inbox.dpdk.org", "Delivered-To": "patchwork@inbox.dpdk.org", "Received": [ "from mails.dpdk.org (mails.dpdk.org [217.70.189.124])\n\tby inbox.dpdk.org (Postfix) with ESMTP id 6E80243F05;\n\tThu, 25 Apr 2024 17:07:09 +0200 (CEST)", "from mails.dpdk.org (localhost [127.0.0.1])\n\tby mails.dpdk.org (Postfix) with ESMTP id 5C28A402EE;\n\tThu, 25 Apr 2024 17:07:09 +0200 (CEST)", "from mail-pg1-f182.google.com (mail-pg1-f182.google.com\n [209.85.215.182])\n by mails.dpdk.org (Postfix) with ESMTP id E3ABA40284\n for <dev@dpdk.org>; Thu, 25 Apr 2024 17:07:07 +0200 (CEST)", "by mail-pg1-f182.google.com with SMTP id\n 41be03b00d2f7-5e8470c1cb7so777544a12.2\n for <dev@dpdk.org>; Thu, 25 Apr 2024 08:07:07 -0700 (PDT)", "from hermes.local (204-195-96-226.wavecable.com. [204.195.96.226])\n by smtp.gmail.com with ESMTPSA id\n s1-20020a170902a50100b001e0e977f655sm13882846plq.159.2024.04.25.08.07.06\n (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);\n Thu, 25 Apr 2024 08:07:06 -0700 (PDT)" ], "DKIM-Signature": "v=1; a=rsa-sha256; c=relaxed/relaxed;\n d=networkplumber-org.20230601.gappssmtp.com; s=20230601; t=1714057627;\n x=1714662427; darn=dpdk.org;\n h=content-transfer-encoding:mime-version:references:in-reply-to\n :message-id:subject:cc:to:from:date:from:to:cc:subject:date\n :message-id:reply-to;\n bh=No4RYJkX9JAJPZYiO9ZvIr/3q7e3qRsZ5jg8LFGWLQc=;\n b=paQq8ZflxFI9c6udqmThVTDMdv7CKql5D6sxMR1T1k0LfhicrVwmJbcUPzMOdAIzAD\n 9RWZbznMWamity+tCoJfR1ZWlPM28X7QplDxQNBprm59x7JQGTV1/z3zvGxSKLIljF33\n RR6/AYgIjAkRH0tbhNWrCzN3LOb3dmQ2KiEHDRS6WS5ijGDgBKkFcEdCMjwyW2M+SrZA\n SvfVrPtSbxHmizGCM/Xs3HIR4lNbDP7diFJ+ORUZVZWaT/WWPe6WIRZwv8ZNxb4TzBGL\n zfjMml3rDk4YZpiudEK0knEVVjKgiLWMkTNLnThkHx14x1MB4Yw3CAyiMAc0RIMXxRG2\n lR2g==", "X-Google-DKIM-Signature": "v=1; a=rsa-sha256; c=relaxed/relaxed;\n d=1e100.net; s=20230601; t=1714057627; x=1714662427;\n h=content-transfer-encoding:mime-version:references:in-reply-to\n :message-id:subject:cc:to:from:date:x-gm-message-state:from:to:cc\n :subject:date:message-id:reply-to;\n bh=No4RYJkX9JAJPZYiO9ZvIr/3q7e3qRsZ5jg8LFGWLQc=;\n b=AvnlXZByiX22K0yk3ZBYtzR9PqgKatkeBY1LYryJTdTNeQ8qEmToIPTB412PeSZh+f\n 24VeQ58aMkiq3s+P5Q9SIsJkIjfi6WJTBLsaWvmrhd/5tFgWGBRa0YX3c8VBb2OCTshZ\n Qgn4xgYIAXl+0iX4kYSkdR00wx7+bmr4MRYA+EZnvssoRXd1MP21n0vuMTdGNOPiUMk9\n by/rA7xzDwyOx9NpfQRS+5wd5jqcTbXVxNhn8ZoOgTxpFOaeQf1lXIOX42KGhCJSWMdR\n v89b9SzlJkqM0I/lrcOsxMYbN8nClNQiXG02U86RNs/cnqEoTbub0LuO5BIQvb8wNaQm\n dFKg==", "X-Forwarded-Encrypted": "i=1;\n AJvYcCUKHR5I+3EGoCh4U95jAXY36AIZisd+SvGBEfH5jrwdFIHJhcFXK2x6bvATQHV+0L99F6z2DC+EsNXtSg0=", "X-Gm-Message-State": "AOJu0YweIMSj25EL00gGJcjYfgdgg9vHfKesTeIp3IG7OObUM1Ze9hH4\n KPeVeEFGDzQaxAVcbfGDCgvhoxb9mOlFZqzVtqSnHRGraRK6kBAatBAI3ebtN2kVtVFSVeI99yK\n 7", "X-Google-Smtp-Source": "\n AGHT+IFAI14uGdp9jqnDeB3Fca4uOjFstkPVNTeQoU494Wm1q7sRSsM7AzTWrEcnwTzxVlS07l27pQ==", "X-Received": "by 2002:a17:902:ecc4:b0:1e8:418b:7640 with SMTP id\n a4-20020a170902ecc400b001e8418b7640mr6389788plh.48.1714057627060;\n Thu, 25 Apr 2024 08:07:07 -0700 (PDT)", "Date": "Thu, 25 Apr 2024 08:07:04 -0700", "From": "Stephen Hemminger <stephen@networkplumber.org>", "To": "Ferruh Yigit <ferruh.yigit@amd.com>", "Cc": "Mattias =?utf-8?b?UsO2bm5ibG9t?= <hofors@lysator.liu.se>, Mattias\n\t=?utf-8?b?UsO2bm5ibG9t?= <mattias.ronnblom@ericsson.com>,\n \"John W . Linville\" <linville@tuxdriver.com>, dev@dpdk.org,\n Tyler Retzlaff <roretzla@linux.microsoft.com>,\n Honnappa Nagarahalli <Honnappa.Nagarahalli@arm.com>, Morten =?utf-8?q?Br?=\n\t=?utf-8?q?=C3=B8rup?= <mb@smartsharesystems.com>", "Subject": "Re: [PATCH] net/af_packet: cache align Rx/Tx structs", "Message-ID": "<20240425080704.2f9162de@hermes.local>", "In-Reply-To": "<2d07603e-e024-45a4-bfb1-c350b08ccdfb@amd.com>", "References": "<20240423090813.94110-1-mattias.ronnblom@ericsson.com>\n <6f7aabcb-2c12-4cfe-ae9d-73b42bfd4977@amd.com>\n <63dbb564-61f6-4d9f-9c13-4a21f5e97dc9@lysator.liu.se>\n <5d2a0887-527a-4948-943c-65f1dfda9328@amd.com>\n <3b2cf48e-2293-4226-b6cd-5f4dd3969f99@lysator.liu.se>\n <0ff40e60-926b-44eb-8af5-2e16aff1c336@amd.com>\n <20240424121330.7547e290@hermes.local>\n <2371b1a8-bdc5-4184-8491-54e2e3a64211@lysator.liu.se>\n <20240424165534.2ad8ae0a@hermes.local>\n <4c0f1625-4387-4870-a60a-dc423885811e@lysator.liu.se>\n <2d07603e-e024-45a4-bfb1-c350b08ccdfb@amd.com>", "MIME-Version": "1.0", "Content-Type": "text/plain; charset=US-ASCII", "Content-Transfer-Encoding": "7bit", "X-BeenThere": "dev@dpdk.org", "X-Mailman-Version": "2.1.29", "Precedence": "list", "List-Id": "DPDK patches and discussions <dev.dpdk.org>", "List-Unsubscribe": "<https://mails.dpdk.org/options/dev>,\n <mailto:dev-request@dpdk.org?subject=unsubscribe>", "List-Archive": "<http://mails.dpdk.org/archives/dev/>", "List-Post": "<mailto:dev@dpdk.org>", "List-Help": "<mailto:dev-request@dpdk.org?subject=help>", "List-Subscribe": "<https://mails.dpdk.org/listinfo/dev>,\n <mailto:dev-request@dpdk.org?subject=subscribe>", "Errors-To": "dev-bounces@dpdk.org" }, "addressed": null }, { "id": 169670, "web_url": "http://patches.dpdk.org/comment/169670/", "msgid": "<fe2b1ca1-027c-4582-a225-3be40b263a46@lysator.liu.se>", "list_archive_url": "https://inbox.dpdk.org/dev/fe2b1ca1-027c-4582-a225-3be40b263a46@lysator.liu.se", "date": "2024-04-25T15:08:01", "subject": "Re: [PATCH] net/af_packet: cache align Rx/Tx structs", "submitter": { "id": 906, "url": "http://patches.dpdk.org/api/people/906/?format=api", "name": "Mattias Rönnblom", "email": "hofors@lysator.liu.se" }, "content": "On 2024-04-25 16:08, Ferruh Yigit wrote:\n> On 4/23/2024 12:15 PM, Ferruh Yigit wrote:\n>>> Signed-off-by: Mattias Rönnblom <mattias.ronnblom@ericsson.com>\n>>> ---\n>>> drivers/net/af_packet/rte_eth_af_packet.c | 5 +++--\n>>> 1 file changed, 3 insertions(+), 2 deletions(-)\n>>>\n>>> diff --git a/drivers/net/af_packet/rte_eth_af_packet.c b/drivers/net/af_packet/rte_eth_af_packet.c\n>>> index 397a32db58..28aeb7d08e 100644\n>>> --- a/drivers/net/af_packet/rte_eth_af_packet.c\n>>> +++ b/drivers/net/af_packet/rte_eth_af_packet.c\n>>> @@ -6,6 +6,7 @@\n>>> * All rights reserved.\n>>> */\n>>> \n>>> +#include <rte_common.h>\n>>> #include <rte_string_fns.h>\n>>> #include <rte_mbuf.h>\n>>> #include <ethdev_driver.h>\n>>> @@ -53,7 +54,7 @@ struct pkt_rx_queue {\n>>> \n>>> \tvolatile unsigned long rx_pkts;\n>>> \tvolatile unsigned long rx_bytes;\n>>> -};\n>>> +} __rte_cache_aligned;\n>>> \n>> Latest location for '__rte_cache_aligned' tag is at the beginning of the\n>> struct [1], so something like:\n>> `struct __rte_cache_aligned pkt_rx_queue {`\n>>\n>> [1]\n>> https://patchwork.dpdk.org/project/dpdk/list/?series=31746&state=%2A&archive=both\n>>\n> \n> Hi Mattias,\n> \n> We dived into side discussions but with above change I can proceed with\n> the patch.\n\nOK.\n\nShould this go into some stable branch as well?", "headers": { "Return-Path": "<dev-bounces@dpdk.org>", "X-Original-To": "patchwork@inbox.dpdk.org", "Delivered-To": "patchwork@inbox.dpdk.org", "Received": [ "from mails.dpdk.org (mails.dpdk.org [217.70.189.124])\n\tby inbox.dpdk.org (Postfix) with ESMTP id DDEF143F05;\n\tThu, 25 Apr 2024 17:08:05 +0200 (CEST)", "from mails.dpdk.org (localhost [127.0.0.1])\n\tby mails.dpdk.org (Postfix) with ESMTP id C671E402EE;\n\tThu, 25 Apr 2024 17:08:05 +0200 (CEST)", "from mail.lysator.liu.se (mail.lysator.liu.se [130.236.254.3])\n by mails.dpdk.org (Postfix) with ESMTP id 073B140284\n for <dev@dpdk.org>; Thu, 25 Apr 2024 17:08:05 +0200 (CEST)", "from mail.lysator.liu.se (localhost [127.0.0.1])\n by mail.lysator.liu.se (Postfix) with ESMTP id C7CBFFA4D\n for <dev@dpdk.org>; Thu, 25 Apr 2024 17:08:04 +0200 (CEST)", "by mail.lysator.liu.se (Postfix, from userid 1004)\n id BAC5FF967; Thu, 25 Apr 2024 17:08:04 +0200 (CEST)", "from [192.168.1.59] (h-62-63-215-114.A163.priv.bahnhof.se\n [62.63.215.114])\n (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)\n key-exchange X25519 server-signature RSA-PSS (2048 bits) server-digest\n SHA256)\n (No client certificate requested)\n by mail.lysator.liu.se (Postfix) with ESMTPSA id BC0EFF965;\n Thu, 25 Apr 2024 17:08:01 +0200 (CEST)" ], "X-Spam-Checker-Version": "SpamAssassin 4.0.0 (2022-12-13) on\n hermod.lysator.liu.se", "X-Spam-Level": "", "X-Spam-Status": "No, score=-1.3 required=5.0 tests=ALL_TRUSTED,AWL,\n T_SCC_BODY_TEXT_LINE autolearn=disabled version=4.0.0", "X-Spam-Score": "-1.3", "Message-ID": "<fe2b1ca1-027c-4582-a225-3be40b263a46@lysator.liu.se>", "Date": "Thu, 25 Apr 2024 17:08:01 +0200", "MIME-Version": "1.0", "User-Agent": "Mozilla Thunderbird", "Subject": "Re: [PATCH] net/af_packet: cache align Rx/Tx structs", "To": "Ferruh Yigit <ferruh.yigit@amd.com>,\n =?utf-8?q?Mattias_R=C3=B6nnblom?= <mattias.ronnblom@ericsson.com>,\n \"John W . Linville\" <linville@tuxdriver.com>", "Cc": "dev@dpdk.org, Tyler Retzlaff <roretzla@linux.microsoft.com>", "References": "<20240423090813.94110-1-mattias.ronnblom@ericsson.com>\n <6f7aabcb-2c12-4cfe-ae9d-73b42bfd4977@amd.com>\n <a2429203-d2c7-40d3-aa18-d7201dc5d341@amd.com>", "Content-Language": "en-US", "From": "=?utf-8?q?Mattias_R=C3=B6nnblom?= <hofors@lysator.liu.se>", "In-Reply-To": "<a2429203-d2c7-40d3-aa18-d7201dc5d341@amd.com>", "Content-Type": "text/plain; charset=UTF-8; format=flowed", "Content-Transfer-Encoding": "8bit", "X-Virus-Scanned": "ClamAV using ClamSMTP", "X-BeenThere": "dev@dpdk.org", "X-Mailman-Version": "2.1.29", "Precedence": "list", "List-Id": "DPDK patches and discussions <dev.dpdk.org>", "List-Unsubscribe": "<https://mails.dpdk.org/options/dev>,\n <mailto:dev-request@dpdk.org?subject=unsubscribe>", "List-Archive": "<http://mails.dpdk.org/archives/dev/>", "List-Post": "<mailto:dev@dpdk.org>", "List-Help": "<mailto:dev-request@dpdk.org?subject=help>", "List-Subscribe": "<https://mails.dpdk.org/listinfo/dev>,\n <mailto:dev-request@dpdk.org?subject=subscribe>", "Errors-To": "dev-bounces@dpdk.org" }, "addressed": null }, { "id": 169672, "web_url": "http://patches.dpdk.org/comment/169672/", "msgid": "<0cd9b883-6bf2-435f-a1f2-c1e07afce2db@amd.com>", "list_archive_url": "https://inbox.dpdk.org/dev/0cd9b883-6bf2-435f-a1f2-c1e07afce2db@amd.com", "date": "2024-04-25T15:35:55", "subject": "Re: [PATCH] net/af_packet: cache align Rx/Tx structs", "submitter": { "id": 2700, "url": "http://patches.dpdk.org/api/people/2700/?format=api", "name": "Ferruh Yigit", "email": "ferruh.yigit@amd.com" }, "content": "On 4/25/2024 4:08 PM, Mattias Rönnblom wrote:\n> On 2024-04-25 16:08, Ferruh Yigit wrote:\n>> On 4/23/2024 12:15 PM, Ferruh Yigit wrote:\n>>>> Signed-off-by: Mattias Rönnblom <mattias.ronnblom@ericsson.com>\n>>>> ---\n>>>>   drivers/net/af_packet/rte_eth_af_packet.c | 5 +++--\n>>>>   1 file changed, 3 insertions(+), 2 deletions(-)\n>>>>\n>>>> diff --git a/drivers/net/af_packet/rte_eth_af_packet.c\n>>>> b/drivers/net/af_packet/rte_eth_af_packet.c\n>>>> index 397a32db58..28aeb7d08e 100644\n>>>> --- a/drivers/net/af_packet/rte_eth_af_packet.c\n>>>> +++ b/drivers/net/af_packet/rte_eth_af_packet.c\n>>>> @@ -6,6 +6,7 @@\n>>>>    * All rights reserved.\n>>>>    */\n>>>>   +#include <rte_common.h>\n>>>>   #include <rte_string_fns.h>\n>>>>   #include <rte_mbuf.h>\n>>>>   #include <ethdev_driver.h>\n>>>> @@ -53,7 +54,7 @@ struct pkt_rx_queue {\n>>>>         volatile unsigned long rx_pkts;\n>>>>       volatile unsigned long rx_bytes;\n>>>> -};\n>>>> +} __rte_cache_aligned;\n>>>>   \n>>> Latest location for '__rte_cache_aligned' tag is at the beginning of the\n>>> struct [1], so something like:\n>>> `struct __rte_cache_aligned pkt_rx_queue {`\n>>>\n>>> [1]\n>>> https://patchwork.dpdk.org/project/dpdk/list/?series=31746&state=%2A&archive=both\n>>>\n>>\n>> Hi Mattias,\n>>\n>> We dived into side discussions but with above change I can proceed with\n>> the patch.\n> \n> OK.\n> \n> Should this go into some stable branch as well?\n>\n\nI don't see any reason for not merging to stable trees. For this please\nadd fixes and stable tags.", "headers": { "Return-Path": "<dev-bounces@dpdk.org>", "X-Original-To": "patchwork@inbox.dpdk.org", "Delivered-To": "patchwork@inbox.dpdk.org", "Received": [ "from mails.dpdk.org (mails.dpdk.org [217.70.189.124])\n\tby inbox.dpdk.org (Postfix) with ESMTP id 9790D43D99;\n\tThu, 25 Apr 2024 17:36:03 +0200 (CEST)", "from mails.dpdk.org (localhost [127.0.0.1])\n\tby mails.dpdk.org (Postfix) with ESMTP id 850D8402EE;\n\tThu, 25 Apr 2024 17:36:03 +0200 (CEST)", "from NAM04-BN8-obe.outbound.protection.outlook.com\n (mail-bn8nam04on2075.outbound.protection.outlook.com [40.107.100.75])\n by mails.dpdk.org (Postfix) with ESMTP id DFEA140284\n for <dev@dpdk.org>; Thu, 25 Apr 2024 17:36:01 +0200 (CEST)", "from CH2PR12MB4294.namprd12.prod.outlook.com (2603:10b6:610:a9::11)\n by LV8PR12MB9083.namprd12.prod.outlook.com (2603:10b6:408:18c::16)\n with Microsoft SMTP Server (version=TLS1_2,\n cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7472.44; Thu, 25 Apr\n 2024 15:35:59 +0000", "from CH2PR12MB4294.namprd12.prod.outlook.com\n ([fe80::282f:29d3:cac1:cde3]) by CH2PR12MB4294.namprd12.prod.outlook.com\n ([fe80::282f:29d3:cac1:cde3%7]) with mapi id 15.20.7472.044; Thu, 25 Apr 2024\n 15:35:59 +0000" ], "ARC-Seal": "i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;\n b=AnYRzj8M3HRrRrocwUKJZFQqDnipgEJDBuWAcFuz+QByevT5zDotGYl0bN0aSQtfxQVoBt+xPQAt71pQEWHdiWr6JIFOgIFgiGmUcTb+ukL+CpmKKWysuLh/xkY5IkY24Tv+WTgFGyFXyMK/AgegnG7DlSjLVRnBUgUx9XoWuZUwrrgoycRrft+OOnSrXCY9TOwcZ7VhieGZBCFUvmVKXgndZWf+Oww8Wbl0BuaK3dQsrixfPYAFe25n/JcNimGsz1nYiHGC66eHmbXs2jHNNxf/3AbpTNXcjyt1IPbig6BRqcf57PQRZbiinFGWtLLVMVYJT3OlNLOulIxMjsvwXQ==", "ARC-Message-Signature": "i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;\n s=arcselector9901;\n h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;\n bh=gee1xTnLNWnQpuxHxAKaTadlGwL+C3VG5Mg8knigAYw=;\n b=mWRQqj5bZmKGNkEr4SBCqb4kKYmIwD3UhVqt87HtvKVkpglAyJl+yNqWnltLuzqmCMql645kDeNFh6TWnXOAI/0DmvGsm2mBTo24yrCcnmd6fQrSWnnHoMnZzeGhw5Y087gAcOIw+M1PxEcvRVXZ2M8UfadSuQZGz7fvBhwgT07xC13rzgD2ZrS9u4I3/B5f6JOdjyY54s1J9nEarZs1OXsj1+IF1D7Tj1PCLjYC6h6nchyE+HbDuP6N8HD54XLnoIKt+i2hIBopShWHs2wCz+1EgwKr1TaT8HbzSToyRjB2Bvj8mODUMXJXRABZBWUb2NgibT0lqkeIRFeaS19OEg==", "ARC-Authentication-Results": "i=1; mx.microsoft.com 1; spf=pass\n smtp.mailfrom=amd.com; dmarc=pass action=none header.from=amd.com; dkim=pass\n header.d=amd.com; arc=none", "DKIM-Signature": "v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1;\n h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;\n bh=gee1xTnLNWnQpuxHxAKaTadlGwL+C3VG5Mg8knigAYw=;\n b=eVUIl82QhaXU8TkrtWj2gpoDxr1vTpaIiy2ecNcrbhWd6Wrm/Bw2+u5vY2SbLBqbfaRbLR8Qp86wUKdFagfTGYMwSJs154CibYNJllRUWbpUvW2ubo7PIQubES7SlcqMefsUKgZcOrL2s3rl1q/QNMDllzidVZAs1EpYDcl1FvY=", "Authentication-Results": "dkim=none (message not signed)\n header.d=none;dmarc=none action=none header.from=amd.com;", "Message-ID": "<0cd9b883-6bf2-435f-a1f2-c1e07afce2db@amd.com>", "Date": "Thu, 25 Apr 2024 16:35:55 +0100", "User-Agent": "Mozilla Thunderbird", "Subject": "Re: [PATCH] net/af_packet: cache align Rx/Tx structs", "To": "=?utf-8?q?Mattias_R=C3=B6nnblom?= <hofors@lysator.liu.se>, =?utf-8?q?Mat?=\n\t=?utf-8?q?tias_R=C3=B6nnblom?= <mattias.ronnblom@ericsson.com>,\n \"John W . Linville\" <linville@tuxdriver.com>", "Cc": "dev@dpdk.org, Tyler Retzlaff <roretzla@linux.microsoft.com>", "References": "<20240423090813.94110-1-mattias.ronnblom@ericsson.com>\n <6f7aabcb-2c12-4cfe-ae9d-73b42bfd4977@amd.com>\n <a2429203-d2c7-40d3-aa18-d7201dc5d341@amd.com>\n <fe2b1ca1-027c-4582-a225-3be40b263a46@lysator.liu.se>", "Content-Language": "en-US", "From": "Ferruh Yigit <ferruh.yigit@amd.com>", "Autocrypt": "addr=ferruh.yigit@amd.com; keydata=\n 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 8Zk=", "In-Reply-To": "<fe2b1ca1-027c-4582-a225-3be40b263a46@lysator.liu.se>", "Content-Type": "text/plain; charset=UTF-8", "Content-Transfer-Encoding": "8bit", "X-ClientProxiedBy": "LO2P265CA0467.GBRP265.PROD.OUTLOOK.COM\n (2603:10a6:600:a2::23) To CH2PR12MB4294.namprd12.prod.outlook.com\n (2603:10b6:610:a9::11)", "MIME-Version": "1.0", "X-MS-PublicTrafficType": "Email", "X-MS-TrafficTypeDiagnostic": "CH2PR12MB4294:EE_|LV8PR12MB9083:EE_", "X-MS-Office365-Filtering-Correlation-Id": "6917589d-83e2-4a37-c7fc-08dc653d680a", "X-MS-Exchange-SenderADCheck": "1", "X-MS-Exchange-AntiSpam-Relay": "0", "X-Microsoft-Antispam": "BCL:0;", "X-Microsoft-Antispam-Message-Info": "=?utf-8?q?x0uM8O7KyL+LLBlmOsswXFLOipsK3Gi?=\n\t=?utf-8?q?tW5kOuguXbRzklIosrFTIMfPio6MrZGEGS9/TNV3s2QGcZ1A4jANUHYxj5cM260ha?=\n\t=?utf-8?q?olTYox4MqjM78EA/dmERSejxofoT+dUA9TfNQ8nWDhTkfU6EKI2TU59DadScoqBX9?=\n\t=?utf-8?q?I5QvqudvBuDHgcbjbNhwsivwVUV34BxSpZsopMFoSwOQIGZsBVHUxBGnK7G1hezDt?=\n\t=?utf-8?q?EWvZaxjDaJzYOygNwdTueTgeCgmXqsBINf6C9k4DdC4AQG728rDj3dGHNSjUNuNyg?=\n\t=?utf-8?q?PjKrqwHR8qtxTPMzUkyNwRvfCiWjeVfmOmh4KRSgki+5WSS7Spjl81Lvr/bfJnjEb?=\n\t=?utf-8?q?TJD835G0yvTBR8/S8Fm2Qmb3aGnddt0f+lmSEmC7y9zOMfKuzeQb2EezyMZ6RGtL4?=\n\t=?utf-8?q?7KGWWvVsWEFz1wW/VJ3jO6PIeF5PeD0UxqwaNUBVLlDxRJG8SM8T3F36dy61bSc9C?=\n\t=?utf-8?q?IwsHEV5DXQQ0zirbApLvz17IdUJVcJLSQ8KckJfSN1CabpMglxqXSs8LnZego64dx?=\n\t=?utf-8?q?WdwoSPCGWh9PElzI6HrBWOttm65ri+PacR05Q8t0JPKdEuTXi+CTwwZCL0O3vD28t?=\n\t=?utf-8?q?1i6YUT7EX4MPscVxQx+0G/Q/JdgagD/P0Op1VEKsPZz4f+/XvfsZT+siAaymUnyRn?=\n\t=?utf-8?q?CmhP00Tb16lZ44uqPg4x8Lz2avndmotHCS6VXqk7yQ0r25sEt9GZgbyGQdn/QLU3a?=\n\t=?utf-8?q?G5nZZfwiAkd2233oRgbOxAnGBUPvxb9+2lsqEAZkxt9KGPG9OlS45sehch5wTEyov?=\n\t=?utf-8?q?HUWkdnlyH6mEbz3+4rIFQQb1QPNF60VICsyzEi2pkwxmreW7a+oTT6bh3VfD9jfZ7?=\n\t=?utf-8?q?FTwN4mA5Lu+xE0jiHFvbNURxsJ0ND+jJNvFpykje53ILfjL2eE2vCRJlU3pqfd+5E?=\n\t=?utf-8?q?DEAjbRikTXkgig494tzA5UA9T6s4140OsrU36o0rJXCVPi6573+LGd4NgP/rZIiuK?=\n\t=?utf-8?q?chfTCJsX0cjgsfbfhQVG3Tcl/+xbQG6eLPBuqBAy+/43tuY516MGMPLj96+qeKXxP?=\n\t=?utf-8?q?AJGHdRvMG3mRztztMYNe61v+stE2UBnAAqz9Z671/wdPBAJ9rvJMAUrBUCJam6wdh?=\n\t=?utf-8?q?EnRQOtdeQjqGrb+rHourLVeE2YVDY59zJqd3SXymjMFbcnNxV4etJ1gkjr/GIMJTr?=\n\t=?utf-8?q?hFMXOMKHcspQOUTUlOh5sRjg6sCUxhaWY0cSMs2KTK+yT57LRXHUxtuxLLngaef0B?=\n\t=?utf-8?q?uhqy9ZhBzqKggrgs/8bPFM25M4p9vg5aj23g=3D=3D?=", "X-Forefront-Antispam-Report": "CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:;\n IPV:NLI; SFV:NSPM; H:CH2PR12MB4294.namprd12.prod.outlook.com; PTR:; CAT:NONE;\n SFS:(13230031)(366007)(1800799015)(376005); DIR:OUT; SFP:1101;", "X-MS-Exchange-AntiSpam-MessageData-ChunkCount": "1", "X-MS-Exchange-AntiSpam-MessageData-0": "=?utf-8?q?+ix7Vs4Q34iXTantWzMvjzAELCym?=\n\t=?utf-8?q?BSuVhtpEKrcJ8ZSTl+455o5rujk5tbAbWC6Df44asp9tZPr3Sm8qyyARkJD3SNnni?=\n\t=?utf-8?q?fgzIOKI340KXOkXhNWITRKRnsn3r5ORKhmRx2g5Ny0ej6ijyqaEbJ7GjsHeJvXcFc?=\n\t=?utf-8?q?EH/tnUjM75xKNnW/Q0NiIDpMBcfFUIyGtKBsdUUuOpmdypsTIxqBf/lssknlBuaoV?=\n\t=?utf-8?q?FsUnh3+NfKuay9WWHdz9cq4Rl4+rUSoldPFF/tOcM3kr9RAJmBtX9MUvpUaZgPy2G?=\n\t=?utf-8?q?jFi4/UhGbjCYpKi5OPatwZzL9oKm10+9o/ASGeU6ajPEi8oFGeMjaHYYOpYLQRxhA?=\n\t=?utf-8?q?pq6lfEoo81wHVBer4prQQTJlGr303dkXoKnLY0DPERbZF+wjKON9my7Z5bQmO4tk6?=\n\t=?utf-8?q?NZ/vXy6FESqXt991M+iod6CZc7V5Lf+yRrkaXgJfXDbYWyqAc+SIS0aHkS5IWWCcA?=\n\t=?utf-8?q?pF9Hrdc5mu6DEd7LqYSrAOJDMqu5Je6aeqzt9+N2EjywMKYGm5ChryMls3gwBi7ET?=\n\t=?utf-8?q?qCY/bqC1gGQmCBGyvjKQC6RTUmG1i2P068JbYHgwI8UEQposod1sHQQJm7elH+QC9?=\n\t=?utf-8?q?oGokKuzndX8uVRImj7ugIZUX3H46uEUtlwhpf3YqT4bmhra/lGZ7Im5WcDo/eFNLY?=\n\t=?utf-8?q?RrGEUFEdn+Dplq25tsgKYlY0SmAdgCB6WS2RF6jz4bDNhIKi2rlkiE48C08o8YkIq?=\n\t=?utf-8?q?AEhNaptPa99Hm3yLTpMBs/6a6cP4cfSl186LqLnKFVpu2Z7Wads0qiOhZNH5mvdUJ?=\n\t=?utf-8?q?VEsae4Vg2RZYC95KFF1qiO5QpYKgXbvL1hU7F0vTIZ+obB5Ypr18bksXcUb2jVil1?=\n\t=?utf-8?q?0IW8B60dtzRAlqbf7DGOPmApXrA0mRnCbV/EdSRYfkkCeIQfrAFEUmrCl8bi7rsuR?=\n\t=?utf-8?q?TKOTfarqce4SgmlOV5K+Yg28IwoDqLOTsOxzFB1Ce0rfCQThmTvhRublMbvSJ17yR?=\n\t=?utf-8?q?gKYB0RVmqXqpSNIWqaD+SrnAX0xHh+5p5WMWeyArJpIW41YZs7aNvNveIQytNF8Qr?=\n\t=?utf-8?q?NY3JdgvrfZsRl0DaFo77jnPkqcIIoH4H88FFOw3P5czmJRUGrQtiF+H08C9L9NHLO?=\n\t=?utf-8?q?0dAIRjsox1I0rsM3WmenQ2cA2IqLKyv+arEkMlHfziABgwVPa1oIuucqTzz2RMZeN?=\n\t=?utf-8?q?c8RZ7eCPlbMkSg6JNQd1OzJzt3e/dkb8qg2ue83be78AMWTdykQGrZrLAcqLband+?=\n\t=?utf-8?q?KS7d9kCjz+zBYW5Bth+29qDBSPSLfO0CXluZswpV7KmOoyvzHg/cXVrX0jPRWP3jf?=\n\t=?utf-8?q?JMOufkkXPQuQzZP4VfRzCqfENgyezPvyBo/PI3VcX2f0sp/iWkzUcC+dbHERfMRXY?=\n\t=?utf-8?q?z/iuEn0ozRvstGpeoNUb6R64hf/cK/Fqn1w1S1qsc5qlqQu5afX/7gCfXdS7KktHD?=\n\t=?utf-8?q?yh5nBOCVPtQRmKCHOCY17P044oPVTUxY8AOLR91kTIvRoTOBM4mKrqEr7Vi5Phu2a?=\n\t=?utf-8?q?O2/ZEHaJKl4Bc03yulJcpRzFAo+ZMpBf5L083qOJwPCrMBDCmHBYId/XSA5nK2CpZ?=\n\t=?utf-8?q?g/wTZoC8N3fL?=", "X-OriginatorOrg": "amd.com", "X-MS-Exchange-CrossTenant-Network-Message-Id": "\n 6917589d-83e2-4a37-c7fc-08dc653d680a", "X-MS-Exchange-CrossTenant-AuthSource": "CH2PR12MB4294.namprd12.prod.outlook.com", "X-MS-Exchange-CrossTenant-AuthAs": "Internal", "X-MS-Exchange-CrossTenant-OriginalArrivalTime": "25 Apr 2024 15:35:59.4999 (UTC)", "X-MS-Exchange-CrossTenant-FromEntityHeader": "Hosted", "X-MS-Exchange-CrossTenant-Id": "3dd8961f-e488-4e60-8e11-a82d994e183d", "X-MS-Exchange-CrossTenant-MailboxType": "HOSTED", "X-MS-Exchange-CrossTenant-UserPrincipalName": "\n iIPl3jy+elEcyV6/RwdLn55P18HWqOqPYG/TNfweGoQ0xkTlulGgPzW8gVPvNfId", "X-MS-Exchange-Transport-CrossTenantHeadersStamped": "LV8PR12MB9083", "X-BeenThere": "dev@dpdk.org", "X-Mailman-Version": "2.1.29", "Precedence": "list", "List-Id": "DPDK patches and discussions <dev.dpdk.org>", "List-Unsubscribe": "<https://mails.dpdk.org/options/dev>,\n <mailto:dev-request@dpdk.org?subject=unsubscribe>", "List-Archive": "<http://mails.dpdk.org/archives/dev/>", "List-Post": "<mailto:dev@dpdk.org>", "List-Help": "<mailto:dev-request@dpdk.org?subject=help>", "List-Subscribe": "<https://mails.dpdk.org/listinfo/dev>,\n <mailto:dev-request@dpdk.org?subject=subscribe>", "Errors-To": "dev-bounces@dpdk.org" }, "addressed": null }, { "id": 169674, "web_url": "http://patches.dpdk.org/comment/169674/", "msgid": "<3791bf00-5dcb-4caf-abbf-f464c39182bd@amd.com>", "list_archive_url": "https://inbox.dpdk.org/dev/3791bf00-5dcb-4caf-abbf-f464c39182bd@amd.com", "date": "2024-04-25T16:21:42", "subject": "Re: [PATCH] net/af_packet: cache align Rx/Tx structs", "submitter": { "id": 2700, "url": "http://patches.dpdk.org/api/people/2700/?format=api", "name": "Ferruh Yigit", "email": "ferruh.yigit@amd.com" }, "content": "On 4/25/2024 4:06 PM, Mattias Rönnblom wrote:\n> On 2024-04-25 16:04, Ferruh Yigit wrote:\n>> On 4/25/2024 10:26 AM, Mattias Rönnblom wrote:\n>>> On 2024-04-25 01:55, Stephen Hemminger wrote:\n>>>> On Thu, 25 Apr 2024 00:27:36 +0200\n>>>> Mattias Rönnblom <hofors@lysator.liu.se> wrote:\n>>>>\n>>>>> On 2024-04-24 21:13, Stephen Hemminger wrote:\n>>>>>> On Wed, 24 Apr 2024 18:50:50 +0100\n>>>>>> Ferruh Yigit <ferruh.yigit@amd.com> wrote:\n>>>>>>   \n>>>>>>>> I don't know how slow af_packet is, but if you care about\n>>>>>>>> performance,\n>>>>>>>> you don't want to use atomic add for statistics.\n>>>>>>>>        \n>>>>>>>\n>>>>>>> There are a few soft drivers already using atomics adds for\n>>>>>>> updating stats.\n>>>>>>> If we document expectations from 'rte_eth_stats_reset()', we can\n>>>>>>> update\n>>>>>>> those usages.\n>>>>>>\n>>>>>> Using atomic add is lots of extra overhead. The statistics are not\n>>>>>> guaranteed\n>>>>>> to be perfect.  If nothing else, the bytes and packets can be skewed.\n>>>>>>     \n>>>>>\n>>>>> The sad thing here is that in case the counters are reset within the\n>>>>> load-modify-store cycle of the lcore counter update, the reset may end\n>>>>> up being a nop. So, it's not like you missed a packet or two, or\n>>>>> suffer\n>>>>> some transient inconsistency, but you completed and permanently\n>>>>> ignored\n>>>>> the reset request.\n>>>>\n>>>> That is one of the many reasons the Linux kernel intentionally did not\n>>>> implement a reset statistics operation.\n>>>\n>>> DPDK should deprecate statistics reset, it seems to me.\n>>>\n>>> The current API is broken anyway, if you care about correctness. A reset\n>>> function must return the current state of the counters, at the point\n>>> them being reset. Otherwise, a higher layer may miss counter updates.\n>>>\n>>> The af_packet PMD should return -ENOTSUP on reset (which is allowed by\n>>> the API).\n>>>\n>>> Maintaining an offset-since-last-reset for counters is a control plane\n>>> thing, and shouldn't be in PMDs. (If MT-safe reset for SW-managed\n>>> counters are to be expected from the PMDs, we should have some helper\n>>> API to facilitate its efficient & correct-enough implementation.)\n>>>\n>>\n>> statistics reset works for HW devices, instead of removing statics reset\n>> I am for documenting API that it may be not reliable, I can send a patch\n>> for it.\n>>\n> \n> With API you mean <rte_ethdev.h>?\n> \n> If rte_ethdev_stats_reset() sometimes reset the counters, and sometimes\n> doesn't, it should also have a name that reflect those semantics.\n> rte_ethdev_stats_reset_or_perhaps_not()\n> rte_ethdev_stats_usually_reset()\n> \n\n:) point taken\n\n> Rather than expecting the application to deal with unspecified\n> non-determinism is seems better to specify under which conditions the\n> reset is reliable (i.e., it's not MT safe). A non-MT-safe reset will\n> limit it usefulness though. Also, it will make having an MT safe reset\n> in a PMD pretty useless, except if the app is programmed not toward the\n> API, but toward some particular PMD.\n> \n>> With above change, we can be more relax on stats update specially for\n>> soft drivers, and can convert atomic_add stats updates to \"atomic load +\n>> add + atomic store\".\n>>\n>> Does this plan make sense?\n> \n> Not really.\n> \n> Short-term the -ENOTSUP seems like the best option. Second best option\n> is to implement a proper MT safe reset.\n> \n> What is unfortunate is that the API is silent on MT safety. I've\n> *assumed* that many users will have assumed it MT safe, but there's\n> nothing in the documentation to support that. Rather the opposite, the\n> generic section of DPDK MT safety only mentions PMD RX and TX functions.\n> \n> This issue is not limited to this PMD or even to ethdev.\n> rte_event_dev_xstats_reset() and some of the event devs have the same\n> problem.\n>\n\nTrue, and we can document multi thread safety of APIs at least, this is\nsmall effort.\n\nFor reliable stats reset, implementing offset logic is not that hard,\nand enables having more optimized stats update in datapath.\nWe can go with this option instead of unreliable stats reset.\n\nI can add this at least for af_packet as sample.\nAs far as I can see, with this update we can get rid of volatile\nqualifier and atomic set for stats variables.", "headers": { "Return-Path": "<dev-bounces@dpdk.org>", "X-Original-To": "patchwork@inbox.dpdk.org", "Delivered-To": "patchwork@inbox.dpdk.org", "Received": [ "from mails.dpdk.org (mails.dpdk.org [217.70.189.124])\n\tby inbox.dpdk.org (Postfix) with ESMTP id F1CE443F08;\n\tThu, 25 Apr 2024 18:21:50 +0200 (CEST)", "from mails.dpdk.org (localhost [127.0.0.1])\n\tby mails.dpdk.org (Postfix) with ESMTP id 75AB7438DA;\n\tThu, 25 Apr 2024 18:21:50 +0200 (CEST)", "from NAM12-BN8-obe.outbound.protection.outlook.com\n (mail-bn8nam12on2085.outbound.protection.outlook.com [40.107.237.85])\n by mails.dpdk.org (Postfix) with ESMTP id 54B74438CF\n for <dev@dpdk.org>; Thu, 25 Apr 2024 18:21:48 +0200 (CEST)", "from CH2PR12MB4294.namprd12.prod.outlook.com (2603:10b6:610:a9::11)\n by CH3PR12MB8903.namprd12.prod.outlook.com (2603:10b6:610:17a::7)\n with Microsoft SMTP Server (version=TLS1_2,\n cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7519.24; Thu, 25 Apr\n 2024 16:21:46 +0000", "from CH2PR12MB4294.namprd12.prod.outlook.com\n ([fe80::282f:29d3:cac1:cde3]) by CH2PR12MB4294.namprd12.prod.outlook.com\n ([fe80::282f:29d3:cac1:cde3%7]) with mapi id 15.20.7472.044; Thu, 25 Apr 2024\n 16:21:46 +0000" ], "ARC-Seal": "i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;\n b=EvMOm0Fr7rDVe+XQJJS+iX9wMTUFghkhjjEmPv/2ungd722yp0clJJ3vjgVlGkdy6dE4Bx5Zu5H1ywi4uLjzt9FTxdSxYxTfdYxl1zwrE4xvKOcbqy6MS35PIdlhwxvGtdtvbq4Au5r/5f7+OY0uziV99UjrJqgsTXW7yMhDL9fW0kFfs1ohO63dkmfjpoyajXi69gh96S/7wrSsNzJi8V1hfN/bv6AtWVgZg8fnt7AG6JZZsxeaFD6napVJm6GeUxyHio/ctoh9s8LX+Em0R+haYV5KlhO/SJ6weGPpXpMziRVdWa57x22Sz0ygOXliuYyGCzbSDLa11YeoSXlHGw==", "ARC-Message-Signature": "i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;\n s=arcselector9901;\n h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;\n bh=NlwAnsa9Jrhd6f58npSwczy9DiVJb81N8PLQcoE4DiM=;\n b=Qe8AoP01FFcLSCbp4Vg9gG7JrIio1SO8j93jfBgvPbu//z8PLcbsDvrtjuGy6ky01UpCdGXriPWrCrLM3+8cFF3CLnpxFMyz1273Ec38aeUftYI2liyxwo7iaa7Idv0Le9u82eUc3Z7c8NHr+ow60cpqcmzcixGuE7DoQyFo+fcDqjbnsFizmFk9UIytmldlI7NJhSi5hcG2NS+qQ5UVy1dHs2NIzDPu3k0oEXTrWk1CFBGplAsxtBpr/MKKrDAOgyKH7ML1/Ku+yUp5KTRfFeuTuQGqaMaaAFiuyQ8kmhBFPU/pXNyp2sxLek3kdcsChdvo91cp77IxL3+JA3wPbQ==", "ARC-Authentication-Results": "i=1; mx.microsoft.com 1; spf=pass\n smtp.mailfrom=amd.com; dmarc=pass action=none header.from=amd.com; dkim=pass\n header.d=amd.com; arc=none", "DKIM-Signature": "v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1;\n h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;\n bh=NlwAnsa9Jrhd6f58npSwczy9DiVJb81N8PLQcoE4DiM=;\n b=tQrDWCu6Do1EpQe4EKg8PIQ+apumZf/LslPz6GvzekEFMTbNO9PoXbVM3smPvCUyuglXj3f8Q5Bli1mE1dFwHXdYpbcmLCygvdX1uC4v62V7ZRwjejEEJCYMcWM9R7pQcWT7O7iPRwz7QZO9aFA/G7AvNN3vQjPIdxO8k0cwtsk=", "Authentication-Results": "dkim=none (message not signed)\n header.d=none;dmarc=none action=none header.from=amd.com;", "Message-ID": "<3791bf00-5dcb-4caf-abbf-f464c39182bd@amd.com>", "Date": "Thu, 25 Apr 2024 17:21:42 +0100", "User-Agent": "Mozilla Thunderbird", "Subject": "Re: [PATCH] net/af_packet: cache align Rx/Tx structs", "To": "=?utf-8?q?Mattias_R=C3=B6nnblom?= <hofors@lysator.liu.se>,\n Stephen Hemminger <stephen@networkplumber.org>", "Cc": "=?utf-8?q?Mattias_R=C3=B6nnblom?= <mattias.ronnblom@ericsson.com>,\n \"John W . Linville\" <linville@tuxdriver.com>, dev@dpdk.org,\n Tyler Retzlaff <roretzla@linux.microsoft.com>,\n Honnappa Nagarahalli <Honnappa.Nagarahalli@arm.com>, =?utf-8?q?Morten_Br?=\n\t=?utf-8?q?=C3=B8rup?= <mb@smartsharesystems.com>", "References": "<20240423090813.94110-1-mattias.ronnblom@ericsson.com>\n <6f7aabcb-2c12-4cfe-ae9d-73b42bfd4977@amd.com>\n <63dbb564-61f6-4d9f-9c13-4a21f5e97dc9@lysator.liu.se>\n <5d2a0887-527a-4948-943c-65f1dfda9328@amd.com>\n <3b2cf48e-2293-4226-b6cd-5f4dd3969f99@lysator.liu.se>\n <0ff40e60-926b-44eb-8af5-2e16aff1c336@amd.com>\n <20240424121330.7547e290@hermes.local>\n <2371b1a8-bdc5-4184-8491-54e2e3a64211@lysator.liu.se>\n <20240424165534.2ad8ae0a@hermes.local>\n <4c0f1625-4387-4870-a60a-dc423885811e@lysator.liu.se>\n <2d07603e-e024-45a4-bfb1-c350b08ccdfb@amd.com>\n <37e85e59-585b-4503-81c2-2f8fc0a6746f@lysator.liu.se>", "Content-Language": "en-US", "From": "Ferruh Yigit <ferruh.yigit@amd.com>", "Autocrypt": "addr=ferruh.yigit@amd.com; keydata=\n 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 8Zk=", "In-Reply-To": "<37e85e59-585b-4503-81c2-2f8fc0a6746f@lysator.liu.se>", "Content-Type": "text/plain; charset=UTF-8", "Content-Transfer-Encoding": "8bit", "X-ClientProxiedBy": "DB9PR05CA0024.eurprd05.prod.outlook.com\n (2603:10a6:10:1da::29) To CH2PR12MB4294.namprd12.prod.outlook.com\n (2603:10b6:610:a9::11)", "MIME-Version": "1.0", "X-MS-PublicTrafficType": "Email", "X-MS-TrafficTypeDiagnostic": "CH2PR12MB4294:EE_|CH3PR12MB8903:EE_", "X-MS-Office365-Filtering-Correlation-Id": "06f7e9fc-0a63-4bf4-13f9-08dc6543cd54", "X-MS-Exchange-SenderADCheck": "1", "X-MS-Exchange-AntiSpam-Relay": "0", "X-Microsoft-Antispam": "BCL:0;ARA:13230031|376005|366007|1800799015;", "X-Microsoft-Antispam-Message-Info": "=?utf-8?q?0ps+sg5sMCRIPNw4NU1l7z1KmMY9m6e?=\n\t=?utf-8?q?k7kbpJs1fYUg0CBSYZ4ITY2EDMCptCkdKlFyhXuc70Xc9E77zr+XemvfDetaErES7?=\n\t=?utf-8?q?LqrWmSb+yMsFJDZ/VAi3zH13C5AGmyixZQL4dsg9ZXkvUYYx+k8fgXXx15Iqc0UbQ?=\n\t=?utf-8?q?XPUV8sY5vA9oftyNSTPNjYDzW3L2l2Qor0WQ0ftrOFAG736jwKl6AMYiCxAG/h4F+?=\n\t=?utf-8?q?D43z7s7S6DKi9o0/Q4c4vDxa9l/L3ZWALj4v9kqA6qFnaxi3LnB+GlhDcp9YHgp/D?=\n\t=?utf-8?q?CT1YuiS4MhbwVKO+DDuYPWMQEmrEp6iCM+jxLaWMbdvaMXLRhI5bl6zDOxNMUA4Jj?=\n\t=?utf-8?q?DZYO5RnnUkBqx4FWp8ucdmfZ/xubID4hzc70EpV1IghIkDJCqskoVRMgFXeCPxR1I?=\n\t=?utf-8?q?AC46X+3z2YeqmvEWPTOBb2z04LibEEfR6+BtT75HODn1caL1Y20X48YdB22t+DrZf?=\n\t=?utf-8?q?M8zPflYY0FRogbrJsp5KTy8c7oZu3BXpuQ/I6ylQhwS1AvGgQ4bhY3Yn0rdpoCMs+?=\n\t=?utf-8?q?hBI2U8X+eI5iKwXNJFAJ1vxywa82zKmMJkXyKyIBQcNeL4GjvugtjF3VfYPEEg7kg?=\n\t=?utf-8?q?ZEXlOAqwXAYxISXCP3r/0PPmVxiCzdLZMxShF3OThhFNgN5hPmnXmc6AWHZKM/sfe?=\n\t=?utf-8?q?jm/yJV2pIg0MuOYj+DSvioMRarWC+a9XTn2BdM4swsWLtcszBUdk5JX5ZO8N3J1TQ?=\n\t=?utf-8?q?BaINqh9jc3wHWz1CLYwIbPatTHWNYthRk9vYaqKmEXR1Gnu+WiwRM6QyWg9U8CfN1?=\n\t=?utf-8?q?WAbnpznY0lReTjMm5aXhTw7uzYK4GZQa/P8n8uIgP9HmeBF0LB86ix5BhRSKMWnS3?=\n\t=?utf-8?q?1Xh7hBkryCSroXEBo4yaXzgoJ5Xd1jTnPq+3pJkFPnO9v30wXv+XOJekO8N8PJHKM?=\n\t=?utf-8?q?nz9ObnESG28jyXYVgR5oweohmAG+ndFmiW8SXlqFjoiRvOHk4o2x9nSQOTb/rQ3Xr?=\n\t=?utf-8?q?4lrRYP3/iWPyQTYNaI+k+UnX7Pha5tezMK3Y6Yxy+uZ2/nUcWPq2VlBnMME/skjyr?=\n\t=?utf-8?q?EXm8FiqTPtdBhGpnqE8Co0LVqjJcDzrdSlSlWgafYTofcNAfynBBB/pJ0wiftHQA0?=\n\t=?utf-8?q?0V4Twcomeun1ctl42ub76pOk4zcRTqBiVDZ0jS/0XXaT5Y+b9JGgMSOK+6OKWsc7E?=\n\t=?utf-8?q?YjgOUfac3pRclhU67xeSBUA6qetlCqxp1BXDWVRiYRmNGu4jovhbkR9HmCmMhcG1/?=\n\t=?utf-8?q?Ema/Cniu0xRza9GMm8jnvbEhGcemZelVlzOw=3D=3D?=", "X-Forefront-Antispam-Report": "CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:;\n IPV:NLI; SFV:NSPM; H:CH2PR12MB4294.namprd12.prod.outlook.com; PTR:; CAT:NONE;\n SFS:(13230031)(376005)(366007)(1800799015); DIR:OUT; SFP:1101;", "X-MS-Exchange-AntiSpam-MessageData-ChunkCount": "1", "X-MS-Exchange-AntiSpam-MessageData-0": "=?utf-8?q?Y791RwUedS8sdgSKo+JwEa3UCDR5?=\n\t=?utf-8?q?gudL9QiPv4/dw5o7zF/iG/pFbUHVjY9Pfjz2bwD22g/DT9tiDrgA9JeDoJ5cKeEbd?=\n\t=?utf-8?q?cf9zNOAPbvE1lCjx5Nwdk0UdxGsAAxHuLg6EQ8A6T6DGM7Nkl/8rgtOoxJzXGqxR3?=\n\t=?utf-8?q?KLpN8rSYI/qfoLwsklESSFELJmlpBOIKLlp7O8Nu3K022fi8C3Hn6xL6lxvbFewOJ?=\n\t=?utf-8?q?DOnXqOBNgrcZKdBWsHwr55mueyRBWSrqFnQqDI6jmwhhUPHls4iq1WY3UzIkVdxf6?=\n\t=?utf-8?q?053AD/CQ2uhWXbvySnCnZtEwk5jt+jJ5YWW/Rz3cz127UzacHyictVLG+eGK5H3w0?=\n\t=?utf-8?q?oYjEbaQrGx3ie6xd0Bg50MSBiwD5YqtaWuCsRZs3Vqgd1+a8XF5m14zc7EZ0QC8H/?=\n\t=?utf-8?q?0t8/AzOK7PJhhtfRO0gTj6bAWhzR4WSf8PbjKdzRLHf43H/gYH4VPGvdg6ZTQSSo+?=\n\t=?utf-8?q?WM1Qduu3PvAFjlpWUqa4wTOulEFlHVI/a+FNvQWj74jgygjMYE6foAq/0NXED4yG1?=\n\t=?utf-8?q?JBSweIpYmZm+cCLK2k7Df3BlQ2QjjAUM9mab1B1nuSv7818j3ptxaznHrfKkxnT3x?=\n\t=?utf-8?q?ltfrYZNJVnWWeWbRxlFH3g4fVgHY44dhcZjc0ktnh+qkzZ9bzLBHtXkchbY77eeCD?=\n\t=?utf-8?q?hbjlBUdVokxmUYzGUO89CT+g1DV11Hg4pYJG2KbziymsKE1B09k98T0VTbc5IXo9r?=\n\t=?utf-8?q?Ooa4JewrDV8BCBLbdXBAxMTh1oeffeyavW3P6UMo2jvsj7sDzYfZwMG4Fe4jJoBM6?=\n\t=?utf-8?q?ALkCbczkF2dji1wSWXJSBFwfIimH3G1ZJp1I+WXQ+bBsnNsBudaEQEOp5Uxcj638F?=\n\t=?utf-8?q?Iire7Iylc0wQvf7xQIY+QeVhhjHibdqZ85yAiQqc1702LGWRtWDxNr3MHsfQ5aPr/?=\n\t=?utf-8?q?Cd4N2vuWIgk1+FmO6sl6UQmwmbQCd/cRDuJxMnMW8f/eOjmjklSJzlMl+Q8Lc7b80?=\n\t=?utf-8?q?H7QvvMn+D/8iQ7xUdaIQ2z0qc0kjVJFor95M0a4UDRWuZmBjj8tH3zGo/ap6VQ3Ab?=\n\t=?utf-8?q?ZJiuLsoUuEZWM5AzwYD6Bn0XWvdJFpi6iCN+EZN3Vdq4LMYI4SbODBMwia/dSdhZ+?=\n\t=?utf-8?q?zGSgbNmdGWPuk5EqNeI2vk16AN9QtiZyXMzxPMfgVWGgmxklXO6smjARkOSwJ7RIq?=\n\t=?utf-8?q?euDSAYNc8oJN68a4xRZa5EPcUyvYO/i+Jlpw5hazfhqPvq1qOm469ItSkxfzYN4K/?=\n\t=?utf-8?q?M1FJlc84TQOHyq1nOKemU6S3K6hosxaoGwolNlJqruu4GtUtOXk32b9nXcyY23Wiy?=\n\t=?utf-8?q?5y0QCIEIk09c1Cv5wheEIHH2DXVg9+rPpFoWSLF7+GV1Kv2E8bbz6TQXPFjG6EvD1?=\n\t=?utf-8?q?W9FwFQphK3eMC0GN6Np64JTO6UQ2U5uigy0vFakt5byd5WR+GDh4dQKcnxU1cAXVC?=\n\t=?utf-8?q?dq6hSaKEoY5RSuOtS2zEs2oY8xbSzucvkTTVzHZdLLuyIXJHA3G0ViyKkm0jsjWib?=\n\t=?utf-8?q?QS/W4YlKSVFe7+EFmUbs0OnZOzV8zq91b3UbGbBMLkW1ZRRkcF+1w496EdbiZiby+?=\n\t=?utf-8?q?f/Aph77vm19O?=", "X-OriginatorOrg": "amd.com", "X-MS-Exchange-CrossTenant-Network-Message-Id": "\n 06f7e9fc-0a63-4bf4-13f9-08dc6543cd54", "X-MS-Exchange-CrossTenant-AuthSource": "CH2PR12MB4294.namprd12.prod.outlook.com", "X-MS-Exchange-CrossTenant-AuthAs": "Internal", "X-MS-Exchange-CrossTenant-OriginalArrivalTime": "25 Apr 2024 16:21:46.4098 (UTC)", "X-MS-Exchange-CrossTenant-FromEntityHeader": "Hosted", "X-MS-Exchange-CrossTenant-Id": "3dd8961f-e488-4e60-8e11-a82d994e183d", "X-MS-Exchange-CrossTenant-MailboxType": "HOSTED", "X-MS-Exchange-CrossTenant-UserPrincipalName": "\n hddIoVIUYJpTCAhG6KFD083CjJsLB5Jc2SsuApGbAPEbw+qswueCH4Hm5A1v7byq", "X-MS-Exchange-Transport-CrossTenantHeadersStamped": "CH3PR12MB8903", "X-BeenThere": "dev@dpdk.org", "X-Mailman-Version": "2.1.29", "Precedence": "list", "List-Id": "DPDK patches and discussions <dev.dpdk.org>", "List-Unsubscribe": "<https://mails.dpdk.org/options/dev>,\n <mailto:dev-request@dpdk.org?subject=unsubscribe>", "List-Archive": "<http://mails.dpdk.org/archives/dev/>", "List-Post": "<mailto:dev@dpdk.org>", "List-Help": "<mailto:dev-request@dpdk.org?subject=help>", "List-Subscribe": "<https://mails.dpdk.org/listinfo/dev>,\n <mailto:dev-request@dpdk.org?subject=subscribe>", "Errors-To": "dev-bounces@dpdk.org" }, "addressed": null }, { "id": 169678, "web_url": "http://patches.dpdk.org/comment/169678/", "msgid": "<f53f0bd3-f551-4d48-bf0c-b46fe64a4a3d@lysator.liu.se>", "list_archive_url": "https://inbox.dpdk.org/dev/f53f0bd3-f551-4d48-bf0c-b46fe64a4a3d@lysator.liu.se", "date": "2024-04-26T07:25:40", "subject": "Re: [PATCH] net/af_packet: cache align Rx/Tx structs", "submitter": { "id": 906, "url": "http://patches.dpdk.org/api/people/906/?format=api", "name": "Mattias Rönnblom", "email": "hofors@lysator.liu.se" }, "content": "On 2024-04-25 17:35, Ferruh Yigit wrote:\n> On 4/25/2024 4:08 PM, Mattias Rönnblom wrote:\n>> On 2024-04-25 16:08, Ferruh Yigit wrote:\n>>> On 4/23/2024 12:15 PM, Ferruh Yigit wrote:\n>>>>> Signed-off-by: Mattias Rönnblom <mattias.ronnblom@ericsson.com>\n>>>>> ---\n>>>>>   drivers/net/af_packet/rte_eth_af_packet.c | 5 +++--\n>>>>>   1 file changed, 3 insertions(+), 2 deletions(-)\n>>>>>\n>>>>> diff --git a/drivers/net/af_packet/rte_eth_af_packet.c\n>>>>> b/drivers/net/af_packet/rte_eth_af_packet.c\n>>>>> index 397a32db58..28aeb7d08e 100644\n>>>>> --- a/drivers/net/af_packet/rte_eth_af_packet.c\n>>>>> +++ b/drivers/net/af_packet/rte_eth_af_packet.c\n>>>>> @@ -6,6 +6,7 @@\n>>>>>    * All rights reserved.\n>>>>>    */\n>>>>>   +#include <rte_common.h>\n>>>>>   #include <rte_string_fns.h>\n>>>>>   #include <rte_mbuf.h>\n>>>>>   #include <ethdev_driver.h>\n>>>>> @@ -53,7 +54,7 @@ struct pkt_rx_queue {\n>>>>>         volatile unsigned long rx_pkts;\n>>>>>       volatile unsigned long rx_bytes;\n>>>>> -};\n>>>>> +} __rte_cache_aligned;\n>>>>> \n>>>> Latest location for '__rte_cache_aligned' tag is at the beginning of the\n>>>> struct [1], so something like:\n>>>> `struct __rte_cache_aligned pkt_rx_queue {`\n>>>>\n>>>> [1]\n>>>> https://patchwork.dpdk.org/project/dpdk/list/?series=31746&state=%2A&archive=both\n>>>>\n>>>\n>>> Hi Mattias,\n>>>\n>>> We dived into side discussions but with above change I can proceed with\n>>> the patch.\n>>\n>> OK.\n>>\n>> Should this go into some stable branch as well?\n>>\n> \n> I don't see any reason for not merging to stable trees. For this please\n> add fixes and stable tags.\n\nOK, I'll submit a v2. Thanks.", "headers": { "Return-Path": "<dev-bounces@dpdk.org>", "X-Original-To": "patchwork@inbox.dpdk.org", "Delivered-To": "patchwork@inbox.dpdk.org", "Received": [ "from mails.dpdk.org (mails.dpdk.org [217.70.189.124])\n\tby inbox.dpdk.org (Postfix) with ESMTP id 05C6243F12;\n\tFri, 26 Apr 2024 09:25:45 +0200 (CEST)", "from mails.dpdk.org (localhost [127.0.0.1])\n\tby mails.dpdk.org (Postfix) with ESMTP id C04E243AE0;\n\tFri, 26 Apr 2024 09:25:44 +0200 (CEST)", "from mail.lysator.liu.se (mail.lysator.liu.se [130.236.254.3])\n by mails.dpdk.org (Postfix) with ESMTP id 4BDBA402EF\n for <dev@dpdk.org>; Fri, 26 Apr 2024 09:25:43 +0200 (CEST)", "from mail.lysator.liu.se (localhost [127.0.0.1])\n by mail.lysator.liu.se (Postfix) with ESMTP id D2637128C8\n for <dev@dpdk.org>; Fri, 26 Apr 2024 09:25:42 +0200 (CEST)", "by mail.lysator.liu.se (Postfix, from userid 1004)\n id C618D128C6; Fri, 26 Apr 2024 09:25:42 +0200 (CEST)", "from [192.168.1.59] (h-62-63-215-114.A163.priv.bahnhof.se\n [62.63.215.114])\n (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)\n key-exchange X25519 server-signature RSA-PSS (2048 bits) server-digest\n SHA256)\n (No client certificate requested)\n by mail.lysator.liu.se (Postfix) with ESMTPSA id E468012849;\n Fri, 26 Apr 2024 09:25:40 +0200 (CEST)" ], "X-Spam-Checker-Version": "SpamAssassin 4.0.0 (2022-12-13) on\n hermod.lysator.liu.se", "X-Spam-Level": "", "X-Spam-Status": "No, score=-1.3 required=5.0 tests=ALL_TRUSTED,AWL,\n T_SCC_BODY_TEXT_LINE autolearn=disabled version=4.0.0", "X-Spam-Score": "-1.3", "Message-ID": "<f53f0bd3-f551-4d48-bf0c-b46fe64a4a3d@lysator.liu.se>", "Date": "Fri, 26 Apr 2024 09:25:40 +0200", "MIME-Version": "1.0", "User-Agent": "Mozilla Thunderbird", "Subject": "Re: [PATCH] net/af_packet: cache align Rx/Tx structs", "To": "Ferruh Yigit <ferruh.yigit@amd.com>,\n =?utf-8?q?Mattias_R=C3=B6nnblom?= <mattias.ronnblom@ericsson.com>,\n \"John W . Linville\" <linville@tuxdriver.com>", "Cc": "dev@dpdk.org, Tyler Retzlaff <roretzla@linux.microsoft.com>", "References": "<20240423090813.94110-1-mattias.ronnblom@ericsson.com>\n <6f7aabcb-2c12-4cfe-ae9d-73b42bfd4977@amd.com>\n <a2429203-d2c7-40d3-aa18-d7201dc5d341@amd.com>\n <fe2b1ca1-027c-4582-a225-3be40b263a46@lysator.liu.se>\n <0cd9b883-6bf2-435f-a1f2-c1e07afce2db@amd.com>", "Content-Language": "en-US", "From": "=?utf-8?q?Mattias_R=C3=B6nnblom?= <hofors@lysator.liu.se>", "In-Reply-To": "<0cd9b883-6bf2-435f-a1f2-c1e07afce2db@amd.com>", "Content-Type": "text/plain; charset=UTF-8; format=flowed", "Content-Transfer-Encoding": "8bit", "X-Virus-Scanned": "ClamAV using ClamSMTP", "X-BeenThere": "dev@dpdk.org", "X-Mailman-Version": "2.1.29", "Precedence": "list", "List-Id": "DPDK patches and discussions <dev.dpdk.org>", "List-Unsubscribe": "<https://mails.dpdk.org/options/dev>,\n <mailto:dev-request@dpdk.org?subject=unsubscribe>", "List-Archive": "<http://mails.dpdk.org/archives/dev/>", "List-Post": "<mailto:dev@dpdk.org>", "List-Help": "<mailto:dev-request@dpdk.org?subject=help>", "List-Subscribe": "<https://mails.dpdk.org/listinfo/dev>,\n <mailto:dev-request@dpdk.org?subject=subscribe>", "Errors-To": "dev-bounces@dpdk.org" }, "addressed": null }, { "id": 169709, "web_url": "http://patches.dpdk.org/comment/169709/", "msgid": "<CAJvnSUCmcYV8Xo-tSQoCajCVBgGS6jw0gG8xwm05xhxAmtRcKg@mail.gmail.com>", "list_archive_url": "https://inbox.dpdk.org/dev/CAJvnSUCmcYV8Xo-tSQoCajCVBgGS6jw0gG8xwm05xhxAmtRcKg@mail.gmail.com", "date": "2024-04-26T21:27:27", "subject": "Re: [PATCH] net/af_packet: cache align Rx/Tx structs", "submitter": { "id": 2907, "url": "http://patches.dpdk.org/api/people/2907/?format=api", "name": "Patrick Robb", "email": "probb@iol.unh.edu" }, "content": "Recheck-request: iol-compile-amd64-testing\n\nThe DPDK Community Lab updated to the latest Alpine image yesterday, which\nresulted in all Alpine builds failing. The failure is unrelated to your\npatch, and this recheck should remove the fail on Patchwork, as we have\ndisabled Alpine testing for now.", "headers": { "Return-Path": "<dev-bounces@dpdk.org>", "X-Original-To": "patchwork@inbox.dpdk.org", "Delivered-To": "patchwork@inbox.dpdk.org", "Received": [ "from mails.dpdk.org (mails.dpdk.org [217.70.189.124])\n\tby inbox.dpdk.org (Postfix) with ESMTP id 640A843F1E;\n\tFri, 26 Apr 2024 23:27:40 +0200 (CEST)", "from mails.dpdk.org (localhost [127.0.0.1])\n\tby mails.dpdk.org (Postfix) with ESMTP id 527CD402EB;\n\tFri, 26 Apr 2024 23:27:40 +0200 (CEST)", "from mail-oo1-f53.google.com (mail-oo1-f53.google.com\n [209.85.161.53]) by mails.dpdk.org (Postfix) with ESMTP id 6A5F64029B\n for <dev@dpdk.org>; Fri, 26 Apr 2024 23:27:39 +0200 (CEST)", "by mail-oo1-f53.google.com with SMTP id\n 006d021491bc7-5af23552172so1638954eaf.1\n for <dev@dpdk.org>; Fri, 26 Apr 2024 14:27:39 -0700 (PDT)" ], "DKIM-Signature": "v=1; a=rsa-sha256; c=relaxed/relaxed;\n d=iol.unh.edu; s=unh-iol; t=1714166858; x=1714771658; darn=dpdk.org;\n h=cc:to:subject:message-id:date:from:in-reply-to:references\n :mime-version:from:to:cc:subject:date:message-id:reply-to;\n bh=S9jEf5wOWc6aurHWf/R2NWacY1Z9qMcMNdIpajCiDGo=;\n b=PM78qq6r1QN3NKXDAUZPH+qhgWEjIOxOrBS4dL2srdohEdSyMYL1wwKooVvd1uhGjl\n 7EMz7n/MZuJ7QX6eqTRs/xn+VmepFebcT3ae6mhuYcVyHqo6Bg5usUUGJQ+Znmfs+1lb\n G3ZvXMN001Ku8+GzYSw6pouTAz0xDCjy69VCw=", "X-Google-DKIM-Signature": "v=1; a=rsa-sha256; c=relaxed/relaxed;\n d=1e100.net; s=20230601; t=1714166858; x=1714771658;\n h=cc:to:subject:message-id:date:from:in-reply-to:references\n :mime-version:x-gm-message-state:from:to:cc:subject:date:message-id\n :reply-to;\n bh=S9jEf5wOWc6aurHWf/R2NWacY1Z9qMcMNdIpajCiDGo=;\n b=i9Tx2VHoQz/HovClPXJnilIRmTJBS/J/sAxBnnHk1g+nxbD8HkGpK5OgNZdm4HsDNJ\n Jk+dfYLUumuwMs4b50zbDU6TBYPz4Khx45/zfKUhydPD+Gkga/JV0SyM/BjS6weafR8Y\n SKIG4mAh4NvYwLAEje4xTc1W68cq6cLvLzA6v+vCRwgdVaT3lcsQUedoKCSJxvwuq1Oh\n +yqllsCxlA+Hp9tkGMOONaXwxwRUSIUrsA78kvA48fIQgOElvfD7JFdWyyqYgA0B1y8e\n GaKG8kXDrM4LrwkZMLLo8Uwafyjb2QNAYSDs4jzVbAOa+/b6YHdai3FujIHfvYK7oRLK\n +TCg==", "X-Forwarded-Encrypted": "i=1;\n AJvYcCVITugdTHYOza36wZhvQW24S9I7h42Hm6UveQ1yNcbU43GEIjHjyXViTj5CY6geIQCbPNtxgcLyVNAZaqA=", "X-Gm-Message-State": "AOJu0Yyf7hsTUTYtFFmFbzJsojvEZDQHBCIDCwyUIMtSXQNaZURG8JgL\n 8/CPl8fVCoQvYnK/YfdA9cjGFv0Xd/h+BdSIBLdMXwLih+CbZ9EYiTY05noDftvcV91Yt2ngn5C\n 5Ye2wk307FgK3oI2DBK1NZ7WUi3xt66M3pYoFRQ==", "X-Google-Smtp-Source": "\n AGHT+IHc53HDC4iqnGpl+btVCqGD6/bM0xnDEOzKAEVDkJbHg18P+nhmh9U0sjR33OMw4URsRqxbPi0Cyo7SnSnrPfg=", "X-Received": "by 2002:a4a:d46:0:b0:5aa:6a1e:a3d4 with SMTP id\n 67-20020a4a0d46000000b005aa6a1ea3d4mr4584266oob.3.1714166858688; Fri, 26 Apr\n 2024 14:27:38 -0700 (PDT)", "MIME-Version": "1.0", "References": "<20240423090813.94110-1-mattias.ronnblom@ericsson.com>", "In-Reply-To": "<20240423090813.94110-1-mattias.ronnblom@ericsson.com>", "From": "Patrick Robb <probb@iol.unh.edu>", "Date": "Fri, 26 Apr 2024 17:27:27 -0400", "Message-ID": "\n <CAJvnSUCmcYV8Xo-tSQoCajCVBgGS6jw0gG8xwm05xhxAmtRcKg@mail.gmail.com>", "Subject": "Re: [PATCH] net/af_packet: cache align Rx/Tx structs", "To": "=?utf-8?q?Mattias_R=C3=B6nnblom?= <mattias.ronnblom@ericsson.com>", "Cc": "\"John W . Linville\" <linville@tuxdriver.com>, dev@dpdk.org,\n hofors@lysator.liu.se", "Content-Type": "multipart/alternative; boundary=\"000000000000b2c76606170692b9\"", "X-BeenThere": "dev@dpdk.org", "X-Mailman-Version": "2.1.29", "Precedence": "list", "List-Id": "DPDK patches and discussions <dev.dpdk.org>", "List-Unsubscribe": "<https://mails.dpdk.org/options/dev>,\n <mailto:dev-request@dpdk.org?subject=unsubscribe>", "List-Archive": "<http://mails.dpdk.org/archives/dev/>", "List-Post": "<mailto:dev@dpdk.org>", "List-Help": "<mailto:dev-request@dpdk.org?subject=help>", "List-Subscribe": "<https://mails.dpdk.org/listinfo/dev>,\n <mailto:dev-request@dpdk.org?subject=subscribe>", "Errors-To": "dev-bounces@dpdk.org" }, "addressed": null } ]