Temporary hack to make ntoskrnl stop crashing - an user-mode pointer (in the EBP register) was being dereferenced without any check Since I don't know what this is for, I'm disabling it for now - it works for people reporting the crash, and it apparently only breaks GDB support. Alex, this should be your baby, please have a look Modified: trunk/reactos/ntoskrnl/ke/i386/syscall.S _____
Modified: trunk/reactos/ntoskrnl/ke/i386/syscall.S --- trunk/reactos/ntoskrnl/ke/i386/syscall.S 2005-01-19 21:04:37 UTC (rev 13139) +++ trunk/reactos/ntoskrnl/ke/i386/syscall.S 2005-01-19 21:05:26 UTC (rev 13140) @@ -95,14 +95,20 @@
pushl %gs // + 0x48 sub $0x28, %esp // + 0x70
+#if 0 #ifdef DBG /* Trick gdb 6 into backtracing over the system call */ + /* FIXME: %ebp is *never* initialized */ pushl 4(%ebp) /* DebugEIP */ // + 0x74 pushl (%ebp) /* DebugEBP */ // + 0x78 #else pushl 0x60(%esp) /* DebugEIP */ // + 0x74 pushl %ebp /* DebugEBP */ // + 0x78 #endif +#else + pushl $0 /* DebugEIP */ // + 0x74 + pushl $0 /* DebugEBP */ // + 0x78 +#endif
/* Load the segment registers */ sti