Handle swapgs in interrupts and scheduling
All checks were successful
Build documentation / build-and-deploy (push) Successful in 29s
All checks were successful
Build documentation / build-and-deploy (push) Successful in 29s
This commit is contained in:
@@ -48,6 +48,12 @@
|
||||
amd64_intr ## n:; \
|
||||
x(n); \
|
||||
cli; \
|
||||
movq %rsp, %rax; \
|
||||
movq 144(%rax), %rax; \
|
||||
testb $3, %al; \
|
||||
jz 1f; \
|
||||
swapgs; \
|
||||
1:; \
|
||||
push_regs; \
|
||||
cld; \
|
||||
movq %rsp, %rdi; \
|
||||
@@ -58,6 +64,12 @@
|
||||
callq amd64_intr_handler; \
|
||||
movq (%rsp), %rsp; \
|
||||
pop_regs; \
|
||||
movq %rsp, %rax; \
|
||||
movq 144(%rax), %rax; \
|
||||
testb $3, %al; \
|
||||
jz 2f; \
|
||||
swapgs; \
|
||||
2:; \
|
||||
addq $16, %rsp; \
|
||||
iretq;
|
||||
|
||||
|
||||
Reference in New Issue
Block a user