diff --git a/reactos/ntoskrnl/ke/i386/ctxswitch.S b/reactos/ntoskrnl/ke/i386/ctxswitch.S index 7bd712eb634..bbeb462d11b 100644 --- a/reactos/ntoskrnl/ke/i386/ctxswitch.S +++ b/reactos/ntoskrnl/ke/i386/ctxswitch.S @@ -63,6 +63,10 @@ PUBLIC @KiSwitchThreads@8 @KiSwitchThreads@8: /* Load the new kernel stack and switch OS to new thread */ mov esp, edx +#if DBG + /* Restore the frame pointer early to get sensible backtraces */ + mov ebp, [esp+12] +#endif call @KiSwapContextExit@8 /* Now we're on the new thread. Return to the caller to restore registers */