Patch Detail
get:
Show a patch.
patch:
Update a patch.
put:
Update a patch.
GET /api/patches/139857/?format=api
http://patchwork.dpdk.org/api/patches/139857/?format=api", "web_url": "http://patchwork.dpdk.org/project/dpdk/patch/20240503182730.31693-1-daniel.gregory@bytedance.com/", "project": { "id": 1, "url": "http://patchwork.dpdk.org/api/projects/1/?format=api", "name": "DPDK", "link_name": "dpdk", "list_id": "dev.dpdk.org", "list_email": "dev@dpdk.org", "web_url": "http://core.dpdk.org", "scm_url": "git://dpdk.org/dpdk", "webscm_url": "http://git.dpdk.org/dpdk", "list_archive_url": "https://inbox.dpdk.org/dev", "list_archive_url_format": "https://inbox.dpdk.org/dev/{}", "commit_url_format": "" }, "msgid": "<20240503182730.31693-1-daniel.gregory@bytedance.com>", "list_archive_url": "https://inbox.dpdk.org/dev/20240503182730.31693-1-daniel.gregory@bytedance.com", "date": "2024-05-03T18:27:30", "name": "[v2] eal/arm: replace RTE_BUILD_BUG on non-constant", "commit_ref": null, "pull_url": null, "state": "new", "archived": false, "hash": "3abcdd6f1436aeb215389c26c17ba93584539317", "submitter": { "id": 3322, "url": "http://patchwork.dpdk.org/api/people/3322/?format=api", "name": "Daniel Gregory", "email": "daniel.gregory@bytedance.com" }, "delegate": { "id": 1, "url": "http://patchwork.dpdk.org/api/users/1/?format=api", "username": "tmonjalo", "first_name": "Thomas", "last_name": "Monjalon", "email": "thomas@monjalon.net" }, "mbox": "http://patchwork.dpdk.org/project/dpdk/patch/20240503182730.31693-1-daniel.gregory@bytedance.com/mbox/", "series": [ { "id": 31877, "url": "http://patchwork.dpdk.org/api/series/31877/?format=api", "web_url": "http://patchwork.dpdk.org/project/dpdk/list/?series=31877", "date": "2024-05-03T18:27:30", "name": "[v2] eal/arm: replace RTE_BUILD_BUG on non-constant", "version": 2, "mbox": "http://patchwork.dpdk.org/series/31877/mbox/" } ], "comments": "http://patchwork.dpdk.org/api/patches/139857/comments/", "check": "warning", "checks": "http://patchwork.dpdk.org/api/patches/139857/checks/", "tags": {}, "related": [], "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 CC4D243F37;\n\tFri, 3 May 2024 20:27:40 +0200 (CEST)", "from mails.dpdk.org (localhost [127.0.0.1])\n\tby mails.dpdk.org (Postfix) with ESMTP id 4D268402D4;\n\tFri, 3 May 2024 20:27:40 +0200 (CEST)", "from mail-lj1-f178.google.com (mail-lj1-f178.google.com\n [209.85.208.178])\n by mails.dpdk.org (Postfix) with ESMTP id 10A5D402D0\n for <dev@dpdk.org>; Fri, 3 May 2024 20:27:39 +0200 (CEST)", "by mail-lj1-f178.google.com with SMTP id\n 38308e7fff4ca-2e10b6e2bacso41021131fa.0\n for <dev@dpdk.org>; Fri, 03 May 2024 11:27:39 -0700 (PDT)", "from C02FF2N1MD6T.bytedance.net ([93.115.195.2])\n by smtp.gmail.com with ESMTPSA id\n l8-20020a05600c4f0800b0041bfa349cadsm10190225wmq.16.2024.05.03.11.27.37\n (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);\n Fri, 03 May 2024 11:27:37 -0700 (PDT)" ], "DKIM-Signature": "v=1; a=rsa-sha256; c=relaxed/relaxed;\n d=bytedance.com; s=google; t=1714760858; x=1715365658; darn=dpdk.org;\n h=content-transfer-encoding:mime-version:references:in-reply-to\n :message-id:date:subject:cc:to:from:from:to:cc:subject:date\n :message-id:reply-to;\n bh=yDqB81b7jVd/MwmoVYGWontISmP64yGM4Fw9J1Fynxo=;\n b=Dh73xqc983sfpYcMhQRkGKQm0arlhTmWENBklTqy4KBhvY6LX/NT2HJlWd5uQ7cYvJ\n I9veNQp9fkBF06cur57KQNzCuBDtViNu3tXBdO1NUpLEFRcNdjRdzUSWoCmGaI/t4ra+\n PBh5JUuajD03qfOrO2GwjL77PL5SoO+hZ52YJC/uss7QBic0x2vlGCKS03ysnZiWxyRX\n V0k6JqFNRoOEoRJMp5NK0fStR/7jl+UjWNpUy7w4rFctBwcjPmZT8uUtjirn7vxocnly\n lYjoYR3oU6LbCrfsdtK5qmlDGrYdBJEbUZJdJfS9GvjRL2EierjrjcZ/G8AccPTVDpOx\n 0ZPQ==", "X-Google-DKIM-Signature": "v=1; a=rsa-sha256; c=relaxed/relaxed;\n d=1e100.net; s=20230601; t=1714760858; x=1715365658;\n h=content-transfer-encoding:mime-version:references:in-reply-to\n :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc\n :subject:date:message-id:reply-to;\n bh=yDqB81b7jVd/MwmoVYGWontISmP64yGM4Fw9J1Fynxo=;\n b=dSVzIy5QnDOwAOfPDF6oLXB9A/1bGPH4urKU+Ra9CMuDQzTVAniR7h/k0z7VO6OsS3\n Tb5Jcu+pjFhRgZl3Mtn3qaM2UWvvsXqkHfcsRfVkiYuF/FGNJ2QF0+2V86eOq5RNSYUh\n 7vPMKlcePng/iQyqLWmLl5paQF5HfFyfP9NsaLUUiLpEzKomUCfNdeIewhiq5iaiRlRa\n ArP3nHX16deCWJJs4Z0JXU5XpQY7/I6W9MnikLM70O5596r82pFZK5V5h2YTg21hUWty\n aD34DjR5n7WQUuN6FefMHKSq5bOunxJeq4PT5KGvMukERpxR2WhkozTKd8s8ciQSn5ZN\n tuzg==", "X-Gm-Message-State": "AOJu0Ywb/BZ903zycirgjr2x1w8cbt5k+9dtQO24FqctjpVKbGEMblm6\n TFP+CVefMVfdRbUn5AFT/YBiQEdplGS0bvAySiH4J1rMoHVSm7TMgktCtUFQ7c8=", "X-Google-Smtp-Source": "\n AGHT+IFhlxCik66SRoZFErJzubVnKWhB7l1dPpN6UfvKzSe+Ti5N/VHi/UpX+bshkJV4K2fvNGlwAQ==", "X-Received": "by 2002:a2e:9310:0:b0:2e2:72a7:843c with SMTP id\n e16-20020a2e9310000000b002e272a7843cmr1228363ljh.36.1714760858349;\n Fri, 03 May 2024 11:27:38 -0700 (PDT)", "From": "Daniel Gregory <daniel.gregory@bytedance.com>", "To": "Ruifeng Wang <ruifeng.wang@arm.com>", "Cc": "dev@dpdk.org, Punit Agrawal <punit.agrawal@bytedance.com>,\n Liang Ma <liangma@bytedance.com>,\n Daniel Gregory <daniel.gregory@bytedance.com>, feifei.wang2@arm.com", "Subject": "[PATCH v2] eal/arm: replace RTE_BUILD_BUG on non-constant", "Date": "Fri, 3 May 2024 19:27:30 +0100", "Message-Id": "<20240503182730.31693-1-daniel.gregory@bytedance.com>", "X-Mailer": "git-send-email 2.39.3 (Apple Git-146)", "In-Reply-To": "<20240502142116.63760-1-daniel.gregory@bytedance.com>", "References": "<20240502142116.63760-1-daniel.gregory@bytedance.com>", "MIME-Version": "1.0", "Content-Type": "text/plain; charset=UTF-8", "Content-Transfer-Encoding": "8bit", "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" }, "content": "The ARM implementation of rte_pause uses RTE_BUILD_BUG_ON to check\nmemorder, which is not constant. This causes compile errors when it is\nenabled with RTE_ARM_USE_WFE. eg.\n\n../lib/eal/arm/include/rte_pause_64.h: In function ‘rte_wait_until_equal_16’:\n../lib/eal/include/rte_common.h:530:56: error: expression in static assertion is not constant\n 530 | #define RTE_BUILD_BUG_ON(condition) do { static_assert(!(condition), #condition); } while (0)\n | ^~~~~~~~~~~~\n../lib/eal/arm/include/rte_pause_64.h:156:9: note: in expansion of macro ‘RTE_BUILD_BUG_ON’\n 156 | RTE_BUILD_BUG_ON(memorder != rte_memory_order_acquire &&\n | ^~~~~~~~~~~~~~~~\n\nFix the compile errors by replacing the check with an assert, like in\nthe generic implementation (lib/eal/include/generic/rte_pause.h).\n\nFixes: 875f350924b8 (\"eal: add a new helper for wait until scheme\")\n\nSigned-off-by: Daniel Gregory <daniel.gregory@bytedance.com>\n---\nCc: feifei.wang2@arm.com\n---\n lib/eal/arm/include/rte_pause_64.h | 8 +++++---\n 1 file changed, 5 insertions(+), 3 deletions(-)", "diff": "diff --git a/lib/eal/arm/include/rte_pause_64.h b/lib/eal/arm/include/rte_pause_64.h\nindex 5cb8b59056..852660091a 100644\n--- a/lib/eal/arm/include/rte_pause_64.h\n+++ b/lib/eal/arm/include/rte_pause_64.h\n@@ -10,6 +10,8 @@\n extern \"C\" {\n #endif\n \n+#include <assert.h>\n+\n #include <rte_common.h>\n \n #ifdef RTE_ARM_USE_WFE\n@@ -153,7 +155,7 @@ rte_wait_until_equal_16(volatile uint16_t *addr, uint16_t expected,\n {\n \tuint16_t value;\n \n-\tRTE_BUILD_BUG_ON(memorder != rte_memory_order_acquire &&\n+\tassert(memorder != rte_memory_order_acquire &&\n \t\tmemorder != rte_memory_order_relaxed);\n \n \t__RTE_ARM_LOAD_EXC_16(addr, value, memorder)\n@@ -172,7 +174,7 @@ rte_wait_until_equal_32(volatile uint32_t *addr, uint32_t expected,\n {\n \tuint32_t value;\n \n-\tRTE_BUILD_BUG_ON(memorder != rte_memory_order_acquire &&\n+\tassert(memorder != rte_memory_order_acquire &&\n \t\tmemorder != rte_memory_order_relaxed);\n \n \t__RTE_ARM_LOAD_EXC_32(addr, value, memorder)\n@@ -191,7 +193,7 @@ rte_wait_until_equal_64(volatile uint64_t *addr, uint64_t expected,\n {\n \tuint64_t value;\n \n-\tRTE_BUILD_BUG_ON(memorder != rte_memory_order_acquire &&\n+\tassert(memorder != rte_memory_order_acquire &&\n \t\tmemorder != rte_memory_order_relaxed);\n \n \t__RTE_ARM_LOAD_EXC_64(addr, value, memorder)\n", "prefixes": [ "v2" ] }{ "id": 139857, "url": "