Ticket #525 (closed defect: fixed)
ApicIds deadlock
| Reported by: | Philip | Owned by: | |
|---|---|---|---|
| Priority: | Must Have | Milestone: | Alpha 1 |
| Component: | Core engine | Keywords: | |
| Cc: | jan |
Description
See call stack (from Brian), particularly:
pyrogenesis_dbg.exe!_ia32_asm_CAS() + 0x10 bytes
> pyrogenesis_dbg.exe!ModuleInit(volatile int * initState=0x00c55a7c, long (void)* init=0x004b4ff0) Line 44 + 0x10 bytes C++
pyrogenesis_dbg.exe!ApicIds() Line 172 + 0xf bytes C++
pyrogenesis_dbg.exe!VerifyRunningOnCorrectProcessors(unsigned long affinity=1) Line 252 + 0x5 bytes C++
pyrogenesis_dbg.exe!os_cpu_SetThreadAffinityMask(unsigned int processorMask=1) Line 275 + 0x9 bytes C++
pyrogenesis_dbg.exe!os_cpu_CallByEachCPU(void (unsigned int, unsigned int)* cb=0x00414380, unsigned int cbData=12933656) Line 293 + 0xb bytes C++
pyrogenesis_dbg.exe!InitApicIds() Line 160 + 0xf bytes C++
pyrogenesis_dbg.exe!ModuleInit(volatile int * initState=0x00c55a7c, long (void)* init=0x004b4ff0) Line 46 + 0x5 bytes C++
pyrogenesis_dbg.exe!ApicIds() Line 172 + 0xf bytes C++
The first ModuleInit call locks the state while calling init() which then tries to lock the state itself.
Change History
Note: See
TracTickets for help on using
tickets.

(In [7852]) fix deadlock in pre-XP SP2 windows codepath fixes #525