#525 closed defect (fixed)
ApicIds deadlock
Reported by: | Philip Taylor | Owned by: | |
---|---|---|---|
Priority: | Must Have | Milestone: | Alpha 1 |
Component: | Core engine | Keywords: | |
Cc: | Jan Wassenberg | Patch: |
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 (4)
comment:1 by , 14 years ago
Resolution: | → fixed |
---|---|
Status: | new → closed |
comment:4 by , 12 years ago
Milestone: | → Alpha 1 |
---|
Note:
See TracTickets
for help on using tickets.
(In [7852]) fix deadlock in pre-XP SP2 windows codepath fixes #525