On 2024-03-02 18:05, Stephen Hemminger wrote:
On Sat, 2 Mar 2024 14:53:22 +0100
Mattias Rönnblom <mattias.ronnb...@ericsson.com> wrote:

diff --git a/lib/eal/include/rte_bitops.h b/lib/eal/include/rte_bitops.h
index 449565eeae..9a368724d5 100644
--- a/lib/eal/include/rte_bitops.h
+++ b/lib/eal/include/rte_bitops.h
@@ -2,6 +2,7 @@
   * Copyright(c) 2020 Arm Limited
   * Copyright(c) 2010-2019 Intel Corporation
   * Copyright(c) 2023 Microsoft Corporation
+ * Copyright(c) 2024 Ericsson AB
   */

Unless this is coming from another project code base, the common
practice is not to add copyright for each contributor in later versions.


Unless it's a large contribution (compared to the rest of the file)?

I guess that's why the 916c50d commit adds the Microsoft copyright notice.

+/**
+ * Test if a particular bit in a 32-bit word is set.
+ *
+ * This function does not give any guarantees in regards to memory
+ * ordering or atomicity.
+ *
+ * @param addr
+ *   A pointer to the 32-bit word to query.
+ * @param nr
+ *   The index of the bit (0-31).
+ * @return
+ *   Returns true if the bit is set, and false otherwise.
+ */
+static inline bool
+rte_bit_test32(const uint32_t *addr, unsigned int nr);

Is it possible to reorder these inlines to avoid having
forward declarations?


Yes, but I'm not sure it's a net gain.

A statement expression macro seems like a perfect tool for the job, but then MSVC doesn't support statement expressions. You could also have a macro that just generate the function body, as oppose to the whole function.

I'll consider if I should just bite the bullet and expand all the macros. 4x duplication.

Also, new functions should be marked __rte_experimental
for a release or two.

Yes, thanks.

Reply via email to