Skip to content
Snippets Groups Projects
Commit 5ec08ba2 authored by Will Drewry's avatar Will Drewry Committed by Iliyan Malchev
Browse files

CHROMIUM: ARM: r1->r0 for get/set arguments


ARM reuses r0 as the first argument. This fixes the mistaken
assumption in the original patchset.  These will be merged
into one change when sent upstream.

Signed-off-by: default avatarWill Drewry <wad@chromium.org>
TEST=emerge tegra2_kaen; run seccomp testsuite
BUG=chromium-os:27878

Change-Id: Iaaa09995d35f78ee8cef7b600d526e71f3b2fcec
Reviewed-on: https://gerrit.chromium.org/gerrit/21342


Reviewed-by: default avatarKees Cook <keescook@chromium.org>
Reviewed-by: default avatarWill Drewry <wad@chromium.org>
Tested-by: default avatarWill Drewry <wad@chromium.org>
Signed-off-by: default avatarSasha Levitskiy <sanek@google.com>
parent db3d3076
Branches
No related tags found
No related merge requests found
...@@ -55,7 +55,7 @@ static inline void syscall_get_arguments(struct task_struct *task, ...@@ -55,7 +55,7 @@ static inline void syscall_get_arguments(struct task_struct *task,
unsigned long *args) unsigned long *args)
{ {
BUG_ON(i + n > 6); BUG_ON(i + n > 6);
memcpy(args, &regs->ARM_r1 + i, n * sizeof(args[0])); memcpy(args, &regs->ARM_r0 + i, n * sizeof(args[0]));
} }
static inline void syscall_set_arguments(struct task_struct *task, static inline void syscall_set_arguments(struct task_struct *task,
...@@ -64,7 +64,7 @@ static inline void syscall_set_arguments(struct task_struct *task, ...@@ -64,7 +64,7 @@ static inline void syscall_set_arguments(struct task_struct *task,
const unsigned long *args) const unsigned long *args)
{ {
BUG_ON(i + n > 6); BUG_ON(i + n > 6);
memcpy(&regs->ARM_r1 + i, args, n * sizeof(args[0])); memcpy(&regs->ARM_r0 + i, args, n * sizeof(args[0]));
} }
static inline int syscall_get_arch(struct task_struct *task, static inline int syscall_get_arch(struct task_struct *task,
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment