Message ID | 20240204023531.2225264-1-dongtai.guo@linux.dev (mailing list archive) |
---|---|
State | Handled Elsewhere |
Delegated to: | Paul Moore |
Headers | show |
Series | [v2,1/1] netlabel: cleanup struct netlbl_lsm_catmap | expand |
On Sat, Feb 3, 2024 at 9:35 PM George Guo <dongtai.guo@linux.dev> wrote: > > From: George Guo <guodongtai@kylinos.cn> > > Simplify the code from macro NETLBL_CATMAP_MAPTYPE to u64, and fix > warning "Macros with complex values should be enclosed in parentheses" > on "#define NETLBL_CATMAP_BIT (NETLBL_CATMAP_MAPTYPE)0x01", which is > modified to "#define NETLBL_CATMAP_BIT ((u64)0x01)". > > Signed-off-by: George Guo <guodongtai@kylinos.cn> > --- > V2: > Yes, I understand what you are saying. > Actually, there is a compile warnings on "#define NETLBL_CATMAP_BIT (NETLBL_CATMAP_MAPTYPE)0x01" > which is missing parentheses. > --- > include/net/netlabel.h | 7 +++---- > net/netlabel/netlabel_kapi.c | 8 ++++---- > 2 files changed, 7 insertions(+), 8 deletions(-) This is a much better approach, thank you. Acked-by: Paul Moore <paul@paul-moore.com>
Hello: This patch was applied to netdev/net-next.git (main) by David S. Miller <davem@davemloft.net>: On Sun, 4 Feb 2024 10:35:31 +0800 you wrote: > From: George Guo <guodongtai@kylinos.cn> > > Simplify the code from macro NETLBL_CATMAP_MAPTYPE to u64, and fix > warning "Macros with complex values should be enclosed in parentheses" > on "#define NETLBL_CATMAP_BIT (NETLBL_CATMAP_MAPTYPE)0x01", which is > modified to "#define NETLBL_CATMAP_BIT ((u64)0x01)". > > [...] Here is the summary with links: - [v2,1/1] netlabel: cleanup struct netlbl_lsm_catmap https://git.kernel.org/netdev/net-next/c/23c5ae6d4675 You are awesome, thank you!
diff --git a/include/net/netlabel.h b/include/net/netlabel.h index d74f21f528de..0d04a8ae3811 100644 --- a/include/net/netlabel.h +++ b/include/net/netlabel.h @@ -145,15 +145,14 @@ struct netlbl_lsm_cache { * processing. * */ -#define NETLBL_CATMAP_MAPTYPE u64 #define NETLBL_CATMAP_MAPCNT 4 -#define NETLBL_CATMAP_MAPSIZE (sizeof(NETLBL_CATMAP_MAPTYPE) * 8) +#define NETLBL_CATMAP_MAPSIZE (sizeof(u64) * 8) #define NETLBL_CATMAP_SIZE (NETLBL_CATMAP_MAPSIZE * \ NETLBL_CATMAP_MAPCNT) -#define NETLBL_CATMAP_BIT (NETLBL_CATMAP_MAPTYPE)0x01 +#define NETLBL_CATMAP_BIT ((u64)0x01) struct netlbl_lsm_catmap { u32 startbit; - NETLBL_CATMAP_MAPTYPE bitmap[NETLBL_CATMAP_MAPCNT]; + u64 bitmap[NETLBL_CATMAP_MAPCNT]; struct netlbl_lsm_catmap *next; }; diff --git a/net/netlabel/netlabel_kapi.c b/net/netlabel/netlabel_kapi.c index 27511c90a26f..7b844581ebee 100644 --- a/net/netlabel/netlabel_kapi.c +++ b/net/netlabel/netlabel_kapi.c @@ -610,7 +610,7 @@ int netlbl_catmap_walk(struct netlbl_lsm_catmap *catmap, u32 offset) struct netlbl_lsm_catmap *iter; u32 idx; u32 bit; - NETLBL_CATMAP_MAPTYPE bitmap; + u64 bitmap; iter = _netlbl_catmap_getnode(&catmap, offset, _CM_F_WALK, 0); if (iter == NULL) @@ -666,8 +666,8 @@ int netlbl_catmap_walkrng(struct netlbl_lsm_catmap *catmap, u32 offset) struct netlbl_lsm_catmap *prev = NULL; u32 idx; u32 bit; - NETLBL_CATMAP_MAPTYPE bitmask; - NETLBL_CATMAP_MAPTYPE bitmap; + u64 bitmask; + u64 bitmap; iter = _netlbl_catmap_getnode(&catmap, offset, _CM_F_WALK, 0); if (iter == NULL) @@ -857,7 +857,7 @@ int netlbl_catmap_setlong(struct netlbl_lsm_catmap **catmap, offset -= iter->startbit; idx = offset / NETLBL_CATMAP_MAPSIZE; - iter->bitmap[idx] |= (NETLBL_CATMAP_MAPTYPE)bitmap + iter->bitmap[idx] |= (u64)bitmap << (offset % NETLBL_CATMAP_MAPSIZE); return 0;