Re: [PATCH v2] kernel: make rcu/tree_trace.c explicitly non-modular

From: Paul E. McKenney
Date: Mon Sep 28 2015 - 17:08:33 EST


On Sun, Sep 27, 2015 at 07:14:57PM -0400, Paul Gortmaker wrote:
> The Kconfig currently controlling compilation of this code is:
>
> init/Kconfig:config TREE_RCU_TRACE
> init/Kconfig: def_bool RCU_TRACE && ( TREE_RCU || PREEMPT_RCU )
>
> ...meaning that it currently is not being built as a module by anyone.
>
> Lets remove the modular code that is essentially orphaned, so that
> when reading the file there is no doubt it is builtin-only.
>
> Since module_init translates to device_initcall in the non-modular
> case, the init ordering remains unchanged with this commit. We could
> consider moving this to an earlier initcall if desired.
>
> We don't replace module.h with init.h since the file already has that.
> We also delete the moduleparam.h include that is left over from
> commit 64db4cfff99c04cd5f550357edcc8780f96b54a2 (""Tree RCU": scalable
> classic RCU implementation") since it is not needed here either.
>
> We morph some tags like MODULE_AUTHOR into the comments at the top of
> the file for documentation purposes.
>
> Cc: "Paul E. McKenney" <paulmck@xxxxxxxxxxxxxxxxxx>
> Cc: Josh Triplett <josh@xxxxxxxxxxxxxxxx>
> Reviewed-by: Josh Triplett <josh@xxxxxxxxxxxxxxxx>
> Cc: Steven Rostedt <rostedt@xxxxxxxxxxx>
> Cc: Mathieu Desnoyers <mathieu.desnoyers@xxxxxxxxxxxx>
> Cc: Lai Jiangshan <jiangshanlai@xxxxxxxxx>
> Signed-off-by: Paul Gortmaker <paul.gortmaker@xxxxxxxxxxxxx>

Queued for testing, thank you! If all goes well, this will go into
4.5.

Thanx, Paul

> ---
>
> [v2: integrate Josh feedback ; move info from MODULE tags into comments]
>
> kernel/rcu/tree_trace.c | 19 +++----------------
> 1 file changed, 3 insertions(+), 16 deletions(-)
>
> diff --git a/kernel/rcu/tree_trace.c b/kernel/rcu/tree_trace.c
> index 6fc4c5ff3bb5..4086f1f0fb4e 100644
> --- a/kernel/rcu/tree_trace.c
> +++ b/kernel/rcu/tree_trace.c
> @@ -1,5 +1,5 @@
> /*
> - * Read-Copy Update tracing for classic implementation
> + * Read-Copy Update tracing for hierarchical implementation.
> *
> * This program is free software; you can redistribute it and/or modify
> * it under the terms of the GNU General Public License as published by
> @@ -16,6 +16,7 @@
> * http://www.gnu.org/licenses/gpl-2.0.html.
> *
> * Copyright IBM Corporation, 2008
> + * Author: Paul E. McKenney
> *
> * Papers: http://www.rdrop.com/users/paulmck/RCU
> *
> @@ -33,9 +34,7 @@
> #include <linux/sched.h>
> #include <linux/atomic.h>
> #include <linux/bitops.h>
> -#include <linux/module.h>
> #include <linux/completion.h>
> -#include <linux/moduleparam.h>
> #include <linux/percpu.h>
> #include <linux/notifier.h>
> #include <linux/cpu.h>
> @@ -487,16 +486,4 @@ free_out:
> debugfs_remove_recursive(rcudir);
> return 1;
> }
> -
> -static void __exit rcutree_trace_cleanup(void)
> -{
> - debugfs_remove_recursive(rcudir);
> -}
> -
> -
> -module_init(rcutree_trace_init);
> -module_exit(rcutree_trace_cleanup);
> -
> -MODULE_AUTHOR("Paul E. McKenney");
> -MODULE_DESCRIPTION("Read-Copy Update tracing for hierarchical implementation");
> -MODULE_LICENSE("GPL");
> +device_initcall(rcutree_trace_init);
> --
> 2.6.0.rc3
>

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/