netdev.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH net-next] devlink: use _BITUL() macro instead of BIT() in the UAPI header
@ 2020-12-15 10:25 Tobias Klauser
  2020-12-17  0:30 ` patchwork-bot+netdevbpf
  2021-01-05 18:50 ` Jacob Keller
  0 siblings, 2 replies; 3+ messages in thread
From: Tobias Klauser @ 2020-12-15 10:25 UTC (permalink / raw)
  To: Jiri Pirko; +Cc: Moshe Shemesh, Jakub Kicinski, netdev

The BIT() macro is not available for the UAPI headers. Moreover, it can
be defined differently in user space headers. Thus, replace its usage
with the _BITUL() macro which is already used in other macro definitions
in <linux/devlink.h>.

Fixes: dc64cc7c6310 ("devlink: Add devlink reload limit option")
Signed-off-by: Tobias Klauser <tklauser@distanz.ch>
---
 include/uapi/linux/devlink.h | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/include/uapi/linux/devlink.h b/include/uapi/linux/devlink.h
index 5203f54a2be1..cf89c318f2ac 100644
--- a/include/uapi/linux/devlink.h
+++ b/include/uapi/linux/devlink.h
@@ -322,7 +322,7 @@ enum devlink_reload_limit {
 	DEVLINK_RELOAD_LIMIT_MAX = __DEVLINK_RELOAD_LIMIT_MAX - 1
 };
 
-#define DEVLINK_RELOAD_LIMITS_VALID_MASK (BIT(__DEVLINK_RELOAD_LIMIT_MAX) - 1)
+#define DEVLINK_RELOAD_LIMITS_VALID_MASK (_BITUL(__DEVLINK_RELOAD_LIMIT_MAX) - 1)
 
 enum devlink_attr {
 	/* don't change the order or add anything between, this is ABI! */
-- 
2.27.0


^ permalink raw reply related	[flat|nested] 3+ messages in thread

* Re: [PATCH net-next] devlink: use _BITUL() macro instead of BIT() in the UAPI header
  2020-12-15 10:25 [PATCH net-next] devlink: use _BITUL() macro instead of BIT() in the UAPI header Tobias Klauser
@ 2020-12-17  0:30 ` patchwork-bot+netdevbpf
  2021-01-05 18:50 ` Jacob Keller
  1 sibling, 0 replies; 3+ messages in thread
From: patchwork-bot+netdevbpf @ 2020-12-17  0:30 UTC (permalink / raw)
  To: Tobias Klauser; +Cc: jiri, moshe, kuba, netdev

Hello:

This patch was applied to netdev/net.git (refs/heads/master):

On Tue, 15 Dec 2020 11:25:31 +0100 you wrote:
> The BIT() macro is not available for the UAPI headers. Moreover, it can
> be defined differently in user space headers. Thus, replace its usage
> with the _BITUL() macro which is already used in other macro definitions
> in <linux/devlink.h>.
> 
> Fixes: dc64cc7c6310 ("devlink: Add devlink reload limit option")
> Signed-off-by: Tobias Klauser <tklauser@distanz.ch>
> 
> [...]

Here is the summary with links:
  - [net-next] devlink: use _BITUL() macro instead of BIT() in the UAPI header
    https://git.kernel.org/netdev/net/c/75f4d4544db9

You are awesome, thank you!
--
Deet-doot-dot, I am a bot.
https://korg.docs.kernel.org/patchwork/pwbot.html



^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: [PATCH net-next] devlink: use _BITUL() macro instead of BIT() in the UAPI header
  2020-12-15 10:25 [PATCH net-next] devlink: use _BITUL() macro instead of BIT() in the UAPI header Tobias Klauser
  2020-12-17  0:30 ` patchwork-bot+netdevbpf
@ 2021-01-05 18:50 ` Jacob Keller
  1 sibling, 0 replies; 3+ messages in thread
From: Jacob Keller @ 2021-01-05 18:50 UTC (permalink / raw)
  To: Tobias Klauser, Jiri Pirko; +Cc: Moshe Shemesh, Jakub Kicinski, netdev



On 12/15/2020 2:25 AM, Tobias Klauser wrote:
> The BIT() macro is not available for the UAPI headers. Moreover, it can
> be defined differently in user space headers. Thus, replace its usage
> with the _BITUL() macro which is already used in other macro definitions
> in <linux/devlink.h>.
> 
> Fixes: dc64cc7c6310 ("devlink: Add devlink reload limit option")
> Signed-off-by: Tobias Klauser <tklauser@distanz.ch>

Yep, this is correct, and we ran into this exact issue a few months ago
with the flash update parameters work. Wonder how difficult it would be
to get something like checkpatch.pl or another utility to complain about
using BIT() macros in UAPI..?

Unfortunately this is easy to overlook because the kernel side code
almost always has BIT defined, so you won't get a compilation failure
until you try to use the uapi header in a userspace program.

Reviewed-by: Jacob Keller <jacob.e.keller@intel.com>

> ---
>  include/uapi/linux/devlink.h | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
> 
> diff --git a/include/uapi/linux/devlink.h b/include/uapi/linux/devlink.h
> index 5203f54a2be1..cf89c318f2ac 100644
> --- a/include/uapi/linux/devlink.h
> +++ b/include/uapi/linux/devlink.h
> @@ -322,7 +322,7 @@ enum devlink_reload_limit {
>  	DEVLINK_RELOAD_LIMIT_MAX = __DEVLINK_RELOAD_LIMIT_MAX - 1
>  };
>  
> -#define DEVLINK_RELOAD_LIMITS_VALID_MASK (BIT(__DEVLINK_RELOAD_LIMIT_MAX) - 1)
> +#define DEVLINK_RELOAD_LIMITS_VALID_MASK (_BITUL(__DEVLINK_RELOAD_LIMIT_MAX) - 1)
>  
>  enum devlink_attr {
>  	/* don't change the order or add anything between, this is ABI! */
> 

^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2021-01-05 18:50 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2020-12-15 10:25 [PATCH net-next] devlink: use _BITUL() macro instead of BIT() in the UAPI header Tobias Klauser
2020-12-17  0:30 ` patchwork-bot+netdevbpf
2021-01-05 18:50 ` Jacob Keller

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).