powerpc: Fix DSCR inheritance in copy_thread()
authorAnton Blanchard <anton@samba.org>
Mon, 3 Sep 2012 16:49:47 +0000 (16:49 +0000)
committerBen Hutchings <ben@decadent.org.uk>
Wed, 19 Sep 2012 14:04:41 +0000 (15:04 +0100)
commitea1862390d3fa57b1b0eca2c445f25a98e02fc7d
treec4f876dc890c4eded6a4f6a9143b8167799bb295
parent5f31a641ff0e76081cf4ae1f72799cd59c20baea
powerpc: Fix DSCR inheritance in copy_thread()

commit 1021cb268b3025573c4811f1dee4a11260c4507b upstream.

If the default DSCR is non zero we set thread.dscr_inherit in
copy_thread() meaning the new thread and all its children will ignore
future updates to the default DSCR. This is not intended and is
a change in behaviour that a number of our users have hit.

We just need to inherit thread.dscr and thread.dscr_inherit from
the parent which ends up being much simpler.

This was found with the following test case:

http://ozlabs.org/~anton/junkcode/dscr_default_test.c

Signed-off-by: Anton Blanchard <anton@samba.org>
Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Signed-off-by: Ben Hutchings <ben@decadent.org.uk>
arch/powerpc/kernel/process.c