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);