mm, oom: introduce helper function to process threads during scan

This patch introduces a helper function to process each thread during
the
iteration over the tasklist.  A new return type, enum oom_scan_t, is
defined to determine the future behavior of the iteration:

- OOM_SCAN_OK: continue scanning the thread and find its badness,

- OOM_SCAN_CONTINUE: do not consider this thread for oom kill, it's
ineligible,

- OOM_SCAN_ABORT: abort the iteration and return, or

- OOM_SCAN_SELECT: always select this thread with the highest badness
possible.

There is no functional change with this patch.  This new helper function
will be used in the next patch in the memory controller.

Reviewed-by: KAMEZAWA Hiroyuki <kamezawa.hiroyu@jp.fujitsu.com>
Acked-by: KOSAKI Motohiro <kosaki.motohiro@jp.fujitsu.com>
Reviewed-by: Michal Hocko <mhocko@suse.cz>
Signed-off-by: David Rientjes <rientjes@google.com>
Cc: Oleg Nesterov <oleg@redhat.com>
Reviewed-by: Sha Zhengju <handai.szj@taobao.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>

idea is taken here -
https://github.com/faux123/Nexus_5/commit/5294189b948903d5a595630b73833d6a58f11265