Kernel: Clear ESI and EDI on syscall entry

Since these are not part of the system call convention, we don't care
what userspace had in there. Might as well scrub it before entering
the kernel.

I would scrub EBP too, but that breaks the comfy kernel-thru-userspace
stack traces we currently get. It can be done with some effort.
This commit is contained in:
Andreas Kling 2020-01-25 10:17:45 +01:00
parent 3f52cee595
commit e576c9e952
Notes: sideshowbarker 2024-07-19 09:50:40 +09:00

View file

@ -48,6 +48,8 @@ asm(
" mov %ax, %ds\n"
" mov %ax, %es\n"
" cld\n"
" xor %esi, %esi\n"
" xor %edi, %edi\n"
" call syscall_handler\n"
" add $0x4, %esp\n"
" popl %gs\n"