diff options
author | Konstantin Belousov <kib@FreeBSD.org> | 2009-01-14 14:20:08 +0000 |
---|---|---|
committer | Konstantin Belousov <kib@FreeBSD.org> | 2009-01-14 14:20:08 +0000 |
commit | a353a3455eb2fdbcb0aeae2a68b6811c360e17d2 (patch) | |
tree | 5fcd1695bc08ec0e51ceb417897269d0e20e0649 /sys/amd64/amd64/exception.S | |
parent | 07cd9ab013d70afc8f7ef57279a49adeedb0c7ae (diff) | |
download | src-a353a3455eb2fdbcb0aeae2a68b6811c360e17d2.tar.gz src-a353a3455eb2fdbcb0aeae2a68b6811c360e17d2.zip |
Disable interrupts, if they were enabled, before doing swapgs.
Otherwise, interrupt may happen while we run with kernel CS and usermode
gsbase.
Reviewed by: jeff
MFC after: 1 week
Notes
Notes:
svn path=/head/; revision=187221
Diffstat (limited to 'sys/amd64/amd64/exception.S')
-rw-r--r-- | sys/amd64/amd64/exception.S | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/sys/amd64/amd64/exception.S b/sys/amd64/amd64/exception.S index 80308a90fac7..1c098e4cfdf0 100644 --- a/sys/amd64/amd64/exception.S +++ b/sys/amd64/amd64/exception.S @@ -494,6 +494,7 @@ outofnmi: movq %rsp,%rdx /* frame */ sti call *%rax + cli nocallchain: #endif testl %ebx,%ebx |