Revert "port 3.0 kernel power source in pieces"
This reverts commit 17b94bef87f4797675ce9716725c70d4828a3db8.
Revert "workqueues: Introduce new flag WQ_POWER_EFFICIENT for power oriented workqueues"
This reverts commit b2f60dfc8a5f68d24936f9cead661b8f7856567d.
Change-Id: Ic2487f4ccbf47cde71bb96385e76468a44dfca8b
Revert "workqueue: Add system wide power_efficient workqueues"
This reverts commit 157ecab851fd1f788fd6d3c7d76dc30dbc6278aa.
Revert "workqueues: add missing header file"
This reverts commit 7f490b21c8edbd5f47320015c05c3086909d51a4.
Change-Id: I0aa3067a2a8414bcfc1035ca1433e97b9cbbdedd
Revert "block: queue work on power efficient wq"
This reverts commit b65d8b7d030437bf982ed1bfcd619d7f427fc9b4.
diff --git a/include/linux/workqueue.h b/include/linux/workqueue.h
index d0ceaf4..af15545 100644
--- a/include/linux/workqueue.h
+++ b/include/linux/workqueue.h
@@ -258,33 +258,6 @@
WQ_DRAINING = 1 << 6, /* internal: workqueue is draining */
WQ_RESCUER = 1 << 7, /* internal: workqueue has rescuer */
- /*
- * Per-cpu workqueues are generally preferred because they tend to
- * show better performance thanks to cache locality. Per-cpu
- * workqueues exclude the scheduler from choosing the CPU to
- * execute the worker threads, which has an unfortunate side effect
- * of increasing power consumption.
- *
- * The scheduler considers a CPU idle if it doesn't have any task
- * to execute and tries to keep idle cores idle to conserve power;
- * however, for example, a per-cpu work item scheduled from an
- * interrupt handler on an idle CPU will force the scheduler to
- * excute the work item on that CPU breaking the idleness, which in
- * turn may lead to more scheduling choices which are sub-optimal
- * in terms of power consumption.
- *
- * Workqueues marked with WQ_POWER_EFFICIENT are per-cpu by default
- * but become unbound if workqueue.power_efficient kernel param is
- * specified. Per-cpu workqueues which are identified to
- * contribute significantly to power-consumption are identified and
- * marked with this flag and enabling the power_efficient mode
- * leads to noticeable power saving at the cost of small
- * performance disadvantage.
- *
- * http://thread.gmane.org/gmane.linux.kernel/1480396
- */
- WQ_POWER_EFFICIENT = 1 << 8,
-
WQ_MAX_ACTIVE = 512, /* I like 512, better ideas? */
WQ_MAX_UNBOUND_PER_CPU = 4, /* 4 * #cpus for unbound wq */
WQ_DFL_ACTIVE = WQ_MAX_ACTIVE / 2,
@@ -319,12 +292,6 @@
*
* system_nrt_freezable_wq is equivalent to system_nrt_wq except that
* it's freezable.
- *
- * *_power_efficient_wq are inclined towards saving power and converted
- * into WQ_UNBOUND variants if 'wq_power_efficient' is enabled; otherwise,
- * they are same as their non-power-efficient counterparts - e.g.
- * system_power_efficient_wq is identical to system_wq if
- * 'wq_power_efficient' is disabled. See WQ_POWER_EFFICIENT for more info.
*/
extern struct workqueue_struct *system_wq;
extern struct workqueue_struct *system_long_wq;
@@ -332,9 +299,7 @@
extern struct workqueue_struct *system_unbound_wq;
extern struct workqueue_struct *system_freezable_wq;
extern struct workqueue_struct *system_nrt_freezable_wq;
-extern struct workqueue_struct *system_power_efficient_wq;
-extern struct workqueue_struct *system_freezable_power_efficient_wq;
-
+
extern struct workqueue_struct *
__alloc_workqueue_key(const char *fmt, unsigned int flags, int max_active,
struct lock_class_key *key, const char *lock_name, ...) __printf(1, 6);