# \[PATCH\] apparmor: avoid -Wempty-body warning

- Subsystems: SECURITY SUBSYSTEM, APPARMOR SECURITY MODULE, THE REST
- Maintainers: Paul Moore, James Morris, "Serge E. Hallyn", John Johansen, John Johansen, Georgia Garcia, Linus Torvalds
- List: linux-security-module
- 2 messages, 2 authors
- Page: https://ratatoskr.run/linux-security-module/2021/03/6309936/t

## \[PATCH\] apparmor: avoid -Wempty-body warning

- From: Arnd Bergmann \<arnd@kernel.org\>
- Date: 2021-03-22 11:01:14 
- Message: https://ratatoskr.run/linux-security-module/2021/03/6309936.md

```text
From: Arnd Bergmann <arnd@arndb.de>

Building with 'make W=1' shows a warning for an empty macro:

security/apparmor/label.c: In function '__label_update':
security/apparmor/label.c:2096:59: error: suggest braces around empty body in an 'else' statement [-Werror=empty-body]
 2096 |                 AA_BUG(labels_ns(label) != labels_ns(new));

Change the macro defintion to use no_printk(), which improves
format string checking and avoids the warning.

Signed-off-by: Arnd Bergmann <arnd@arndb.de>
---
 security/apparmor/include/lib.h | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/security/apparmor/include/lib.h b/security/apparmor/include/lib.h
index 7d27db740bc2..67fbb81a11f3 100644
--- a/security/apparmor/include/lib.h
+++ b/security/apparmor/include/lib.h
@@ -36,7 +36,7 @@
 #define AA_BUG_FMT(X, fmt, args...)					\
 	WARN((X), "AppArmor WARN %s: (" #X "): " fmt, __func__, ##args)
 #else
-#define AA_BUG_FMT(X, fmt, args...)
+#define AA_BUG_FMT(X, fmt, args...) no_printk(fmt, ##args)
 #endif
 
 #define AA_ERROR(fmt, args...)						\
-- 
2.29.2

```

## Re: \[PATCH\] apparmor: avoid -Wempty-body warning

- From: John Johansen \<john.johansen@canonical.com\>
- Date: 2021-04-03 18:26:59 
- Message: https://ratatoskr.run/linux-security-module/2021/04/6325980.md

```text
On 3/22/21 4:00 AM, Arnd Bergmann wrote:
> From: Arnd Bergmann <arnd@arndb.de>
> 
> Building with 'make W=1' shows a warning for an empty macro:
> 
> security/apparmor/label.c: In function '__label_update':
> security/apparmor/label.c:2096:59: error: suggest braces around empty body in an 'else' statement [-Werror=empty-body]
>  2096 |                 AA_BUG(labels_ns(label) != labels_ns(new));
> 
> Change the macro defintion to use no_printk(), which improves
> format string checking and avoids the warning.
> 
> Signed-off-by: Arnd Bergmann <arnd@arndb.de>

Aked-by: John Johansen [ref]

I have pulled it into the apparmor tree

> ---
>  security/apparmor/include/lib.h | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
> 
> diff --git a/security/apparmor/include/lib.h b/security/apparmor/include/lib.h
> index 7d27db740bc2..67fbb81a11f3 100644
> --- a/security/apparmor/include/lib.h
> +++ b/security/apparmor/include/lib.h
> @@ -36,7 +36,7 @@
>  #define AA_BUG_FMT(X, fmt, args...)					\
>  	WARN((X), "AppArmor WARN %s: (" #X "): " fmt, __func__, ##args)
>  #else
> -#define AA_BUG_FMT(X, fmt, args...)
> +#define AA_BUG_FMT(X, fmt, args...) no_printk(fmt, ##args)
>  #endif
>  
>  #define AA_ERROR(fmt, args...)						\
> 

```
