On Fri, 25 Jul 2014 20:18:18 +0530 Chintan Pandya <cpandya@xxxxxxxxxxxxxx> wrote: > KSM thread to scan pages is scheduled on definite timeout. That wakes > up CPU from idle state and hence may affect the power consumption. > Provide an optional support to use deferrable timer which suites > low-power use-cases. > > Typically, on our setup we observed, 10% less power consumption with > some use-cases in which CPU goes to power collapse frequently. For > example, playing audio while typically CPU remains idle. > > To enable deferrable timers, > $ echo 1 > /sys/kernel/mm/ksm/deferrable_timer This could not have been the version which you tested. What's up? --- a/mm/ksm.c~ksm-provide-support-to-use-deferrable-timers-for-scanner-thread-fix-fix-2 +++ a/mm/ksm.c @@ -1720,8 +1720,6 @@ static int ksmd_should_run(void) static int ksm_scan_thread(void *nothing) { - signed long to; - set_freezable(); set_user_nice(current, 5); @@ -1735,7 +1733,9 @@ static int ksm_scan_thread(void *nothing try_to_freeze(); if (ksmd_should_run()) { - timeout = msecs_to_jiffies(ksm_thread_sleep_millisecs); + signed long to; + + to = msecs_to_jiffies(ksm_thread_sleep_millisecs); if (use_deferrable_timer) schedule_timeout_deferrable_interruptible(to); else _ -- To unsubscribe, send a message with 'unsubscribe linux-mm' in the body to majordomo@xxxxxxxxx. For more info on Linux MM, see: http://www.linux-mm.org/ . Don't email: <a href=mailto:"dont@xxxxxxxxx"> email@xxxxxxxxx </a>