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>
Adding KSM
ksm: check and skip page, if it is already scanned

On system like Android where most of the process are forked
from parent w/o execve, KSM can scan same page multiple times
in one scan cycle. There is no advantage in scanning same page
multiple times for merging. During testing with Android, it was
observed around 60% pages are skipped for each scan cycle.

Change-Id: I0cf01802f0b4d61fcab92558beb9e1c660dc9a77
Link: http://lkml.kernel.org/r/CAMrOTPgBtANS_ryRjan0-dTL97U7eRvtf3dCsss=Kn+Uk89fuA@mail.gmail.com
Signed-off-by: Pradeep Sawlani <sawlani@amazon.com>
Disable CMA for i9300
smdk4412: skip already scanned pages

Change-Id: I23899819c23ad4e330b73c19e06942f66f5ae9f4

Conflicts:
	arch/arm/configs/cyanogenmod_i9300_defconfig
	arch/arm/configs/slim_n7100_defconfig
Mali UMP: add back missing ioctl

When upgrading to R4P0, following ioctl was accidentally removed:
  - UMP_IOC_ION_IMPORT

UMP_IOC_ION_IMPORT is needed in order to play videos with new OSS gralloc.

Change-Id: I1c6b0b1714b258b883226a9a6bff1e5430d9b9af
revert CMA
revert CMA again
smdk4412: disable selinux temporarily

Change-Id: I6033bc1577de176884e86069cb4adb305641004a