]> git.baikalelectronics.ru Git - kernel.git/commit
microblaze: fix clone syscall
authorMichal Simek <michal.simek@xilinx.com>
Tue, 13 Aug 2013 23:00:53 +0000 (16:00 -0700)
committerLinus Torvalds <torvalds@linux-foundation.org>
Wed, 14 Aug 2013 00:57:48 +0000 (17:57 -0700)
commit0fc73d54dee19994854583373dcc9733d74b5013
tree130ab88dc03c5bc007949e6f98fe39edfccb81f7
parent7bed92fd76f2ec3a3e1eb03151d2a7d1684c8bda
microblaze: fix clone syscall

Fix inadvertent breakage in the clone syscall ABI for Microblaze that
was introduced in commit 884e79bb7db3 ("microblaze: switch to generic
fork/vfork/clone").

The Microblaze syscall ABI for clone takes the parent tid address in the
4th argument; the third argument slot is used for the stack size.  The
incorrectly-used CLONE_BACKWARDS type assigned parent tid to the 3rd
slot.

This commit restores the original ABI so that existing userspace libc
code will work correctly.

All kernel versions from v3.8-rc1 were affected.

Signed-off-by: Michal Simek <michal.simek@xilinx.com>
Cc: <stable@vger.kernel.org>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
arch/Kconfig
arch/microblaze/Kconfig
include/linux/syscalls.h
kernel/fork.c