Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 25 Jan 2018 18:09:26 +0000 (UTC)
From:      Nathan Whitehorn <nwhitehorn@FreeBSD.org>
To:        src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org
Subject:   svn commit: r328408 - head/sys/powerpc/powerpc
Message-ID:  <201801251809.w0PI9QOr093192@repo.freebsd.org>

next in thread | raw e-mail | index | archive | help
Author: nwhitehorn
Date: Thu Jan 25 18:09:26 2018
New Revision: 328408
URL: https://svnweb.freebsd.org/changeset/base/328408

Log:
  Treat DSE exceptions like DSI exceptions when generating signinfo.
  Both can generate SIGSEGV, but DSEs would have put the wrong address
  into the siginfo structure when the signal was delivered.
  
  MFC after:	1 week

Modified:
  head/sys/powerpc/powerpc/exec_machdep.c

Modified: head/sys/powerpc/powerpc/exec_machdep.c
==============================================================================
--- head/sys/powerpc/powerpc/exec_machdep.c	Thu Jan 25 18:08:56 2018	(r328407)
+++ head/sys/powerpc/powerpc/exec_machdep.c	Thu Jan 25 18:09:26 2018	(r328408)
@@ -154,7 +154,8 @@ sendsig(sig_t catcher, ksiginfo_t *ksi, sigset_t *mask
 	 * Fill siginfo structure.
 	 */
 	ksi->ksi_info.si_signo = ksi->ksi_signo;
-	ksi->ksi_info.si_addr = (void *)((tf->exc == EXC_DSI) ? 
+	ksi->ksi_info.si_addr =
+	    (void *)((tf->exc == EXC_DSI || tf->exc == EXC_DSE) ? 
 	    tf->dar : tf->srr0);
 
 	#ifdef COMPAT_FREEBSD32



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201801251809.w0PI9QOr093192>