With current cvs tree, booted from freeldr floppy and hdd, same config I
got :
(ke/ipi.c: 114) Waiting longer than 5 seconds to start the ipi routine
KeBugCheck at ke/ipi.c: 115
ntoskrnl.exe : misc KeBugCheck and _KiIpiServiceRoutine@8
little interestig is frame 3db0 :
c0003da0 <_PsBeginThread>:
/*
* Do the necessary prolog after a context switch
*/
call _PiBeforeBeginThread
c0003da0: e8 b1 ec 0a 00 call c00b2a56 <_PiBeforeBeginThread>
/*
* Call the actual start of the thread
*/
movl 4(%esp), %ebx /* Start routine */
c0003da5: 8b 5c 24 04 mov 0x4(%esp),%ebx
movl 8(%esp), %eax /* Start context */
c0003da9: 8b 44 24 08 mov 0x8(%esp),%eax
pushl %eax
c0003dad: 50 push %eax
call *%ebx /* Call the start routine */
c0003dae: ff d3 call *%ebx
addl $4, %esp
c0003db0: 83 c4 04 add $0x4,%esp
/*
* Terminate the thread
*/
hal.dll :
First frame is 186a0 :
Ki386EnableInterrupts();
18693: fb sti
#if 0
DbgPrint("(%s:%d) MpsIpiHandler on CPU%d, current irql is %d\n",
__FILE__,__LINE__, KeGetCurrentProcessorNumber(),
KeGetCurrentIrql());
#endif
KiIpiServiceRoutine(NULL, NULL);
18694: 83 ec 08 sub $0x8,%esp
18697: 6a 00 push $0x0
18699: 6a 00 push $0x0
1869b: e8 20 31 00 00 call 1b7c0 <_KiIpiServiceRoutine@8>
186a0: 83 c4 08 add $0x8,%esp
#if 0
DbgPrint("(%s:%d) MpsIpiHandler on CPU%d done\n", __FILE__,__LINE__,
KeGetCurrentProcessorNumber());
#endif
Ki386DisableInterrupts();
the second frame is : 190ff
000190e0 <_MpsIpiInterrupt>:
.global _MpsIpiInterrupt
_MpsIpiInterrupt:
/* Save registers */
BEFORE
190e0: fc cld
190e1: 60 pusha
190e2: 1e push %ds
190e3: 06 push %es
190e4: 0f a0 push %fs
190e6: 0f a8 push %gs
190e8: b8 10 00 00 00 mov $0x10,%eax
190ed: 8e d8 mov %eax,%ds
190ef: 8e c0 mov %eax,%es
190f1: 8e e8 mov %eax,%gs
190f3: b8 30 00 00 00 mov $0x30,%eax
190f8: 8e e0 mov %eax,%fs
/* Call the C handler */
call _MpsIpiHandler
190fa: e8 78 f5 ff ff call 18677 <_MpsIpiHandler>
/* Return to the caller */
AFTER
190ff: 0f a9 pop %gs
19101: 0f a1 pop %fs
19103: 07 pop %es
19104: 1f pop %ds
19105: 61 popa
iret
19106: cf iret
00019107 <_MpsErrorInterrupt>:
Regards, David