mm: vmscan: If kswapd has been running too long, allow it to sleep

Under constant allocation pressure, kswapd can be in the situation where
sleeping_prematurely() will always return true even if kswapd has been
running a long time. Check if kswapd needs to be scheduled.

Signed-off-by: Mel Gorman <mgorman@suse.de>
ghost: Do not compile mpdecision and rq stats

* No longer using these.

Signed-off-by: Zhao Wei Liew <zhaoweiliew@gmail.com>