Remove 'struct trapframe' pointer from mips64's 'struct syscall_args'.

While here, use MAXARGS.  This brings its 'struct syscall_args' in sync
with most other architectures.

Reviewed by:	arichardson, brooks
MFC after:	2 weeks
Sponsored by:	EPSRC
Differential Revision:	https://reviews.freebsd.org/D26619
This commit is contained in:
Edward Tomasz Napierala 2020-11-06 19:19:51 +00:00
parent 890efa1ab9
commit 24adaab477
Notes: svn2git 2020-12-20 02:59:44 +00:00
svn path=/head/; revision=367429
2 changed files with 5 additions and 6 deletions

View File

@ -81,11 +81,11 @@ struct mdproc {
size_t md_tls_tcb_offset; /* TCB offset */
};
#define MAXARGS 8
struct syscall_args {
u_int code;
struct sysent *callp;
register_t args[8];
struct trapframe *trapframe;
register_t args[MAXARGS];
};
#ifdef __mips_n64

View File

@ -349,9 +349,9 @@ cpu_fetch_syscall_args(struct thread *td)
bzero(sa->args, sizeof(sa->args));
/* compute next PC after syscall instruction */
td->td_pcb->pcb_tpc = sa->trapframe->pc; /* Remember if restart */
if (DELAYBRANCH(sa->trapframe->cause)) /* Check BD bit */
locr0->pc = MipsEmulateBranch(locr0, sa->trapframe->pc, 0, 0);
td->td_pcb->pcb_tpc = locr0->pc; /* Remember if restart */
if (DELAYBRANCH(locr0->cause)) /* Check BD bit */
locr0->pc = MipsEmulateBranch(locr0, locr0->pc, 0, 0);
else
locr0->pc += sizeof(int);
sa->code = locr0->v0;
@ -781,7 +781,6 @@ trap(struct trapframe *trapframe)
case T_SYSCALL + T_USER:
{
td->td_sa.trapframe = trapframe;
syscallenter(td);
#if !defined(SMP) && (defined(DDB) || defined(DEBUG))