Source-Changes-HG archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

[src/trunk]: src/sys/arch/amd64/amd64 When the previous contrext is in kernel...



details:   https://anonhg.NetBSD.org/src/rev/c3c602cf877a
branches:  trunk
changeset: 319306:c3c602cf877a
user:      maxv <maxv%NetBSD.org@localhost>
date:      Fri May 25 15:33:56 2018 +0000

description:
When the previous contrext is in kernel mode we are not guaranteed to have
a 16-byte-aligned stack pointer, so align it. That's what the CPU would do
on exception entry.

diffstat:

 sys/arch/amd64/amd64/amd64_trap.S |  3 ++-
 1 files changed, 2 insertions(+), 1 deletions(-)

diffs (17 lines):

diff -r a63474eddcbe -r c3c602cf877a sys/arch/amd64/amd64/amd64_trap.S
--- a/sys/arch/amd64/amd64/amd64_trap.S Fri May 25 06:34:02 2018 +0000
+++ b/sys/arch/amd64/amd64/amd64_trap.S Fri May 25 15:33:56 2018 +0000
@@ -1,4 +1,4 @@
-/*     $NetBSD: amd64_trap.S,v 1.41 2018/05/08 17:20:44 maxv Exp $     */
+/*     $NetBSD: amd64_trap.S,v 1.42 2018/05/25 15:33:56 maxv Exp $     */
 
 /*
  * Copyright (c) 1998, 2007, 2008, 2017 The NetBSD Foundation, Inc.
@@ -121,6 +121,7 @@
                movq    PCB_RSP0(%rax),%rax
        .else
                movq    TF_RSP(%rsp),%rax
+               andq    $(~0xF),%rax
        .endif
 
        subq    $(5*8),%rax



Home | Main Index | Thread Index | Old Index