Hi all,
I run with SPEC CPU2k6 to evalute my PCM relead proposal. When AXLE-sandy-pcm.cfg is fed to zsim, the simulation crashed with the following backtrace dump,
[S 0] [1] Internal exception detected:
[S 0] [1] Code: 1
[S 0] [1] Address: 0x7ffff6862451
[S 0] [1] Description: Exception Code: ACCESS_INVALID_ADDRESS. Exception Address = 0x7ffff6862451. Access Type: UNKNOWN. Access Address = 0x000000000
[S 0] [1] Caused by invalid access to address 0x0
[S 0] [1] Backtrace (18/40 max frames)
[S 0] [1] /home/hanfeng/Workspace/ZSIM/zsim-src/build/opt/zsim.cpp:1417 / InternalExceptionHandler
[S 0] [1] :? / LEVEL_PINCLIENT::IEH_CALLBACKS::NotifyInternalException(unsigned int, LEVEL_BASE::EXCEPTION_INFO_, LEVEL_VM::CONTEXT_)
[S 0] [1] /home/hanfeng/Workspace/tools/pin/intel64/bin/pinbin(_ZN8LEVEL_VM12SIGNALS_IMPL19InternalHandlerSyncEiPN7BARECRT8SIGXINFOEPN5PINVM11ISIGCONTEXTEPPKNS_14SCT_ATTRIBUTESEPNS_5PCTXTEPj+0x462) [0x3077e002]
[S 0] [1] /home/hanfeng/Workspace/tools/pin/intel64/bin/pinbin(_ZN8LEVEL_VM12SIGNALS_IMPL20HandlePhysicalSignalEPN7BARECRT8SIGXINFOEPN5PINVM11ISIGCONTEXTE+0x200) [0x30783c90]
[S 0] [1] /home/hanfeng/Workspace/tools/pin/intel64/bin/pinbin(_ZN5PINVM28SIGNAL_DETAILS_LINUX_INTEL6415InternalHandlerEiPN7BARECRT8SIGXINFOEPv+0x9a) [0x308245ca]
[S 0] [1] /home/hanfeng/Workspace/tools/pin/intel64/bin/pinbin(BARECRT_SigReturnRt+0) [0x3084fa3c]
[S 0] [1] /home/hanfeng/Workspace/ZSIM/zsim-src/build/opt/timing_event.h:173 / TimingEvent::release()
[S 0] [1] /home/hanfeng/Workspace/ZSIM/zsim-src/build/opt/nvmain-src/NVM/nvmain.cpp:495 / NVM::NVMain::RequestComplete(NVM::NVMainRequest*)
[S 0] [1] /home/hanfeng/Workspace/ZSIM/zsim-src/build/opt/nvmain-src/src/EventQueue.cpp:383 / NVM::EventQueue::Process()
[S 0] [1] /home/hanfeng/Workspace/ZSIM/zsim-src/build/opt/nvmain-src/src/EventQueue.cpp:338 / NVM::EventQueue::Loop(unsigned long)
[S 0] [1] /home/hanfeng/Workspace/ZSIM/zsim-src/build/opt/nvmain-src/src/EventQueue.cpp:528 / NVM::GlobalEventQueue::Cycle(unsigned long)
[S 0] [1] /home/hanfeng/Workspace/ZSIM/zsim-src/build/opt/nvmain_mem_ctrl.cpp:288 / NVMainMemory::tick(unsigned long)
[S 0] [1] /home/hanfeng/Workspace/ZSIM/zsim-src/build/opt/nvmain_mem_ctrl.cpp:98 / SchedEventNVMain::simulate(unsigned long)
[S 0] [1] /home/hanfeng/Workspace/ZSIM/zsim-src/build/opt/timing_event.h:163 / TimingEvent::run(unsigned long)
[S 0] [1] /home/hanfeng/Workspace/ZSIM/zsim-src/build/opt/contention_sim.cpp:309 / ContentionSim::simulatePhaseThread(unsigned int)
[S 0] [1] /home/hanfeng/Workspace/ZSIM/zsim-src/build/opt/contention_sim.cpp:282 / ContentionSim::simThreadLoop(unsigned int)
[S 0] [1] /home/hanfeng/Workspace/tools/pin/intel64/bin/pinbin(_ZN8LEVEL_VM17VM_THREAD_DB_UNIX13THREAD_RUNNER9RunThreadEPN11OS_SERVICES7ITHREADE+0x291) [0x3078d8b1]
[S 0] [1] /home/hanfeng/Workspace/tools/pin/intel64/bin/pinbin(_ZN11OS_SERVICES6THREAD12RootFunctionEPv+0x26) [0x3084f036]
C:Tool (or Pin) caused signal 11 at PC 0x7ffff6862451
[H] Child 30249 done
[H] Panic on build/opt/zsim_harness.cpp:123: Child 30249 (idx 0) exit was anomalous, killing simulation
The zsim log also reports the failure as follows.
[S 0] Failed assertion on build/opt/timing_event.h:173: state should be 3, 15988976 instead
However, when AXLE-sandy-dram.cfg is fed to zsim, the simulation can pass without any errors.
May I have any suggestions to handle this problem?