summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorRenato Botelho <renato@netgate.com>2019-02-14 17:21:06 -0200
committerRenato Botelho <renato@netgate.com>2019-02-14 17:21:06 -0200
commitff7d4801f1b88de656e028209818ff005e8a1353 (patch)
tree0c9e98adb285dbb3e62bf0c6afb11ee3d92d4f42
parent65dfac376f4a35c53056703461cf009324c73545 (diff)
parentfa113e14a11a28421ac7613ac726034e329e1133 (diff)
downloadFreeBSD-src-ff7d4801f1b88de656e028209818ff005e8a1353.zip
FreeBSD-src-ff7d4801f1b88de656e028209818ff005e8a1353.tar.gz
Merge remote-tracking branch 'origin/releng/11.2' into RELENG_2_4_4
-rw-r--r--UPDATING5
-rw-r--r--sys/amd64/amd64/exception.S6
-rw-r--r--sys/conf/newvers.sh2
3 files changed, 10 insertions, 3 deletions
diff --git a/UPDATING b/UPDATING
index 3a44e6c..6e159f8 100644
--- a/UPDATING
+++ b/UPDATING
@@ -16,6 +16,11 @@ from older versions of FreeBSD, try WITHOUT_CLANG and WITH_GCC to bootstrap to
the tip of head, and then rebuild without this option. The bootstrap process
from older version of current across the gcc/clang cutover is a bit fragile.
+20190205 p9 FreeBSD-SA-19:01.syscall
+
+ amd64: clear callee-preserved registers on syscall exit
+ [SA-19:01.syscall]
+
20190109 p8 FreeBSD-EN-19:03.sqlite
FreeBSD-EN-19:04.tzdata
FreeBSD-EN-19:05.kqueue
diff --git a/sys/amd64/amd64/exception.S b/sys/amd64/amd64/exception.S
index b7e88e6..c35cea9 100644
--- a/sys/amd64/amd64/exception.S
+++ b/sys/amd64/amd64/exception.S
@@ -496,12 +496,14 @@ fast_syscall_common:
movq TF_RFLAGS(%rsp),%r11 /* original %rflags */
movq TF_RIP(%rsp),%rcx /* original %rip */
movq TF_RSP(%rsp),%rsp /* user stack pointer */
+ xorl %r8d,%r8d /* zero the rest of GPRs */
+ xorl %r10d,%r10d
cmpb $0,pti
je 2f
movq PCPU(UCR3),%r9
movq %r9,%cr3
- xorl %r9d,%r9d
-2: swapgs
+2: xorl %r9d,%r9d
+ swapgs
sysretq
3: /* AST scheduled. */
diff --git a/sys/conf/newvers.sh b/sys/conf/newvers.sh
index 041b548..5da6827 100644
--- a/sys/conf/newvers.sh
+++ b/sys/conf/newvers.sh
@@ -44,7 +44,7 @@
TYPE="FreeBSD"
REVISION="11.2"
-BRANCH="RELEASE-p8"
+BRANCH="RELEASE-p9"
if [ -n "${BRANCH_OVERRIDE}" ]; then
BRANCH=${BRANCH_OVERRIDE}
fi
OpenPOWER on IntegriCloud