summaryrefslogtreecommitdiffstats
path: root/sys/arm/arm
diff options
context:
space:
mode:
authorkib <kib@FreeBSD.org>2017-07-21 18:06:57 +0000
committerLuiz Souza <luiz@netgate.com>2018-02-19 14:38:58 -0300
commit5dad0dd804a33b8a372d49fa342b24c67b1c2fb3 (patch)
treedcd2066d75216c10efafd5b88288a142e2ab0bd6 /sys/arm/arm
parentba6ece08e939b4f3d25e9e81956e8d622ed1fc2e (diff)
downloadFreeBSD-src-5dad0dd804a33b8a372d49fa342b24c67b1c2fb3.zip
FreeBSD-src-5dad0dd804a33b8a372d49fa342b24c67b1c2fb3.tar.gz
MFC r319873:
Move struct syscall_args syscall arguments parameters container into struct thread. (cherry picked from commit 985b26c6741218c134a15526fd32b736bd73fa8a)
Diffstat (limited to 'sys/arm/arm')
-rw-r--r--sys/arm/arm/syscall.c11
1 files changed, 6 insertions, 5 deletions
diff --git a/sys/arm/arm/syscall.c b/sys/arm/arm/syscall.c
index 1ff48ab..8c33fff 100644
--- a/sys/arm/arm/syscall.c
+++ b/sys/arm/arm/syscall.c
@@ -99,12 +99,14 @@ __FBSDID("$FreeBSD$");
void swi_handler(struct trapframe *);
int
-cpu_fetch_syscall_args(struct thread *td, struct syscall_args *sa)
+cpu_fetch_syscall_args(struct thread *td)
{
struct proc *p;
register_t *ap;
+ struct syscall_args *sa;
int error;
+ sa = &td->td_sa;
sa->code = td->td_frame->tf_r7;
ap = &td->td_frame->tf_r0;
if (sa->code == SYS_syscall) {
@@ -141,15 +143,14 @@ cpu_fetch_syscall_args(struct thread *td, struct syscall_args *sa)
static void
syscall(struct thread *td, struct trapframe *frame)
{
- struct syscall_args sa;
int error;
- sa.nap = 4;
+ td->td_sa.nap = 4;
- error = syscallenter(td, &sa);
+ error = syscallenter(td);
KASSERT(error != 0 || td->td_ar == NULL,
("returning from syscall with td_ar set!"));
- syscallret(td, error, &sa);
+ syscallret(td, error);
}
void
OpenPOWER on IntegriCloud