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
make NtFlushVirtualMemory return STATUS_SUCCESS rather than hanging as
being UNIMPLEMENTED. Added a DPRINT to warn that its a stub
Modified: trunk/reactos/ntoskrnl/mm/virtual.c
_____
Modified: trunk/reactos/ntoskrnl/mm/virtual.c
--- trunk/reactos/ntoskrnl/mm/virtual.c 2005-01-19 20:16:26 UTC (rev
13136)
+++ trunk/reactos/ntoskrnl/mm/virtual.c 2005-01-19 20:26:56 UTC (rev
13137)
@@ -49,8 +49,9 @@
* RETURNS: Status
*/
{
- UNIMPLEMENTED;
- return(STATUS_NOT_IMPLEMENTED);
+ /* This should be implemented once we support network filesystems */
+ DPRINT("NtFlushVirtualMemory is UNIMPLEMENTED\n");
+ return(STATUS_SUCCESS);
}