Re: [PATCH] fs/aio: Fix __percpu annotation of *cpu pointer in struct kioctx

From: Jan Kara
Date: Tue Jul 30 2024 - 09:18:27 EST


On Tue 30-07-24 14:18:34, Uros Bizjak wrote:
> __percpu annotation of *cpu pointer in struct kioctx is put at
> the wrong place, resulting in several sparse warnings:
>
> aio.c:623:24: warning: incorrect type in argument 1 (different address spaces)
> aio.c:623:24: expected void [noderef] __percpu *__pdata
> aio.c:623:24: got struct kioctx_cpu *cpu
> aio.c:788:18: warning: incorrect type in assignment (different address spaces)
> aio.c:788:18: expected struct kioctx_cpu *cpu
> aio.c:788:18: got struct kioctx_cpu [noderef] __percpu *
> aio.c:835:24: warning: incorrect type in argument 1 (different address spaces)
> aio.c:835:24: expected void [noderef] __percpu *__pdata
> aio.c:835:24: got struct kioctx_cpu *cpu
> aio.c:940:16: warning: incorrect type in initializer (different address spaces)
> aio.c:940:16: expected void const [noderef] __percpu *__vpp_verify
> aio.c:940:16: got struct kioctx_cpu *
> aio.c:958:16: warning: incorrect type in initializer (different address spaces)
> aio.c:958:16: expected void const [noderef] __percpu *__vpp_verify
> aio.c:958:16: got struct kioctx_cpu *
>
> Put __percpu annotation at the right place to fix these warnings.
>
> Signed-off-by: Uros Bizjak <ubizjak@xxxxxxxxx>
> Cc: Benjamin LaHaise <bcrl@xxxxxxxxx>
> Cc: Alexander Viro <viro@xxxxxxxxxxxxxxxxxx>
> Cc: Christian Brauner <brauner@xxxxxxxxxx>
> Cc: Jan Kara <jack@xxxxxxx>
> Cc: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>

Looks good. Feel free to add:

Reviewed-by: Jan Kara <jack@xxxxxxx>

Honza

> ---
> fs/aio.c | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/fs/aio.c b/fs/aio.c
> index 6066f64967b3..e8920178b50f 100644
> --- a/fs/aio.c
> +++ b/fs/aio.c
> @@ -100,7 +100,7 @@ struct kioctx {
>
> unsigned long user_id;
>
> - struct __percpu kioctx_cpu *cpu;
> + struct kioctx_cpu __percpu *cpu;
>
> /*
> * For percpu reqs_available, number of slots we move to/from global
> --
> 2.45.2
>
--
Jan Kara <jack@xxxxxxxx>
SUSE Labs, CR