Re: [paulmck-rcu:dev.2023.08.14a 49/51] kernel/rcu/rcutorture.c:24:10: fatal error: linux/rcu_notifier.h: No such file or directory

From: Liu, Yujie
Date: Thu Aug 17 2023 - 04:05:56 EST


On Tue, 2023-08-15 at 19:19 -0700, Paul E. McKenney wrote:
> On Wed, Aug 16, 2023 at 09:55:30AM +0800, kernel test robot wrote:
> > tree:  
> > https://git.kernel.org/pub/scm/linux/kernel/git/paulmck/linux-rcu.git
> >  dev.2023.08.14a
> > head:   a90c4cbc91475bd5df35f712a954972fbfff40a1
> > commit: 37730a9ba11627b63d8108dd8b3061ea2ee04df9 [49/51]
> > rcutorture: Add test of RCU CPU stall notifiers
> > config: sh-allmodconfig
> > (https://download.01.org/0day-ci/archive/20230816/202308160930.YEek
> > R3Wf-lkp@xxxxxxxxx/config)
> > compiler: sh4-linux-gcc (GCC) 12.3.0
> > reproduce:
> > (https://download.01.org/0day-ci/archive/20230816/202308160930.YEek
> > R3Wf-lkp@xxxxxxxxx/reproduce)
> >
> > If you fix the issue in a separate patch/commit (i.e. not just a
> > new version of
> > the same patch/commit), kindly add following tags
> > > Reported-by: kernel test robot <lkp@xxxxxxxxx>
> > > Closes:
> > > https://lore.kernel.org/oe-kbuild-all/202308160930.YEekR3Wf-lkp@xxxxxxxxx/
> >
> > All errors (new ones prefixed by >>):
> >
> > > > kernel/rcu/rcutorture.c:24:10: fatal error:
> > > > linux/rcu_notifier.h: No such file or directory
> >       24 | #include <linux/rcu_notifier.h>
> >          |          ^~~~~~~~~~~~~~~~~~~~~~
> >    compilation terminated.
>
> You would think that I would remember "git add".  ;-)
>
> Does the patch below fix things up?

Yes, the build error is gone after adding the new header file. Seems
this fixup patch is already included in dev.2023.08.15a branch :)

Thanks,
Yujie

>                                                         Thanx, Paul
>
> ---------------------------------------------------------------------
> ---
>
> commit 2b7e462695eee212f81f7000af4f4af2523ece35
> Author: Paul E. McKenney <paulmck@xxxxxxxxxx>
> Date:   Tue Aug 15 19:17:50 2023 -0700
>
>     fixup! rcu: Add RCU CPU stall notifier
>    
>     Signed-off-by: Paul E. McKenney <paulmck@xxxxxxxxxx>
>
> diff --git a/include/linux/rcu_notifier.h
> b/include/linux/rcu_notifier.h
> new file mode 100644
> index 000000000000..ebf371364581
> --- /dev/null
> +++ b/include/linux/rcu_notifier.h
> @@ -0,0 +1,32 @@
> +/* SPDX-License-Identifier: GPL-2.0+ */
> +/*
> + * Read-Copy Update notifiers, initially RCU CPU stall notifier.
> + * Separate from rcupdate.h to avoid #include loops.
> + *
> + * Copyright (C) 2023 Paul E. McKenney.
> + */
> +
> +#ifndef __LINUX_RCU_NOTIFIER_H
> +#define __LINUX_RCU_NOTIFIER_H
> +
> +// Actions for RCU CPU stall notifier calls.
> +#define RCU_STALL_NOTIFY_NORM  1
> +#define RCU_STALL_NOTIFY_EXP   2
> +
> +#ifdef CONFIG_RCU_STALL_COMMON
> +
> +#include <linux/notifier.h>
> +#include <linux/types.h>
> +
> +int rcu_stall_chain_notifier_register(struct notifier_block *n);
> +int rcu_stall_chain_notifier_unregister(struct notifier_block *n);
> +
> +#else // #ifdef CONFIG_RCU_STALL_COMMON
> +
> +// No RCU CPU stall warnings in Tiny RCU.
> +static inline int rcu_stall_chain_notifier_register(struct
> notifier_block *n) { return -EEXIST; }
> +static inline int rcu_stall_chain_notifier_unregister(struct
> notifier_block *n) { return -ENOENT; }
> +
> +#endif // #else // #ifdef CONFIG_RCU_STALL_COMMON
> +
> +#endif /* __LINUX_RCU_NOTIFIER_H */
>