dev.dpdk.org archive mirror
 help / color / mirror / Atom feed
From: Andre Muezerie <andremue@linux.microsoft.com>
To: dev@dpdk.org
Cc: Andre Muezerie <andremue@linux.microsoft.com>
Subject: [PATCH v3 5/7] drivers/net: eliminate dependency on non-portable __SIZEOF_LONG__
Date: Wed,  4 Dec 2024 20:20:27 -0800	[thread overview]
Message-ID: <1733372429-3996-6-git-send-email-andremue@linux.microsoft.com> (raw)
In-Reply-To: <1733372429-3996-1-git-send-email-andremue@linux.microsoft.com>

Macro __SIZEOF_LONG__ is not standardized and MSVC does not define it.
Therefore the errors below are seen with MSVC:

../lib/mldev/mldev_utils_scalar.c(465): error C2065:
    '__SIZEOF_LONG__': undeclared identifier
../lib/mldev/mldev_utils_scalar.c(478): error C2051:
    case expression not constant

../lib/mldev/mldev_utils_scalar_bfloat16.c(33): error C2065:
    '__SIZEOF_LONG__': undeclared identifier
../lib/mldev/mldev_utils_scalar_bfloat16.c(49): error C2051:
    case expression not constant

Turns out that the places where __SIZEOF_LONG__ is currently
being used can equally well use sizeof(long) instead.

Signed-off-by: Andre Muezerie <andremue@linux.microsoft.com>
---
 drivers/net/ena/base/ena_plat_dpdk.h | 6 ++----
 drivers/net/hns3/hns3_ethdev.h       | 3 +--
 2 files changed, 3 insertions(+), 6 deletions(-)

diff --git a/drivers/net/ena/base/ena_plat_dpdk.h b/drivers/net/ena/base/ena_plat_dpdk.h
index 1121460470..63f6ef70ee 100644
--- a/drivers/net/ena/base/ena_plat_dpdk.h
+++ b/drivers/net/ena/base/ena_plat_dpdk.h
@@ -97,14 +97,12 @@ extern int ena_logtype_com;
 #define ENA_MIN16(x, y) ENA_MIN_T(uint16_t, (x), (y))
 #define ENA_MIN8(x, y) ENA_MIN_T(uint8_t, (x), (y))
 
-#define BITS_PER_LONG_LONG (__SIZEOF_LONG_LONG__ * 8)
 #define U64_C(x) x ## ULL
 #define BIT(nr)	RTE_BIT32(nr)
 #define BIT64(nr)	RTE_BIT64(nr)
-#define BITS_PER_LONG	(__SIZEOF_LONG__ * 8)
-#define GENMASK(h, l)	(((~0UL) << (l)) & (~0UL >> (BITS_PER_LONG - 1 - (h))))
+#define GENMASK(h, l)	(((~0UL) << (l)) & (~0UL >> (RTE_BITS_PER_LONG - 1 - (h))))
 #define GENMASK_ULL(h, l) (((~0ULL) - (1ULL << (l)) + 1) &		       \
-			  (~0ULL >> (BITS_PER_LONG_LONG - 1 - (h))))
+			  (~0ULL >> (RTE_BITS_PER_LONG_LONG - 1 - (h))))
 
 #define ena_trc_log(dev, level, fmt, arg...)				       \
 	(								       \
diff --git a/drivers/net/hns3/hns3_ethdev.h b/drivers/net/hns3/hns3_ethdev.h
index 7824503bb8..c7ad9a61c7 100644
--- a/drivers/net/hns3/hns3_ethdev.h
+++ b/drivers/net/hns3/hns3_ethdev.h
@@ -952,9 +952,8 @@ static inline struct hns3_vf *HNS3_DEV_HW_TO_VF(struct hns3_hw *hw)
 
 #define BIT_ULL(x) (1ULL << (x))
 
-#define BITS_PER_LONG	(__SIZEOF_LONG__ * 8)
 #define GENMASK(h, l) \
-	(((~0UL) << (l)) & (~0UL >> (BITS_PER_LONG - 1 - (h))))
+	(((~0UL) << (l)) & (~0UL >> (RTE_BITS_PER_LONG - 1 - (h))))
 
 #define roundup(x, y) ((((x) + ((y) - 1)) / (y)) * (y))
 #define rounddown(x, y) ((x) - ((x) % (y)))
-- 
2.47.0.vfs.0.3


  parent reply	other threads:[~2024-12-05  4:21 UTC|newest]

Thread overview: 51+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2024-12-04 20:09 [PATCH 0/6] eliminate dependency on non-portable __SIZEOF_LONG__ Andre Muezerie
2024-12-04 20:09 ` [PATCH 1/6] drivers/bus: " Andre Muezerie
2024-12-04 21:41   ` [PATCH v2 0/6] " Andre Muezerie
2024-12-04 21:41     ` [PATCH v2 1/6] drivers/bus: " Andre Muezerie
2024-12-04 21:41     ` [PATCH v2 2/6] drivers/common: " Andre Muezerie
2024-12-04 21:41     ` [PATCH v2 3/6] drivers/dma: " Andre Muezerie
2024-12-04 21:41     ` [PATCH v2 4/6] drivers/net: " Andre Muezerie
2024-12-04 21:41     ` [PATCH v2 5/6] drivers/raw: " Andre Muezerie
2024-12-04 21:41     ` [PATCH v2 6/6] lib/mldev: " Andre Muezerie
2024-12-05  4:20   ` [PATCH v3 0/7] " Andre Muezerie
2024-12-05  4:20     ` [PATCH v3 1/7] lib/eal: " Andre Muezerie
2024-12-05  4:20     ` [PATCH v3 2/7] drivers/bus: " Andre Muezerie
2024-12-06 12:22       ` Konstantin Ananyev
2024-12-06 16:19         ` Andre Muezerie
2024-12-06 16:41           ` Konstantin Ananyev
2024-12-06 16:43             ` Konstantin Ananyev
2024-12-06 18:14             ` Andre Muezerie
2025-02-04 15:58               ` Thomas Monjalon
2024-12-05  4:20     ` [PATCH v3 3/7] drivers/common: " Andre Muezerie
2024-12-05  4:20     ` [PATCH v3 4/7] drivers/dma: " Andre Muezerie
2024-12-05  4:20     ` Andre Muezerie [this message]
2024-12-05  4:20     ` [PATCH v3 6/7] drivers/raw: " Andre Muezerie
2024-12-05  4:20     ` [PATCH v3 7/7] lib/mldev: " Andre Muezerie
2025-02-04 18:54   ` [PATCH v4 0/7] " Andre Muezerie
2025-02-04 18:54     ` [PATCH v4 1/7] eal: " Andre Muezerie
2025-02-04 18:54     ` [PATCH v4 2/7] drivers/bus: " Andre Muezerie
2025-02-04 18:54     ` [PATCH v4 3/7] drivers/common: " Andre Muezerie
2025-02-04 18:54     ` [PATCH v4 4/7] drivers/dma: " Andre Muezerie
2025-02-04 18:54     ` [PATCH v4 5/7] drivers/net: " Andre Muezerie
2025-02-04 18:54     ` [PATCH v4 6/7] drivers/raw: " Andre Muezerie
2025-02-04 18:54     ` [PATCH v4 7/7] mldev: " Andre Muezerie
2025-02-05  9:15     ` [PATCH v4 0/7] " Bruce Richardson
2025-02-05 15:37       ` Andre Muezerie
2025-02-05 15:47         ` Bruce Richardson
2025-02-05 15:50           ` Konstantin Ananyev
2025-02-05 16:11             ` Andre Muezerie
2025-02-05 16:12   ` [PATCH v5] eal: define __SIZEOF_LONG__ when using MSVC Andre Muezerie
2025-02-07 10:56     ` David Marchand
2025-02-07 15:07       ` Andre Muezerie
2025-02-07 15:04   ` [PATCH v6] " Andre Muezerie
2025-02-07 15:08     ` Bruce Richardson
2025-02-09 14:47     ` Konstantin Ananyev
2025-03-06 13:10     ` David Marchand
2024-12-04 20:09 ` [PATCH 2/6] drivers/common: eliminate dependency on non-portable __SIZEOF_LONG__ Andre Muezerie
2024-12-05  1:14   ` Chaoyong He
2024-12-04 20:09 ` [PATCH 3/6] drivers/dma: " Andre Muezerie
2024-12-04 20:09 ` [PATCH 4/6] drivers/net: " Andre Muezerie
2024-12-04 20:09 ` [PATCH 5/6] drivers/raw: " Andre Muezerie
2024-12-04 20:09 ` [PATCH 6/6] lib/mldev: " Andre Muezerie
2024-12-04 21:50 ` [PATCH 0/6] " Stephen Hemminger
2024-12-05  4:19   ` Andre Muezerie

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=1733372429-3996-6-git-send-email-andremue@linux.microsoft.com \
    --to=andremue@linux.microsoft.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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).