Remove duplicate imports

Change-Id: Ifbdb3d58fdb71d3b8037858fd0836dbf081740cd
Remove some debugging objects

Change-Id: I94ef0348269b72f98c0416a237f99f5c328b2af7
Add CDROM LUN support (ISO mounting)
Enable CCACHE

Change-Id: I065469843217f711e6ee1c1436c04654a4af579d
Optimize flags

Change-Id: I2e26f57bef371d46e9139807bdfca4992a76960b
introduce for_each_thread() to replace the buggy while_each_thread()

while_each_thread() and next_thread() should die, almost every lockless
usage is wrong.

1. Unless g == current, the lockless while_each_thread() is not safe.

   while_each_thread(g, t) can loop forever if g exits, next_thread()
   can't reach the unhashed thread in this case. Note that this can
   happen even if g is the group leader, it can exec.

2. Even if while_each_thread() itself was correct, people often use
   it wrongly.

   It was never safe to just take rcu_read_lock() and loop unless
   you verify that pid_alive(g) == T, even the first next_thread()
   can point to the already freed/reused memory.

This patch adds signal_struct->thread_head and task->thread_node to
create the normal rcu-safe list with the stable head.  The new
for_each_thread(g, t) helper is always safe under rcu_read_lock() as
long as this task_struct can't go away.

Note: of course it is ugly to have both task_struct->thread_node and the
old task_struct->thread_group, we will kill it later, after we change
the users of while_each_thread() to use for_each_thread().

Perhaps we can kill it even before we convert all users, we can
reimplement next_thread(t) using the new thread_head/thread_node.  But
we can't do this right now because this will lead to subtle behavioural
changes.  For example, do/while_each_thread() always sees at least one
task, while for_each_thread() can do nothing if the whole thread group
has died.  Or thread_group_empty(), currently its semantics is not clear
unless thread_group_leader(p) and we need to audit the callers before we
can change it.

So this patch adds the new interface which has to coexist with the old
one for some time, hopefully the next changes will be more or less
straightforward and the old one will go away soon.

Signed-off-by: Oleg Nesterov <oleg@redhat.com>
Reviewed-by: Sergey Dyasly <dserrg@gmail.com>
Tested-by: Sergey Dyasly <dserrg@gmail.com>
Reviewed-by: Sameer Nanda <snanda@chromium.org>
Acked-by: David Rientjes <rientjes@google.com>
Cc: "Eric W. Biederman" <ebiederm@xmission.com>
Cc: Frederic Weisbecker <fweisbec@gmail.com>
Cc: Mandeep Singh Baines <msb@chromium.org>
Cc: "Ma, Xindong" <xindong.ma@intel.com>
Cc: Michal Hocko <mhocko@suse.cz>
Cc: "Tu, Xiaobing" <xiaobing.tu@intel.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Signed-off-by: Paul Reioux <reioux@gmail.com>

backported to Linux 3.4

Conflicts:
	kernel/fork.c
introduce for_each_thread() to replace the buggy while_each_thread() (fix)

fix a merge derp. pointed out by neobuddy89

Signed-off-by: Paul Reioux <reioux@gmail.com>
Convert while_each_thread to for_each_thread

Change-Id: Ic155c4ee4a14f341174b0f647fa66659eb02d683
Introduce CPU governors

Change-Id: I2d12885b221107ec700cbb511d85f371e90fd8e2
Preservative: Remove sysfs group when disabling governor

Change-Id: I37464b8f03cafde7111c9b9258f5f901dcca1437
InteractiveX: Fix bug

Change-Id: I415f2097f8562490b2729eab903ab71693d0f6f7
Sync msm_dcvs_scm with CAF

Change-Id: I79d2fcf439279e75b7f6fc34d2844b3706f3a752
Update MSM DCVS

Change-Id: Ic21b6a9d06a8ed777fa6a20e4280b3c43e6039e6
Remove InteractiveX and Smartass2 (not stable enough)

Change-Id: Ib9819b7f0a649fea18ad6539a09061ad29a4ca65
Ondemandplus: Set min frequencies to 192000

Change-Id: Ib4e57d7555165c48d93b6e228082073d7b863d10
Add 192000 to preservative

Change-Id: I40ffe316d7051e40ae8b2265281b5ba2203289f9
Introduce some IO schedulers (row, fiops, sio, fifo, vr, zen, tripndroid)

Change-Id: Id341e63926b12d4cf125714ba21f4416f8353bda
LZ4 support

Change-Id: I9f5afef19f52c52da48c70c8d2b860a8d087d8e6
Update non-yuga configs

Change-Id: Ife93ce03acdae72f655dfb5edaf4bee73dd01557