ksm: Provide support to use deferred timers for scanner thread

KSM thread to scan pages is getting schedule on definite timeout.
That wakes up CPU from idle state and hence may affect the power
consumption. Provide an optional support to use deferred timer
which suites low-power use-cases.

To enable deferred timers,
$ echo 1 > /sys/kernel/mm/ksm/deferred_timer

Change-Id: I07fe199f97fe1f72f9a9e1b0b757a3ac533719e8
Signed-off-by: Chintan Pandya <cpandya@codeaurora.org>
lowmemorykiller: fix logic derp for ZRAM/ZSWAP enabled use cases

instead of looking at the total available compressed swap, just look at the
free swap pages and take a 50% buffer for it

Signed-off-by: Paul Reioux <reioux@gmail.com>
mm/ksm: engage deferred timer by default

Signed-off-by: Paul Reioux <reioux@gmail.com>
intelli_plug: only apply suspend/resume logic if active

Signed-off-by: Paul Reioux <reioux@gmail.com>
intelli_plug: fix incorrect cpufreq API usage

This resolves the wakeup kick and screen off max issues

Signed-off-by: Paul Reioux <reioux@gmail.com>
intelli_plug: initialize ip_info struct element during driver init

this will eliminate race issues

Signed-off-by: Paul Reioux <reioux@gmail.com>
intelli_plug: use primary CPU's info data for non-boot cpu's settings

Async CPU design has caused quite a bit of grief for controlling cpu
frequencies

bump to version 3.8

Signed-off-by: Paul Reioux <reioux@gmail.com>
drivers/cpufreq/cpufreq_intelliactive.c: GCC 4.9.x warning fix up

Signed-off-by: Paul Reioux <reioux@gmail.com>
include/linux/sunrpc/cache.h: GCC 4.9.x fixup

Signed-off-by: Paul Reioux <reioux@gmail.com>
net/sunrpc/svcauth_unix.c: GCC 4.9.x fixup

Signed-off-by: Paul Reioux <reioux@gmail.com>
intelli_plug: older Qualcomm kernel compatibility fixup

ARGH... really angry at CAF code.

some cpufreq driver APIs are incredibly unstable with some of the older
MSM kernels.  The correct way is the fix the cpufreq drivers, but there are
tons of variations out there, so rather than depending on a fix, make
intelli_plug more universal by avoiding the troubling APIs altogether

Signed-off-by: Paul Reioux <reioux@gmail.com>
drivers/exfat: add Samsung's open source exFat module version 1.2.4

Signed-off-by: Paul Reioux <reioux@gmail.com>
exfat: AIO Optimization compatibility fixup

Signe-off-by: Paul Reioux <reioux@gmail.com>

Conflicts:
	fs/Kconfig
drivers/Makefile: add exFat support

Signed-off-by: Paul Reioux <reioux@gmail.com>
drivers/video/msm/mipi_novatek.c: gcc 4.8.x fixup

Signed-off-by: Paul Reioux <reioux@gmail.com>
dts: up cpu voltage for better stability
dts: overclock CPU to 2.72Ghz
Revert "lowmemorykiller: fix logic derp for ZRAM/ZSWAP enabled use cases"

This reverts commit bb082facd99da91209943649b81ac05a1213ba22.
Revert "dts: overclock CPU to 2.72Ghz"

This reverts commit 036ababb9a86a1b95a2714ea19054a541ae6f2a9.
Revert "dts: up cpu voltage for better stability"

This reverts commit 34d6f6811444aca10149680a0428c4695078d3de.