From: Stephen Hemminger <stephen@networkplumber.org>
To: "Abdullah Ömer Yamaç" <aomeryamac@gmail.com>
Cc: dev@dpdk.org
Subject: Re: [PATCH v3] devtools: add .clang-format file
Date: Sun, 5 May 2024 13:38:36 -0700 [thread overview]
Message-ID: <20240505133836.4711bad3@hermes.local> (raw)
In-Reply-To: <CA+sj1i8eQKDmjU44gn4o1Cp8KhFPX17Z3vmhquKXdu7A=2pGXA@mail.gmail.com>
On Sun, 5 May 2024 22:42:57 +0300
Abdullah Ömer Yamaç <aomeryamac@gmail.com> wrote:
> > Also, this looks wrong. The initialized arrays looked better before.
> >
> >
> > -static const char *tuntap_types[ETH_TUNTAP_TYPE_MAX] = {
> > - "UNKNOWN", "TUN", "TAP"
> > -};
> > +static const char *tuntap_types[ETH_TUNTAP_TYPE_MAX] = {"UNKNOWN", "TUN",
> > "TAP"};
> >
> > -static const char *valid_arguments[] = {
> > - ETH_TAP_IFACE_ARG,
> > - ETH_TAP_REMOTE_ARG,
> > - ETH_TAP_MAC_ARG,
> > - ETH_TAP_PERSIST_ARG,
> > - NULL
> > -};
> > +static const char *valid_arguments[] = {ETH_TAP_IFACE_ARG,
> > ETH_TAP_REMOTE_ARG, ETH_TAP_MAC_ARG,
> > + ETH_TAP_PERSIST_ARG, NULL};
> >
>
> I am confused about these variables. tuntap_types list values in a single
> line, but valid_arguments' values are listed separately.
> So, it is getting more complex to handle both of them. What should we do,
> do you have any idea?
Ignore the initialized lists for now. It should be possible to have it generate something
like
static const char *tuntap_types[ETH_TUNTAP_TYPE_MAX] = {
"UNKNOWN", "TUN", "TAP"
};
With the following changes result looks better. You got the format wrong for the ForEach list.
diff --git a/.clang-format b/.clang-format
index 16164ef1de..d16185c049 100644
--- a/.clang-format
+++ b/.clang-format
@@ -1,12 +1,20 @@
---
BasedOnStyle: LLVM
+AttributeMacros:
+ - __rte_aligned
+ - __rte_packed
+ - __rte_may_alias
+ - __rte_deprecated
+ - __rte_weak
+ - __rte_unused
+ - __rte_restrict
+
# Place opening and closing parentheses on the same line for control statements
BreakBeforeBraces: Custom
BraceWrapping:
- AfterFunction: false
+ AfterFunction: true
AfterControlStatement: false
- AfterEnum: false
# Set maximum line length to 100 characters
ColumnLimit: 100
@@ -41,98 +49,117 @@ AlwaysBreakAfterReturnType: TopLevelDefinitions
# Always break before multiline string literals
AlignEscapedNewlines: Left
-# Foreach macros
-ForEachMacros: [
- "CIRBUF_FOREACH",
- "DLB2_LIST_FOR_EACH",
- "DLB2_LIST_FOR_EACH_SAFE",
- "ECORE_LIST_FOR_EACH_ENTRY",
- "ECORE_LIST_FOR_EACH_ENTRY_SAFE",
- "FOR_EACH",
- "FOR_EACH_BUCKET",
- "FOR_EACH_CNIC_QUEUE",
- "FOR_EACH_COS_IN_TX_QUEUE",
- "FOR_EACH_ETH_QUEUE",
- "FOR_EACH_MEMBER",
- "FOR_EACH_NONDEFAULT_ETH_QUEUE",
- "FOR_EACH_NONDEFAULT_QUEUE",
- "FOR_EACH_PORT",
- "FOR_EACH_PORT_IF",
- "FOR_EACH_QUEUE",
- "FOR_EACH_SUITE_TESTCASE",
- "FOR_EACH_SUITE_TESTSUITE",
- "FOREACH_ABS_FUNC_IN_PORT",
- "FOREACH_DEVICE_ON_AUXILIARY_BUS",
- "FOREACH_DEVICE_ON_CDXBUS",
- "FOREACH_DEVICE_ON_PCIBUS",
- "FOREACH_DEVICE_ON_PLATFORM_BUS",
- "FOREACH_DEVICE_ON_UACCEBUS",
- "FOREACH_DEVICE_ON_VMBUS",
- "FOREACH_DRIVER_ON_AUXILIARY_BUS",
- "FOREACH_DRIVER_ON_CDXBUS",
- "FOREACH_DRIVER_ON_PCIBUS",
- "FOREACH_DRIVER_ON_PLATFORM_BUS",
- "FOREACH_DRIVER_ON_UACCEBUS",
- "FOREACH_DRIVER_ON_VMBUS",
- "FOREACH_SUBDEV",
- "FOREACH_SUBDEV_STATE",
- "HLIST_FOR_EACH_ENTRY",
- "ILIST_FOREACH",
- "LIST_FOR_EACH_ENTRY",
- "LIST_FOR_EACH_ENTRY_SAFE",
- "LIST_FOREACH",
- "LIST_FOREACH_FROM",
- "LIST_FOREACH_FROM_SAFE",
- "LIST_FOREACH_SAFE",
- "ML_AVG_FOREACH_QP",
- "ML_AVG_FOREACH_QP_MVTVM",
- "ML_AVG_RESET_FOREACH_QP",
- "ML_MAX_FOREACH_QP",
- "ML_MAX_FOREACH_QP_MVTVM",
- "ML_MAX_RESET_FOREACH_QP",
- "ML_MIN_FOREACH_QP",
- "ML_MIN_FOREACH_QP_MVTVM",
- "ML_MIN_RESET_FOREACH_QP",
- "MLX5_ETH_FOREACH_DEV",
- "MLX5_IPOOL_FOREACH",
- "MLX5_L3T_FOREACH",
- "OSAL_LIST_FOR_EACH_ENTRY",
- "OSAL_LIST_FOR_EACH_ENTRY_SAFE",
- "PLT_TAILQ_FOREACH_SAFE",
- "RTE_BBDEV_FOREACH",
- "RTE_DEV_FOREACH",
- "RTE_DMA_FOREACH_DEV",
- "RTE_EAL_DEVARGS_FOREACH",
- "RTE_ETH_FOREACH_DEV",
- "RTE_ETH_FOREACH_DEV_OF",
- "RTE_ETH_FOREACH_DEV_OWNED_BY",
- "RTE_ETH_FOREACH_DEV_SIBLING",
- "RTE_ETH_FOREACH_MATCHING_DEV",
- "RTE_ETH_FOREACH_VALID_DEV",
- "RTE_GPU_FOREACH",
- "RTE_GPU_FOREACH_CHILD",
- "RTE_GPU_FOREACH_PARENT",
- "RTE_LCORE_FOREACH",
- "RTE_LCORE_FOREACH_WORKER",
- "RTE_TAILQ_FOREACH",
- "RTE_TAILQ_FOREACH_SAFE",
- "SILIST_FOREACH",
- "SLIST_FOREACH",
- "SLIST_FOREACH_FROM",
- "SLIST_FOREACH_FROM_SAFE",
- "SLIST_FOREACH_PREVPTR",
- "SLIST_FOREACH_SAFE",
- "STAILQ_FOREACH",
- "STAILQ_FOREACH_FROM",
- "STAILQ_FOREACH_FROM_SAFE",
- "STAILQ_FOREACH_SAFE",
- "TAILQ_FOREACH",
- "TAILQ_FOREACH_ENTRY",
- "TAILQ_FOREACH_ENTRY_SAFE",
- "TAILQ_FOREACH_FROM",
- "TAILQ_FOREACH_FROM_SAFE",
- "TAILQ_FOREACH_REVERSE",
- "TAILQ_FOREACH_REVERSE_FROM",
- "TAILQ_FOREACH_REVERSE_FROM_SAFE",
- "TAILQ_FOREACH_REVERSE_SAFE",
- "TAILQ_FOREACH_SAFE", ]
+ForEachMacros:
+ - CIRBUF_FOREACH
+ - DLB2_LIST_FOR_EACH
+ - DLB2_LIST_FOR_EACH_SAFE
+ - ECORE_LIST_FOR_EACH_ENTRY
+ - ECORE_LIST_FOR_EACH_ENTRY_SAFE
+ - FOREACH_ABS_FUNC_IN_PORT
+ - FOREACH_DEVICE_ON_AUXILIARY_BUS
+ - FOREACH_DEVICE_ON_CDXBUS
+ - FOREACH_DEVICE_ON_PCIBUS
+ - FOREACH_DEVICE_ON_PLATFORM_BUS
+ - FOREACH_DEVICE_ON_UACCEBUS
+ - FOREACH_DEVICE_ON_VMBUS
+ - FOREACH_DRIVER_ON_AUXILIARY_BUS
+ - FOREACH_DRIVER_ON_CDXBUS
+ - FOREACH_DRIVER_ON_PCIBUS
+ - FOREACH_DRIVER_ON_PLATFORM_BUS
+ - FOREACH_DRIVER_ON_UACCEBUS
+ - FOREACH_DRIVER_ON_VMBUS
+ - FOREACH_SUBDEV
+ - FOREACH_SUBDEV_STATE
+ - FOR_EACH
+ - FOR_EACH_BUCKET
+ - FOR_EACH_CNIC_QUEUE
+ - FOR_EACH_COS_IN_TX_QUEUE
+ - FOR_EACH_ETH_QUEUE
+ - FOR_EACH_MEMBER
+ - FOR_EACH_NONDEFAULT_ETH_QUEUE
+ - FOR_EACH_NONDEFAULT_QUEUE
+ - FOR_EACH_PORT
+ - FOR_EACH_PORT_IF
+ - FOR_EACH_QUEUE
+ - FOR_EACH_SUITE_TESTCASE
+ - FOR_EACH_SUITE_TESTSUITE
+ - HLIST_FOR_EACH_ENTRY
+ - ILIST_FOREACH
+ - LIST_FOREACH
+ - LIST_FOREACH_FROM
+ - LIST_FOREACH_FROM_SAFE
+ - LIST_FOREACH_SAFE
+ - LIST_FOR_EACH_ENTRY
+ - LIST_FOR_EACH_ENTRY_SAFE
+ - MLX5_ETH_FOREACH_DEV
+ - MLX5_IPOOL_FOREACH
+ - MLX5_L3T_FOREACH
+ - ML_AVG_FOREACH_QP
+ - ML_AVG_FOREACH_QP_MVTVM
+ - ML_AVG_RESET_FOREACH_QP
+ - ML_MAX_FOREACH_QP
+ - ML_MAX_FOREACH_QP_MVTVM
+ - ML_MAX_RESET_FOREACH_QP
+ - ML_MIN_FOREACH_QP
+ - ML_MIN_FOREACH_QP_MVTVM
+ - ML_MIN_RESET_FOREACH_QP
+ - OSAL_LIST_FOR_EACH_ENTRY
+ - OSAL_LIST_FOR_EACH_ENTRY_SAFE
+ - PLT_TAILQ_FOREACH_SAFE
+ - RTE_BBDEV_FOREACH
+ - RTE_BBDEV_FOREACH
+ - RTE_DEV_FOREACH
+ - RTE_DEV_FOREACH
+ - RTE_DMA_FOREACH_DEV
+ - RTE_DMA_FOREACH_DEV
+ - RTE_EAL_DEVARGS_FOREACH
+ - RTE_EAL_DEVARGS_FOREACH
+ - RTE_ETH_FOREACH_DEV
+ - RTE_ETH_FOREACH_DEV
+ - RTE_ETH_FOREACH_DEV_OF
+ - RTE_ETH_FOREACH_DEV_OF
+ - RTE_ETH_FOREACH_DEV_OWNED_BY
+ - RTE_ETH_FOREACH_DEV_OWNED_BY
+ - RTE_ETH_FOREACH_DEV_SIBLING
+ - RTE_ETH_FOREACH_DEV_SIBLING
+ - RTE_ETH_FOREACH_MATCHING_DEV
+ - RTE_ETH_FOREACH_MATCHING_DEV
+ - RTE_ETH_FOREACH_VALID_DEV
+ - RTE_ETH_FOREACH_VALID_DEV
+ - RTE_GPU_FOREACH
+ - RTE_GPU_FOREACH
+ - RTE_GPU_FOREACH_CHILD
+ - RTE_GPU_FOREACH_CHILD
+ - RTE_GPU_FOREACH_PARENT
+ - RTE_GPU_FOREACH_PARENT
+ - RTE_LCORE_FOREACH
+ - RTE_LCORE_FOREACH
+ - RTE_LCORE_FOREACH_WORKER
+ - RTE_LCORE_FOREACH_WORKER
+ - RTE_TAILQ_FOREACH
+ - RTE_TAILQ_FOREACH
+ - RTE_TAILQ_FOREACH_SAFE
+ - RTE_TAILQ_FOREACH_SAFE
+ - SILIST_FOREACH
+ - SLIST_FOREACH
+ - SLIST_FOREACH_FROM
+ - SLIST_FOREACH_FROM_SAFE
+ - SLIST_FOREACH_PREVPTR
+ - SLIST_FOREACH_SAFE
+ - STAILQ_FOREACH
+ - STAILQ_FOREACH_FROM
+ - STAILQ_FOREACH_FROM_SAFE
+ - STAILQ_FOREACH_SAFE
+ - TAILQ_FOREACH
+ - TAILQ_FOREACH_ENTRY
+ - TAILQ_FOREACH_ENTRY_SAFE
+ - TAILQ_FOREACH_FROM
+ - TAILQ_FOREACH_FROM_SAFE
+ - TAILQ_FOREACH_REVERSE
+ - TAILQ_FOREACH_REVERSE_FROM
+ - TAILQ_FOREACH_REVERSE_FROM_SAFE
+ - TAILQ_FOREACH_REVERSE_SAFE
+ - TAILQ_FOREACH_SAFE
+
+ObjCSpaceAfterProperty: true
+IndentGotoLabels: false
next prev parent reply other threads:[~2024-05-05 20:38 UTC|newest]
Thread overview: 35+ messages / expand[flat|nested] mbox.gz Atom feed top
2024-04-29 13:04 [PATCH] devtools: add .clang-format file Abdullah Ömer Yamaç
2024-04-29 13:32 ` Ferruh Yigit
2024-04-29 15:36 ` Stephen Hemminger
2024-04-29 15:43 ` Stephen Hemminger
2024-05-04 13:38 ` Abdullah Ömer Yamaç
2024-05-04 13:41 ` [PATCH v2] " Abdullah Ömer Yamaç
2024-05-04 16:27 ` Stephen Hemminger
2024-05-04 18:18 ` Abdullah Ömer Yamaç
2024-05-04 19:18 ` [PATCH v3] " Abdullah Ömer Yamaç
2024-05-05 16:18 ` Stephen Hemminger
2024-05-05 18:43 ` Abdullah Ömer Yamaç
2024-05-05 16:20 ` Stephen Hemminger
2024-05-05 19:42 ` Abdullah Ömer Yamaç
2024-05-05 20:38 ` Stephen Hemminger [this message]
2024-05-06 10:43 ` Abdullah Ömer Yamaç
2024-05-08 21:19 ` [PATCH v4] " Abdullah Ömer Yamaç
2024-05-13 13:08 ` Ferruh Yigit
2024-05-13 15:55 ` Stephen Hemminger
2024-05-13 19:11 ` Morten Brørup
2024-05-14 7:56 ` Bruce Richardson
2024-05-14 16:59 ` Tyler Retzlaff
2024-05-15 8:28 ` Abdullah Ömer Yamaç
2024-05-15 8:43 ` Bruce Richardson
2024-05-15 10:19 ` Abdullah Ömer Yamaç
2024-05-15 11:41 ` Bruce Richardson
2024-05-15 15:07 ` Stephen Hemminger
2024-05-15 20:32 ` Abdullah Ömer Yamaç
2024-05-16 8:20 ` [PATCH v5] " Abdullah Ömer Yamaç
2024-05-17 9:30 ` Bruce Richardson
2024-10-07 17:24 ` Stephen Hemminger
2024-10-14 22:15 ` [PATCH v6] " Abdullah Ömer Yamaç
2024-10-15 3:12 ` Stephen Hemminger
2026-01-14 5:13 ` Stephen Hemminger
2024-10-14 22:16 ` Abdullah Ömer Yamaç
2024-04-30 21:27 ` [PATCH] " Abdullah Ömer Yamaç
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20240505133836.4711bad3@hermes.local \
--to=stephen@networkplumber.org \
--cc=aomeryamac@gmail.com \
--cc=dev@dpdk.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.