diff mbox series

fs/aio: Fix __percpu annotation of *cpu pointer in struct kioctx

Message ID 20240730121915.4514-1-ubizjak@gmail.com (mailing list archive)
State New
Headers show
Series fs/aio: Fix __percpu annotation of *cpu pointer in struct kioctx | expand

Commit Message

Uros Bizjak July 30, 2024, 12:18 p.m. UTC
__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@gmail.com>
Cc: Benjamin LaHaise <bcrl@kvack.org>
Cc: Alexander Viro <viro@zeniv.linux.org.uk>
Cc: Christian Brauner <brauner@kernel.org>
Cc: Jan Kara <jack@suse.cz>
Cc: Andrew Morton <akpm@linux-foundation.org>
---
 fs/aio.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

Comments

Jan Kara July 30, 2024, 1:18 p.m. UTC | #1
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@gmail.com>
> Cc: Benjamin LaHaise <bcrl@kvack.org>
> Cc: Alexander Viro <viro@zeniv.linux.org.uk>
> Cc: Christian Brauner <brauner@kernel.org>
> Cc: Jan Kara <jack@suse.cz>
> Cc: Andrew Morton <akpm@linux-foundation.org>

Looks good. Feel free to add:

Reviewed-by: Jan Kara <jack@suse.cz>

								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
>
Christian Brauner July 30, 2024, 2:10 p.m. UTC | #2
On Tue, 30 Jul 2024 14:18:34 +0200, 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 *
> 
> [...]

Applied to the vfs.misc branch of the vfs/vfs.git tree.
Patches in the vfs.misc branch should appear in linux-next soon.

Please report any outstanding bugs that were missed during review in a
new review to the original patch series allowing us to drop it.

It's encouraged to provide Acked-bys and Reviewed-bys even though the
patch has now been applied. If possible patch trailers will be updated.

Note that commit hashes shown below are subject to change due to rebase,
trailer updates or similar. If in doubt, please check the listed branch.

tree:   https://git.kernel.org/pub/scm/linux/kernel/git/vfs/vfs.git
branch: vfs.misc

[1/1] fs/aio: Fix __percpu annotation of *cpu pointer in struct kioctx
      https://git.kernel.org/vfs/vfs/c/b484eca083f7
diff mbox series

Patch

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