Restrict the arm64 supervisor all instructions to only allow a zero
immediate value for system calls. We may wish to use other values in the future for other purposes. MFC after: 1 week Sponsored by: DARPA, AFRL
This commit is contained in:
parent
be4bf62684
commit
52a680fb22
@ -135,8 +135,13 @@ svc_handler(struct thread *td, struct trapframe *frame)
|
||||
struct syscall_args sa;
|
||||
int error;
|
||||
|
||||
error = syscallenter(td, &sa);
|
||||
syscallret(td, error, &sa);
|
||||
if ((frame->tf_esr & ESR_ELx_ISS_MASK) == 0) {
|
||||
error = syscallenter(td, &sa);
|
||||
syscallret(td, error, &sa);
|
||||
} else {
|
||||
call_trapsignal(td, SIGILL, ILL_ILLOPN, (void *)frame->tf_elr);
|
||||
userret(td, frame);
|
||||
}
|
||||
}
|
||||
|
||||
static void
|
||||
|
Loading…
x
Reference in New Issue
Block a user