android_kernel_samsung_msm8976/kernel/power
Viresh Kumar df8a9d39e7 workqueues: Introduce new flag WQ_POWER_EFFICIENT for power oriented workqueues
Workqueues can be performance or power-oriented. Currently, most workqueues are
bound to the CPU they were created on. This gives good performance (due to cache
effects) at the cost of potentially waking up otherwise idle cores (Idle from
scheduler's perspective. Which may or may not be physically idle) just to
process some work. To save power, we can allow the work to be rescheduled on a
core that is already awake.

Workqueues created with the WQ_UNBOUND flag will allow some power savings.
However, we don't change the default behaviour of the system.  To enable
power-saving behaviour, a new config option CONFIG_WQ_POWER_EFFICIENT needs to
be turned on. This option can also be overridden by the
workqueue.power_efficient boot parameter.

tj: Updated config description and comments.  Renamed
    CONFIG_WQ_POWER_EFFICIENT to CONFIG_WQ_POWER_EFFICIENT_DEFAULT.

Signed-off-by: Viresh Kumar <viresh.kumar@linaro.org>
Reviewed-by: Amit Kucheria <amit.kucheria@linaro.org>
Signed-off-by: Tejun Heo <tj@kernel.org>
2019-07-27 22:11:01 +02:00
..
Kconfig workqueues: Introduce new flag WQ_POWER_EFFICIENT for power oriented workqueues 2019-07-27 22:11:01 +02:00
Makefile Import latest Samsung release 2017-04-18 03:43:52 +02:00
autosleep.c Import latest Samsung release 2017-04-18 03:43:52 +02:00
block_io.c
console.c
hibernate.c
main.c PM / Sleep: Print last wakeup source on failed wakeup_count write 2018-05-26 00:39:32 +02:00
power.h kernel: use macros from compiler.h instead of __attribute__((...)) 2019-07-27 22:10:27 +02:00
poweroff.c
process.c PM: convert do_each_thread to for_each_process_thread 2019-07-27 22:09:18 +02:00
qos.c qos: wake up cores based on the qos updated cpu mask 2016-09-16 05:22:56 -07:00
register_list.h Import latest Samsung release 2017-04-18 03:43:52 +02:00
secpmic_dump.c Import latest Samsung release 2017-04-18 03:43:52 +02:00
snapshot.c kernel: use macros from compiler.h instead of __attribute__((...)) 2019-07-27 22:10:27 +02:00
suspend.c kernel: use macros from compiler.h instead of __attribute__((...)) 2019-07-27 22:10:27 +02:00
suspend_test.c PM / sleep: fix device reference leak in test_suspend 2019-07-27 21:42:48 +02:00
suspend_time.c
swap.c kernel: use macros from compiler.h instead of __attribute__((...)) 2019-07-27 22:10:27 +02:00
user.c
wakelock.c PM / wakeup: Only update last time for active wakeup sources 2019-07-27 21:52:47 +02:00
wakeup_reason.c Import latest Samsung release 2017-04-18 03:43:52 +02:00