diff options
author | kib <kib@FreeBSD.org> | 2009-01-14 14:20:08 +0000 |
---|---|---|
committer | kib <kib@FreeBSD.org> | 2009-01-14 14:20:08 +0000 |
commit | c2da459b12c3e94b251abf12f8755766401ffe0f (patch) | |
tree | 5fcd1695bc08ec0e51ceb417897269d0e20e0649 /sys/amd64 | |
parent | d6a889ecb31a0300f3ca334a2aa80c3ff2f9e82b (diff) | |
download | FreeBSD-src-c2da459b12c3e94b251abf12f8755766401ffe0f.zip FreeBSD-src-c2da459b12c3e94b251abf12f8755766401ffe0f.tar.gz |
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
Diffstat (limited to 'sys/amd64')
-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 80308a9..1c098e4 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 |