[dpdk-dev] [PATCH 02/25] net/qede/base: improve set field macro
Rasesh Mody
Rasesh.Mody at cavium.com
Sat Dec 3 10:11:06 CET 2016
Improve robustness of the SET_FIELD macro by using a mask.
Signed-off-by: Rasesh Mody <Rasesh.Mody at cavium.com>
---
drivers/net/qede/base/ecore.h | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/drivers/net/qede/base/ecore.h b/drivers/net/qede/base/ecore.h
index 907b35b9..c9f3b003 100644
--- a/drivers/net/qede/base/ecore.h
+++ b/drivers/net/qede/base/ecore.h
@@ -80,7 +80,7 @@ enum ecore_nvm_cmd {
#define SET_FIELD(value, name, flag) \
do { \
(value) &= ~(name##_MASK << name##_SHIFT); \
- (value) |= (((u64)flag) << (name##_SHIFT)); \
+ (value) |= ((((u64)flag) & (u64)name##_MASK) << (name##_SHIFT));\
} while (0)
#define GET_FIELD(value, name) \
--
2.11.0.rc1
More information about the dev
mailing list