Author: andrew Date: Wed Jan 18 13:27:24 2017 New Revision: 312378 URL: https://svnweb.freebsd.org/changeset/base/312378
Log: Use the kernel stack in the ARM FBT DTrace provider. This is used to find the fifth argument to functions being traced, however there was an error where the userspace stack was being used. This may be invalid leading to a kernel panic if this address is unmapped. Submitted by: Graeme Jenkinson <graeme.jenkin...@cl.cam.ac.uk> MFC after: 1 week Differential Revision: https://reviews.freebsd.org/D9229 Modified: head/sys/cddl/dev/fbt/arm/fbt_isa.c Modified: head/sys/cddl/dev/fbt/arm/fbt_isa.c ============================================================================== --- head/sys/cddl/dev/fbt/arm/fbt_isa.c Wed Jan 18 10:21:06 2017 (r312377) +++ head/sys/cddl/dev/fbt/arm/fbt_isa.c Wed Jan 18 13:27:24 2017 (r312378) @@ -61,7 +61,7 @@ fbt_invop(uintptr_t addr, struct trapfra /* Get 5th parameter from stack */ DTRACE_CPUFLAG_SET(CPU_DTRACE_NOFAULT); - fifthparam = *(register_t *)frame->tf_usr_sp; + fifthparam = *(register_t *)frame->tf_svc_sp; DTRACE_CPUFLAG_CLEAR(CPU_DTRACE_NOFAULT | CPU_DTRACE_BADADDR); dtrace_probe(fbt->fbtp_id, frame->tf_r0, _______________________________________________ svn-src-all@freebsd.org mailing list https://lists.freebsd.org/mailman/listinfo/svn-src-all To unsubscribe, send any mail to "svn-src-all-unsubscr...@freebsd.org"