2022-01-14 10:50:35

by Xiongfeng Wang

[permalink] [raw]
Subject: [PATCH] asm-generic: Add missing brackets for io_stop_wc macro

After using io_stop_wc(), drivers reports following compile error when
compiled on X86.

drivers/net/ethernet/hisilicon/hns3/hns3_enet.c: In function ‘hns3_tx_push_bd’:
drivers/net/ethernet/hisilicon/hns3/hns3_enet.c:2058:12: error: expected ‘;’ before ‘(’ token
io_stop_wc();
^
It is because I missed to add the brackets after io_stop_wc macro. So
let's add the missing brackets.

Fixes: d5624bb29f49 ("asm-generic: introduce io_stop_wc() and add implementation for ARM64")
Reported-by: Guangbin Huang <[email protected]>
Signed-off-by: Xiongfeng Wang <[email protected]>
---
include/asm-generic/barrier.h | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/include/asm-generic/barrier.h b/include/asm-generic/barrier.h
index 3d503e74037f..fd7e8fbaeef1 100644
--- a/include/asm-generic/barrier.h
+++ b/include/asm-generic/barrier.h
@@ -285,7 +285,7 @@ do { \
* write-combining memory accesses before this macro with those after it.
*/
#ifndef io_stop_wc
-#define io_stop_wc do { } while (0)
+#define io_stop_wc() do { } while (0)
#endif

#endif /* !__ASSEMBLY__ */
--
2.20.1



2022-01-14 11:56:46

by Catalin Marinas

[permalink] [raw]
Subject: Re: [PATCH] asm-generic: Add missing brackets for io_stop_wc macro

On Fri, Jan 14, 2022 at 06:58:57PM +0800, Xiongfeng Wang wrote:
> After using io_stop_wc(), drivers reports following compile error when
> compiled on X86.
>
> drivers/net/ethernet/hisilicon/hns3/hns3_enet.c: In function ‘hns3_tx_push_bd’:
> drivers/net/ethernet/hisilicon/hns3/hns3_enet.c:2058:12: error: expected ‘;’ before ‘(’ token
> io_stop_wc();
> ^
> It is because I missed to add the brackets after io_stop_wc macro. So
> let's add the missing brackets.
>
> Fixes: d5624bb29f49 ("asm-generic: introduce io_stop_wc() and add implementation for ARM64")
> Reported-by: Guangbin Huang <[email protected]>
> Signed-off-by: Xiongfeng Wang <[email protected]>
> ---
> include/asm-generic/barrier.h | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/include/asm-generic/barrier.h b/include/asm-generic/barrier.h
> index 3d503e74037f..fd7e8fbaeef1 100644
> --- a/include/asm-generic/barrier.h
> +++ b/include/asm-generic/barrier.h
> @@ -285,7 +285,7 @@ do { \
> * write-combining memory accesses before this macro with those after it.
> */
> #ifndef io_stop_wc
> -#define io_stop_wc do { } while (0)
> +#define io_stop_wc() do { } while (0)

Acked-by: Catalin Marinas <[email protected]>

Arnd, do you plan to take this fix or you'd like me to?

Thanks.

--
Catalin

2022-01-21 22:22:51

by Catalin Marinas

[permalink] [raw]
Subject: Re: [PATCH] asm-generic: Add missing brackets for io_stop_wc macro

On Fri, 14 Jan 2022 18:58:57 +0800, Xiongfeng Wang wrote:
> After using io_stop_wc(), drivers reports following compile error when
> compiled on X86.
>
> drivers/net/ethernet/hisilicon/hns3/hns3_enet.c: In function ‘hns3_tx_push_bd’:
> drivers/net/ethernet/hisilicon/hns3/hns3_enet.c:2058:12: error: expected ‘;’ before ‘(’ token
> io_stop_wc();
> ^
> It is because I missed to add the brackets after io_stop_wc macro. So
> let's add the missing brackets.
>
> [...]

Applied to arm64 (for-next/core), thanks!

[1/1] asm-generic: Add missing brackets for io_stop_wc macro
https://git.kernel.org/arm64/c/440323b6cf5b

--
Catalin