From: "Paul E. McKenney" <paulmck@linux.vnet.ibm.com>
To: linux-kernel@vger.kernel.org
Cc: mingo@kernel.org, laijs@cn.fujitsu.com, dipankar@in.ibm.com,
akpm@linux-foundation.org, mathieu.desnoyers@efficios.com,
josh@joshtriplett.org, niv@us.ibm.com, tglx@linutronix.de,
peterz@infradead.org, rostedt@goodmis.org, dhowells@redhat.com,
edumazet@google.com, darren@dvhart.com, fweisbec@gmail.com,
oleg@redhat.com, sbw@mit.edu,
Shaibal Dutta <shaibal.dutta@broadcom.com>,
"Paul E. McKenney" <paulmck@linux.vnet.ibm.com>,
Zoran Markovic <zoran.markovic@linaro.org>
Subject: [PATCH tip/core/rcu 08/12] rcu: Move SRCU grace period work to power efficient workqueue
Date: Mon, 17 Feb 2014 13:35:55 -0800 [thread overview]
Message-ID: <1392672959-6386-8-git-send-email-paulmck@linux.vnet.ibm.com> (raw)
In-Reply-To: <1392672959-6386-1-git-send-email-paulmck@linux.vnet.ibm.com>
From: Shaibal Dutta <shaibal.dutta@broadcom.com>
For better use of CPU idle time, allow the scheduler to select the CPU
on which the SRCU grace period work would be scheduled. This improves
idle residency time and conserves power.
This functionality is enabled when CONFIG_WQ_POWER_EFFICIENT is selected.
Cc: Lai Jiangshan <laijs@cn.fujitsu.com>
Cc: "Paul E. McKenney" <paulmck@linux.vnet.ibm.com>
Cc: Dipankar Sarma <dipankar@in.ibm.com>
Signed-off-by: Shaibal Dutta <shaibal.dutta@broadcom.com>
[zoran.markovic@linaro.org: Rebased to latest kernel version. Added commit
message. Fixed code alignment.]
Signed-off-by: Zoran Markovic <zoran.markovic@linaro.org>
Signed-off-by: Paul E. McKenney <paulmck@linux.vnet.ibm.com>
---
kernel/rcu/srcu.c | 5 +++--
1 file changed, 3 insertions(+), 2 deletions(-)
diff --git a/kernel/rcu/srcu.c b/kernel/rcu/srcu.c
index 5db7e9272d37..2359779e1daa 100644
--- a/kernel/rcu/srcu.c
+++ b/kernel/rcu/srcu.c
@@ -398,7 +398,7 @@ void call_srcu(struct srcu_struct *sp, struct rcu_head *head,
rcu_batch_queue(&sp->batch_queue, head);
if (!sp->running) {
sp->running = true;
- schedule_delayed_work(&sp->work, 0);
+ queue_delayed_work(system_power_efficient_wq, &sp->work, 0);
}
spin_unlock_irqrestore(&sp->queue_lock, flags);
}
@@ -674,7 +674,8 @@ static void srcu_reschedule(struct srcu_struct *sp)
}
if (pending)
- schedule_delayed_work(&sp->work, SRCU_INTERVAL);
+ queue_delayed_work(system_power_efficient_wq,
+ &sp->work, SRCU_INTERVAL);
}
/*
--
1.8.1.5
next prev parent reply other threads:[~2014-02-17 21:39 UTC|newest]
Thread overview: 19+ messages / expand[flat|nested] mbox.gz Atom feed top
2014-02-17 21:35 [PATCH tip/core/rcu 0/12] Miscellaneous fixes for 3.15 Paul E. McKenney
2014-02-17 21:35 ` [PATCH tip/core/rcu 01/12] rcu: Add ACCESS_ONCE() to ->n_force_qs_lh accesses Paul E. McKenney
2014-02-17 21:35 ` [PATCH tip/core/rcu 02/12] rcu: Stop tracking FSF's postal address Paul E. McKenney
2014-02-17 21:35 ` [PATCH tip/core/rcu 03/12] rcu: Remove ACCESS_ONCE() from jiffies Paul E. McKenney
2014-02-17 21:35 ` [PATCH tip/core/rcu 04/12] rcu: Glue ASCII strings together Paul E. McKenney
2014-02-17 21:35 ` [PATCH tip/core/rcu 05/12] rcu: Indentation and spacing fixes Paul E. McKenney
2014-02-17 21:35 ` [PATCH tip/core/rcu 06/12] rcu: Define rcu_assign_pointer() in terms of smp_store_release() Paul E. McKenney
2014-02-17 21:35 ` [PATCH tip/core/rcu 07/12] rcu: Disambiguate CONFIG_RCU_NOCB_CPUs Paul E. McKenney
2014-02-17 21:35 ` Paul E. McKenney [this message]
2014-02-17 21:35 ` [PATCH tip/core/rcu 09/12] fs: Substitute rcu_access_pointer() for rcu_dereference_raw() Paul E. McKenney
2014-02-17 22:00 ` Josh Triplett
2014-02-17 23:05 ` Paul E. McKenney
2014-02-18 0:04 ` Josh Triplett
2014-02-18 0:27 ` Paul E. McKenney
2014-02-17 21:35 ` [PATCH tip/core/rcu 10/12] block: " Paul E. McKenney
2014-02-18 20:21 ` Jens Axboe
2014-02-17 21:35 ` [PATCH tip/core/rcu 11/12] notifier: " Paul E. McKenney
2014-02-17 21:35 ` [PATCH tip/core/rcu 12/12] rcu: Fix sparse warning for rcu_expedited from kernel/ksysfs.c Paul E. McKenney
2014-02-17 22:01 ` [PATCH tip/core/rcu 0/12] Miscellaneous fixes for 3.15 Josh Triplett
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=1392672959-6386-8-git-send-email-paulmck@linux.vnet.ibm.com \
--to=paulmck@linux.vnet.ibm.com \
--cc=akpm@linux-foundation.org \
--cc=darren@dvhart.com \
--cc=dhowells@redhat.com \
--cc=dipankar@in.ibm.com \
--cc=edumazet@google.com \
--cc=fweisbec@gmail.com \
--cc=josh@joshtriplett.org \
--cc=laijs@cn.fujitsu.com \
--cc=linux-kernel@vger.kernel.org \
--cc=mathieu.desnoyers@efficios.com \
--cc=mingo@kernel.org \
--cc=niv@us.ibm.com \
--cc=oleg@redhat.com \
--cc=peterz@infradead.org \
--cc=rostedt@goodmis.org \
--cc=sbw@mit.edu \
--cc=shaibal.dutta@broadcom.com \
--cc=tglx@linutronix.de \
--cc=zoran.markovic@linaro.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox
all inboxes | Powered by JetHome®