svn commit: r354767 - stable/12/sys/amd64/amd64

Konstantin Belousov kib at FreeBSD.org
Sat Nov 16 10:49:18 UTC 2019


Author: kib
Date: Sat Nov 16 10:49:17 2019
New Revision: 354767
URL: https://svnweb.freebsd.org/changeset/base/354767

Log:
  MFC r354766:
  amd64: only set PCB_FULL_IRET pcb flag when #gp or similar exception comes
  from usermode.

Modified:
  stable/12/sys/amd64/amd64/exception.S
Directory Properties:
  stable/12/   (props changed)

Modified: stable/12/sys/amd64/amd64/exception.S
==============================================================================
--- stable/12/sys/amd64/amd64/exception.S	Sat Nov 16 08:16:50 2019	(r354766)
+++ stable/12/sys/amd64/amd64/exception.S	Sat Nov 16 10:49:17 2019	(r354767)
@@ -497,8 +497,8 @@ prot_addrf:
 3:	cmpw	$KUG32SEL,TF_GS(%rsp)
 	jne	4f
 	movq	%rdx,PCB_GSBASE(%rdi)
+	orl	$PCB_FULL_IRET,PCB_FLAGS(%rdi)	/* full iret from user #gp */
 4:	call	handle_ibrs_entry
-	orl	$PCB_FULL_IRET,PCB_FLAGS(%rdi)	/* always full iret from GPF */
 	movw	%es,TF_ES(%rsp)
 	movw	%ds,TF_DS(%rsp)
 	testl	$PSL_I,TF_RFLAGS(%rsp)


More information about the svn-src-stable mailing list