Handle a misaligned stack pointer exception from userspace. The exception

still needs to be enabled, but this will help with testing.

Sponsored by:	ABT Systems Ltd
This commit is contained in:
Andrew Turner 2016-02-03 17:00:19 +00:00
parent d1e8cd8a88
commit 729ac0ee8c
Notes: svn2git 2020-12-20 02:59:44 +00:00
svn path=/head/; revision=295214

View File

@ -374,6 +374,10 @@ do_el0_sync(struct trapframe *frame)
case EXCP_UNKNOWN: case EXCP_UNKNOWN:
el0_excp_unknown(frame); el0_excp_unknown(frame);
break; break;
case EXCP_SP_ALIGN:
call_trapsignal(td, SIGBUS, BUS_ADRALN, (void *)frame->tf_sp);
userret(td, frame);
break;
case EXCP_PC_ALIGN: case EXCP_PC_ALIGN:
call_trapsignal(td, SIGBUS, BUS_ADRALN, (void *)frame->tf_elr); call_trapsignal(td, SIGBUS, BUS_ADRALN, (void *)frame->tf_elr);
userret(td, frame); userret(td, frame);