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