2014-12-24 09:51:53

by Lai Jiangshan

[permalink] [raw]
Subject: [PATCH] rcu: remove "select IRQ_WORK" from config TREE_RCU

The 48a7639ce80c ("rcu: Make callers awaken grace-period kthread")
removed the irq_work_queue(), so the TREE_RCU doesn't need
irq work any more.

Signed-off-by: Lai Jiangshan <[email protected]>
---
init/Kconfig | 2 --
kernel/rcu/tree.h | 1 -
2 files changed, 0 insertions(+), 3 deletions(-)

diff --git a/init/Kconfig b/init/Kconfig
index 9afb971..39b4313 100644
--- a/init/Kconfig
+++ b/init/Kconfig
@@ -470,7 +470,6 @@ choice
config TREE_RCU
bool "Tree-based hierarchical RCU"
depends on !PREEMPT && SMP
- select IRQ_WORK
help
This option selects the RCU implementation that is
designed for very large SMP system with hundreds or
@@ -480,7 +479,6 @@ config TREE_RCU
config PREEMPT_RCU
bool "Preemptible tree-based hierarchical RCU"
depends on PREEMPT
- select IRQ_WORK
help
This option selects the RCU implementation that is
designed for very large SMP systems with hundreds or
diff --git a/kernel/rcu/tree.h b/kernel/rcu/tree.h
index 8e7b184..a47a13c 100644
--- a/kernel/rcu/tree.h
+++ b/kernel/rcu/tree.h
@@ -27,7 +27,6 @@
#include <linux/threads.h>
#include <linux/cpumask.h>
#include <linux/seqlock.h>
-#include <linux/irq_work.h>

/*
* Define shape of hierarchy based on NR_CPUS, CONFIG_RCU_FANOUT, and
--
1.7.4.4


2014-12-24 18:07:37

by Paul E. McKenney

[permalink] [raw]
Subject: Re: [PATCH] rcu: remove "select IRQ_WORK" from config TREE_RCU

On Wed, Dec 24, 2014 at 05:55:28PM +0800, Lai Jiangshan wrote:
> The 48a7639ce80c ("rcu: Make callers awaken grace-period kthread")
> removed the irq_work_queue(), so the TREE_RCU doesn't need
> irq work any more.
>
> Signed-off-by: Lai Jiangshan <[email protected]>

Good catch, queued for 3.20. Thank you!

Thanx, Paul

> ---
> init/Kconfig | 2 --
> kernel/rcu/tree.h | 1 -
> 2 files changed, 0 insertions(+), 3 deletions(-)
>
> diff --git a/init/Kconfig b/init/Kconfig
> index 9afb971..39b4313 100644
> --- a/init/Kconfig
> +++ b/init/Kconfig
> @@ -470,7 +470,6 @@ choice
> config TREE_RCU
> bool "Tree-based hierarchical RCU"
> depends on !PREEMPT && SMP
> - select IRQ_WORK
> help
> This option selects the RCU implementation that is
> designed for very large SMP system with hundreds or
> @@ -480,7 +479,6 @@ config TREE_RCU
> config PREEMPT_RCU
> bool "Preemptible tree-based hierarchical RCU"
> depends on PREEMPT
> - select IRQ_WORK
> help
> This option selects the RCU implementation that is
> designed for very large SMP systems with hundreds or
> diff --git a/kernel/rcu/tree.h b/kernel/rcu/tree.h
> index 8e7b184..a47a13c 100644
> --- a/kernel/rcu/tree.h
> +++ b/kernel/rcu/tree.h
> @@ -27,7 +27,6 @@
> #include <linux/threads.h>
> #include <linux/cpumask.h>
> #include <linux/seqlock.h>
> -#include <linux/irq_work.h>
>
> /*
> * Define shape of hierarchy based on NR_CPUS, CONFIG_RCU_FANOUT, and
> --
> 1.7.4.4
>