Hi Joel, I ran with 1 CPU and 16 CPUs and get essentially the same result.
Attachments:
- gdb-n1.log: Terminal output of gdb session for the 1 CPU case.
- gdb-n16.log: Terminal output of gdb session for 16 CPU case.
- gem5-n1.log.bz2: Gem5 output for 1 CPU case.
- gem5-n16.log.bz2: Gem5 output for 16 CPU case.
Both of them crash right after printing information about "[...]Got long
mode PDP entry[...]".
I hope the gdb and gem5 output logs are sufficient for you to replicate
this bug; my current hg parent is 9181:42807286d6cb, when the patch
mentioned below was applied.
-- Marco
On 30/08/12 22:30, Joel Hestness wrote:
> Hi Marco,
> I'm currently trying to track down bugs in checkpoint restore to get
> x86+Ruby+O3CPU working, and I'm having trouble replicating your bug.
> Could you please compile build/X86_MOESI_hammer/gem5.debug and run
> the same tests you have here to grab this backtrace? Also, can you
> collect and restore from checkpoint with a single CPU core and see
> what happens?
>
> Thanks!
> Joel
>
>
> On Wed, Aug 29, 2012 at 5:11 PM, Marco Elver <[email protected]
> <mailto:[email protected]>> wrote:
>
> Thank you, with the patch I can confirm that the assertion problem has
> been fixed (after recreating the checkpoint).
>
> My problems with the O3CPU persist, and was wondering if this is a
> problem specific to X86 or is it a general problem?
>
> -- Marco
>
> On 28/08/12 21:28, Nilay Vaish wrote:
> > The cause of the assert failure was tracked down recently by Jason
> > Power. The patch is on the review board. Here is the link -
> > http://reviews.gem5.org/r/1365
> >
> > It will be committed to the mainline soon.
> >
> > --
> > Nilay
> >
> >
> > On Tue, 28 Aug 2012, Marco Elver wrote:
> >
> >> Hi all,
> >>
> >> I would like to ask if what I am trying to do is even possible
> (and if
> >> so, how??), as I have been running into a few problems, despite
> >> following the advice I could find in older mailing-list threads
> or the
> >> wiki. My goal would be to run a full-system with ruby (with
> >> MOESI_CMP_directory), multiple processors of type O3CPU and the
> X86 ISA;
> >> I create a snapshot after the Linux kernel loaded and before the
> >> benchmark enters the ROI.
> >>
> >> With revision 9174:2171e04a2ee5 (Mon Aug 27 20:53:20 2012
> -0400) from
> >> the dev repository, I tried the following:
> >> (1) Take a checkpoint with ruby_fs, the *MOESI_hammer* protocol
> >> (only one supporting checkpoints, according to Wiki) and the
> >> TimingSimpleCPU (succeeds):
> >> $> build/X86_MOESI_hammer/gem5.opt
> >> --outdir=m5out/rawdata/fluidanimate/ckpt
> configs/example/ruby_fs.py -n
> >> 16 --cpu-type=timing --kernel=system/x86_64-vmlinux-2.6.28.smp
> >> --checkpoint-dir=m5out/checkpoints/fluidanimate --max-checkpoints=1
> >> --script=contrib/initscripts/parsec/fluidanimate.sh
> >>
> >> (2) Resume from the checkpoint with the O3CPU, restore with
> >> TimingSimpleCPU (fails):
> >> $> build/X86_MOESI_hammer/gem5.opt
> >> --outdir=m5out/rawdata/fluidanimate/detailed
> configs/example/ruby_fs.py
> >> -n 16 --cpu-type=detailed --kernel=system/x86_64-vmlinux-2.6.28.smp
> >> --checkpoint-dir=m5out/checkpoints/fluidanimate -r 0
> >> --restore-with-cpu=timing
> >> [...]
> >> Switch at curTick count:10000
> >> info: Entering event queue @ 0. Starting simulation...
> >> Runtime Error at MOESI_hammer-dir.sm:1270, Ruby Time:
> >> 1111185: assert failure, PID: 2742
> >> press return to continue.
> >>
> >> Program aborted at cycle 555592500
> >>
> >> (3) Resume from the checkpoint with the TimingSimpleCPU
> fails in the
> >> same way as (2), as in (2) the CPU isn't even switched to the O3CPU
> >> before it fails.
> >>
> >> (4) Though if I try taking a snapshot right after starting the
> >> simulator (after ~ 10000000000 cycles, kernel still booting)
> and then
> >> try to restore with the TimingSimpleCPU, it works as expected;
> only the
> >> O3CPU fails with a segfault and the following backtrace:
> >> #0 0x0000000000cdff56 in MasterPort::sendTimingReq
> >> (this=<optimized out>, pkt=0x6f8a060)
> >> at build/X86/mem/port.cc:136
> >> #1 0x00000000005fbac5 in sendTiming (pkt=0x6f8a060,
> >> sendingState=0x61a7cc0, this=0x49a9e60)
> >> at build/X86/arch/x86/pagetable_walker.cc:173
> >> #2 X86ISA::Walker::WalkerState::sendPackets
> (this=0x61a7cc0)
> >> at build/X86/arch/x86/pagetable_walker.cc:631
> >> #3 0x00000000005fc8c2 in
> >> X86ISA::Walker::WalkerState::recvPacket (this=this@entry=0x61a7cc0,
> >> pkt=pkt@entry=0x1e99920) at
> >> build/X86/arch/x86/pagetable_walker.cc:590
> >> #4 0x00000000005fcb98 in X86ISA::Walker::recvTimingResp
> >> (this=0x43706c0, pkt=0x1e99920)
> >> at build/X86/arch/x86/pagetable_walker.cc:129
> >> #5 0x0000000000ce1f5b in PacketQueue::trySendTiming
> >> (this=0x42ba5e0)
> >> at build/X86/mem/packet_queue.cc:152
> >> #6 0x0000000000ce2929 in PacketQueue::sendDeferredPacket
> >> (this=0x42ba5e0)
> >> at build/X86/mem/packet_queue.cc:190
> >> #7 0x0000000000c391be in EventQueue::serviceOne
> >> (this=<optimized out>) at build/X86/sim/eventq.cc:204
> >> #8 0x0000000000c7d342 in simulate
> >> (num_cycles=9223372036854785807) at build/X86/sim/simulate.cc:71
> >> #9 0x0000000000b8e17c in _wrap_simulate__SWIG_0
> >> (args=<optimized out>)
> >> at build/X86/python/swig/event_wrap.cc:4755
> >> #10 _wrap_simulate (self=<optimized out>,
> args=<optimized out>)
> >> at build/X86/python/swig/event_wrap.cc:4804
> >> #11 0x00007fb32a094fc6 in PyEval_EvalFrameEx () from
> >> /lib/libpython2.7.so.1.0
> >>
> >> Trying to restore with ruby using MOESI_CMP_directory and the
> >> TimingSimpleCPU results in the same error as (2), with the
> difference
> >> that it finishes loading the checkpoint, resumes, but then
> fails after
> >> about a minute ("Runtime Error at
> MOESI_CMP_directory-dir.sm:485, Ruby
> >> Time: 12038425921: assert failure, PID: 19169"). Using the
> O3CPU still
> >> results in the same error as (4).
> >>
> >> In addition, I have seen workflows of: 1) create checkpoint
> without ruby
> >> and with the AtomicSimpleCPU 2) load checkpoint with ruby and the
> >> TimingSimpleCPU. I tried this, and it works if I set
> >> --restore-with-cpu=timing. But trying this with the O3CPU
> doesn't work,
> >> resulting in the same backtrace as (4).
> >>
> >> Is what I'm trying to do possible? If so, any workarounds I should
> >> know of?
> >>
> >> Thanks,
> >> Marco
> >>
> >>
> >> --
> >> The University of Edinburgh is a charitable body, registered in
> >> Scotland, with registration number SC005336.
> >>
> >> _______________________________________________
> >> gem5-users mailing list
> >> [email protected] <mailto:[email protected]>
> >> http://m5sim.org/cgi-bin/mailman/listinfo/gem5-users
> >>
> > _______________________________________________
> > gem5-users mailing list
> > [email protected] <mailto:[email protected]>
> > http://m5sim.org/cgi-bin/mailman/listinfo/gem5-users
> >
>
>
> --
> The University of Edinburgh is a charitable body, registered in
> Scotland, with registration number SC005336.
>
> _______________________________________________
> gem5-users mailing list
> [email protected] <mailto:[email protected]>
> http://m5sim.org/cgi-bin/mailman/listinfo/gem5-users
>
>
>
>
> --
> Joel Hestness
> PhD Student, Computer Architecture
> Dept. of Computer Science, University of Wisconsin - Madison
> Dept. of Computer Science, University of Texas - Austin
> http://www.cs.utexas.edu/~hestness
> <http://www.cs.utexas.edu/%7Ehestness>
>
>
> _______________________________________________
> gem5-users mailing list
> [email protected]
> http://m5sim.org/cgi-bin/mailman/listinfo/gem5-users
Continuing.
Program received signal SIGSEGV, Segmentation fault.
0x0000000000dbced7 in MasterPort::sendTimingReq (this=0x68d4b80, pkt=0xc5de780)
at build/X86_MOESI_hammer/mem/port.cc:144
144 return _slavePort->recvTimingReq(pkt);
139
140 bool
141 MasterPort::sendTimingReq(PacketPtr pkt)
142 {
143 assert(pkt->isRequest());
144 return _slavePort->recvTimingReq(pkt);
145 }
146
147 bool
148 MasterPort::sendTimingSnoopResp(PacketPtr pkt)
$1 = (SlavePort *) 0x0
$2 = "system.cpu03.itb.walker.port"
#0 0x0000000000dbced7 in MasterPort::sendTimingReq (this=0x68d4b80, pkt=0xc5de780)
at build/X86_MOESI_hammer/mem/port.cc:144
#1 0x00000000005e2a02 in X86ISA::Walker::sendTiming (this=0x68d4b40, sendingState=0x895bd60,
pkt=0xc5de780) at build/X86_MOESI_hammer/arch/x86/pagetable_walker.cc:173
#2 0x00000000005e86b3 in X86ISA::Walker::WalkerState::sendPackets (this=0x895bd60)
at build/X86_MOESI_hammer/arch/x86/pagetable_walker.cc:631
#3 0x00000000005e83e3 in X86ISA::Walker::WalkerState::recvPacket (this=0x895bd60, pkt=0x5ce8480)
at build/X86_MOESI_hammer/arch/x86/pagetable_walker.cc:588
#4 0x00000000005e2791 in X86ISA::Walker::recvTimingResp (this=0x5c27400, pkt=0x5ce8480)
at build/X86_MOESI_hammer/arch/x86/pagetable_walker.cc:129
#5 0x00000000005e271f in X86ISA::Walker::WalkerPort::recvTimingResp (this=0x5c27440, pkt=0x5ce8480)
at build/X86_MOESI_hammer/arch/x86/pagetable_walker.cc:119
#6 0x0000000000dbd717 in SlavePort::sendTimingResp (this=0x5918dd0, pkt=0x5ce8480)
at build/X86_MOESI_hammer/mem/port.cc:235
#7 0x0000000000dbf161 in SlavePacketQueue::sendTiming (this=0x5918e00, pkt=0x5ce8480,
send_as_snoop=false) at build/X86_MOESI_hammer/mem/packet_queue.cc:243
#8 0x0000000000dbe396 in PacketQueue::trySendTiming (this=0x5918e00)
at build/X86_MOESI_hammer/mem/packet_queue.cc:152
#9 0x0000000000dbea64 in PacketQueue::sendDeferredPacket (this=0x5918e00)
at build/X86_MOESI_hammer/mem/packet_queue.cc:190
#10 0x0000000000dbeacc in PacketQueue::processSendEvent (this=0x5918e00)
at build/X86_MOESI_hammer/mem/packet_queue.cc:203
#11 0x0000000000dbfe9c in EventWrapper<PacketQueue, &PacketQueue::processSendEvent>::process (
this=0x5918e20) at build/X86_MOESI_hammer/sim/eventq.hh:582
#12 0x0000000000d0e5e6 in EventQueue::serviceOne (this=0x1f0df10 <mainEventQueue>)
at build/X86_MOESI_hammer/sim/eventq.cc:204
#13 0x0000000000d5b651 in simulate (num_cycles=9223372036854785807)
at build/X86_MOESI_hammer/sim/simulate.cc:71
#14 0x0000000000c4d483 in _wrap_simulate__SWIG_0 (args=0x569efd0)
at build/X86_MOESI_hammer/python/swig/event_wrap.cc:4806
#15 0x0000000000c4d628 in _wrap_simulate (self=0x0, args=0x569efd0)
at build/X86_MOESI_hammer/python/swig/event_wrap.cc:4855
#16 0x00007fa73a18dfc6 in PyEval_EvalFrameEx () from /lib/libpython2.7.so.1.0
#17 0x00007fa73a18feb5 in PyEval_EvalCodeEx () from /lib/libpython2.7.so.1.0
#18 0x00007fa73a18e12c in PyEval_EvalFrameEx () from /lib/libpython2.7.so.1.0
#19 0x00007fa73a18ea53 in PyEval_EvalFrameEx () from /lib/libpython2.7.so.1.0
#20 0x00007fa73a18ea53 in PyEval_EvalFrameEx () from /lib/libpython2.7.so.1.0
#21 0x00007fa73a18feb5 in PyEval_EvalCodeEx () from /lib/libpython2.7.so.1.0
#22 0x00007fa73a18ff82 in PyEval_EvalCode () from /lib/libpython2.7.so.1.0
#23 0x00007fa73a18debb in PyEval_EvalFrameEx () from /lib/libpython2.7.so.1.0
#24 0x00007fa73a18feb5 in PyEval_EvalCodeEx () from /lib/libpython2.7.so.1.0
#25 0x00007fa73a18e12c in PyEval_EvalFrameEx () from /lib/libpython2.7.so.1.0
#26 0x00007fa73a18feb5 in PyEval_EvalCodeEx () from /lib/libpython2.7.so.1.0
#27 0x00007fa73a18ff82 in PyEval_EvalCode () from /lib/libpython2.7.so.1.0
#28 0x00007fa73a1a8eba in run_mod () from /lib/libpython2.7.so.1.0
#29 0x00007fa73a1a9a88 in PyRun_StringFlags () from /lib/libpython2.7.so.1.0
#30 0x0000000000d1789f in m5Main (argc=13, argv=0x7fffdea9daf8)
at build/X86_MOESI_hammer/sim/init.cc:256
#31 0x000000000040a993 in main (argc=13, argv=0x7fffdea9daf8) at build/X86_MOESI_hammer/sim/main.cc:57
#1 0x00000000005e2a02 in X86ISA::Walker::sendTiming (this=0x68d4b40, sendingState=0x895bd60,
pkt=0xc5de780) at build/X86_MOESI_hammer/arch/x86/pagetable_walker.cc:173
173 return port.sendTimingReq(pkt);
$3 = "system.cpu03.itb.walker"
#2 0x00000000005e86b3 in X86ISA::Walker::WalkerState::sendPackets (this=0x895bd60)
at build/X86_MOESI_hammer/arch/x86/pagetable_walker.cc:631
631 if (!walker->sendTiming(this, pkt)) {
$4 = "system.cpu03.itb.walker"
#3 0x00000000005e83e3 in X86ISA::Walker::WalkerState::recvPacket (this=0x895bd60, pkt=0x5ce8480)
at build/X86_MOESI_hammer/arch/x86/pagetable_walker.cc:588
588 sendPackets();
$5 = "system.cpu03.itb.walker"
#4 0x00000000005e2791 in X86ISA::Walker::recvTimingResp (this=0x5c27400, pkt=0x5ce8480)
at build/X86_MOESI_hammer/arch/x86/pagetable_walker.cc:129
129 bool walkComplete = senderWalk->recvPacket(pkt);
$6 = "system.switch_cpus03.itb.walker"
#5 0x00000000005e271f in X86ISA::Walker::WalkerPort::recvTimingResp (this=0x5c27440, pkt=0x5ce8480)
at build/X86_MOESI_hammer/arch/x86/pagetable_walker.cc:119
119 return walker->recvTimingResp(pkt);
$7 = "system.switch_cpus03.itb.walker.port"
#6 0x0000000000dbd717 in SlavePort::sendTimingResp (this=0x5918dd0, pkt=0x5ce8480)
at build/X86_MOESI_hammer/mem/port.cc:235
235 return _masterPort->recvTimingResp(pkt);
warning: RTTI symbol not found for class 'RubyPort::M5Port'
warning: RTTI symbol not found for class 'RubyPort::M5Port'
warning: RTTI symbol not found for class 'RubyPort::M5Port'
warning: RTTI symbol not found for class 'RubyPort::M5Port'
warning: RTTI symbol not found for class 'RubyPort::M5Port'
$8 = "system.l1_cntrl3.sequencer-slave2"
#7 0x0000000000dbf161 in SlavePacketQueue::sendTiming (this=0x5918e00, pkt=0x5ce8480,
send_as_snoop=false) at build/X86_MOESI_hammer/mem/packet_queue.cc:243
243 return slavePort.sendTimingResp(pkt);
$9 = "system.l1_cntrl3.sequencer-slave2-SlavePacketQueue"
#8 0x0000000000dbe396 in PacketQueue::trySendTiming (this=0x5918e00)
at build/X86_MOESI_hammer/mem/packet_queue.cc:152
152 waitingOnRetry = !sendTiming(dp.pkt, dp.sendAsSnoop);
$10 = "system.l1_cntrl3.sequencer-slave2-SlavePacketQueue"
#9 0x0000000000dbea64 in PacketQueue::sendDeferredPacket (this=0x5918e00)
at build/X86_MOESI_hammer/mem/packet_queue.cc:190
190 trySendTiming();
$11 = "system.l1_cntrl3.sequencer-slave2-SlavePacketQueue"
#10 0x0000000000dbeacc in PacketQueue::processSendEvent (this=0x5918e00)
at build/X86_MOESI_hammer/mem/packet_queue.cc:203
203 sendDeferredPacket();
$12 = "system.l1_cntrl3.sequencer-slave2-SlavePacketQueue"
#11 0x0000000000dbfe9c in EventWrapper<PacketQueue, &PacketQueue::processSendEvent>::process (
this=0x5918e20) at build/X86_MOESI_hammer/sim/eventq.hh:582
582 void process() { (object->*F)(); }
$13 = "system.l1_cntrl3.sequencer-slave2-SlavePacketQueue.wrapped_event"
Copyright (C) 2012 Free Software Foundation, Inc. License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html> This is free software: you are free to change and redistribute it. There is NO WARRANTY, to the extent permitted by law. Type "show copying" and "show warranty" for details. This GDB was configured as "x86_64-unknown-linux-gnu". For bug reporting instructions, please see: <http://www.gnu.org/software/gdb/bugs/>... build/X86_FS/gem5.debug: No such file or directory. Attaching to process 1731 Reading symbols from /home/marco/gem5/build/X86_MOESI_hammer/gem5.debug...done. warning: Could not load shared library symbols for linux-vdso.so.1. Do you need "set solib-search-path" or "set sysroot"? Reading symbols from /lib/libpthread.so.0...(no debugging symbols found)...done. [Thread debugging using libthread_db enabled] Using host libthread_db library "/lib/libthread_db.so.1". Loaded symbols for /lib/libpthread.so.0 Reading symbols from /lib/libdl.so.2...(no debugging symbols found)...done. Loaded symbols for /lib/libdl.so.2 Reading symbols from /lib/libutil.so.1...(no debugging symbols found)...done. Loaded symbols for /lib/libutil.so.1 Reading symbols from /lib/libpython2.7.so.1.0...(no debugging symbols found)...done. Loaded symbols for /lib/libpython2.7.so.1.0 Reading symbols from /lib/libz.so.1...(no debugging symbols found)...done. Loaded symbols for /lib/libz.so.1 Reading symbols from /lib/librt.so.1...(no debugging symbols found)...done. Loaded symbols for /lib/librt.so.1 Reading symbols from /lib/libtcmalloc_minimal.so.4...(no debugging symbols found)...done. Loaded symbols for /lib/libtcmalloc_minimal.so.4 Reading symbols from /lib/libstdc++.so.6...(no debugging symbols found)...done. Loaded symbols for /lib/libstdc++.so.6 Reading symbols from /lib/libm.so.6...(no debugging symbols found)...done. Loaded symbols for /lib/libm.so.6 Reading symbols from /lib/libgcc_s.so.1...(no debugging symbols found)...done. Loaded symbols for /lib/libgcc_s.so.1 Reading symbols from /lib/libc.so.6...(no debugging symbols found)...done. Loaded symbols for /lib/libc.so.6 Reading symbols from /lib/ld-linux-x86-64.so.2...(no debugging symbols found)...done. Loaded symbols for /lib/ld-linux-x86-64.so.2 Reading symbols from /usr/lib/python2.7/lib-dynload/strop.so...(no debugging symbols found)...done. Loaded symbols for /usr/lib/python2.7/lib-dynload/strop.so Reading symbols from /usr/lib/python2.7/lib-dynload/operator.so...(no debugging symbols found)...done. Loaded symbols for /usr/lib/python2.7/lib-dynload/operator.so Reading symbols from /usr/lib/python2.7/lib-dynload/_collections.so...(no debugging symbols found)...done. Loaded symbols for /usr/lib/python2.7/lib-dynload/_collections.so Reading symbols from /usr/lib/python2.7/lib-dynload/itertools.so...(no debugging symbols found)...done. Loaded symbols for /usr/lib/python2.7/lib-dynload/itertools.so Reading symbols from /usr/lib/python2.7/lib-dynload/_bisect.so...(no debugging symbols found)...done. Loaded symbols for /usr/lib/python2.7/lib-dynload/_bisect.so Reading symbols from /usr/lib/python2.7/lib-dynload/_heapq.so...(no debugging symbols found)...done. Loaded symbols for /usr/lib/python2.7/lib-dynload/_heapq.so Reading symbols from /usr/lib/python2.7/lib-dynload/datetime.so...(no debugging symbols found)...done. Loaded symbols for /usr/lib/python2.7/lib-dynload/datetime.so Reading symbols from /usr/lib/python2.7/lib-dynload/time.so...(no debugging symbols found)...done. Loaded symbols for /usr/lib/python2.7/lib-dynload/time.so Reading symbols from /usr/lib/python2.7/lib-dynload/math.so...(no debugging symbols found)...done. Loaded symbols for /usr/lib/python2.7/lib-dynload/math.so Reading symbols from /usr/lib/python2.7/lib-dynload/_functools.so...(no debugging symbols found)...done. Loaded symbols for /usr/lib/python2.7/lib-dynload/_functools.so Reading symbols from /usr/lib/python2.7/lib-dynload/_locale.so...(no debugging symbols found)...done. Loaded symbols for /usr/lib/python2.7/lib-dynload/_locale.so Reading symbols from /usr/lib/python2.7/lib-dynload/_socket.so...(no debugging symbols found)...done. Loaded symbols for /usr/lib/python2.7/lib-dynload/_socket.so Reading symbols from /usr/lib/python2.7/lib-dynload/_ssl.so...(no debugging symbols found)...done. Loaded symbols for /usr/lib/python2.7/lib-dynload/_ssl.so Reading symbols from /lib/libssl.so.1.0.0...(no debugging symbols found)...done. Loaded symbols for /lib/libssl.so.1.0.0 Reading symbols from /lib/libcrypto.so.1.0.0...(no debugging symbols found)...done. Loaded symbols for /lib/libcrypto.so.1.0.0 Reading symbols from /usr/lib/python2.7/lib-dynload/cStringIO.so...(no debugging symbols found)...done. Loaded symbols for /usr/lib/python2.7/lib-dynload/cStringIO.so Reading symbols from /usr/lib/python2.7/lib-dynload/_struct.so...(no debugging symbols found)...done. Loaded symbols for /usr/lib/python2.7/lib-dynload/_struct.so Reading symbols from /usr/lib/python2.7/lib-dynload/_json.so...(no debugging symbols found)...done. Loaded symbols for /usr/lib/python2.7/lib-dynload/_json.so Reading symbols from /usr/lib/python2.7/lib-dynload/binascii.so...(no debugging symbols found)...done. Loaded symbols for /usr/lib/python2.7/lib-dynload/binascii.so 0x0000000000f8e2dc in std::distance<std::_List_const_iterator<MemoryNode> > (__first=..., __last=...) at /usr/lib/gcc/x86_64-unknown-linux-gnu/4.7.1/../../../../include/c++/4.7.1/bits/stl_iterator_base_funcs.h:118 118 std::__iterator_category(__first)); (gdb) c Continuing. Program received signal SIGSEGV, Segmentation fault. 0x0000000000dbced7 in MasterPort::sendTimingReq (this=0x4d24cc0, pkt=0x58bca80) at build/X86_MOESI_hammer/mem/port.cc:144 144 return _slavePort->recvTimingReq(pkt); (gdb) list 139 140 bool 141 MasterPort::sendTimingReq(PacketPtr pkt) 142 { 143 assert(pkt->isRequest()); 144 return _slavePort->recvTimingReq(pkt); 145 } 146 147 bool 148 MasterPort::sendTimingSnoopResp(PacketPtr pkt) (gdb) p _slavePort $1 = (SlavePort *) 0x0 (gdb) p this->name() $2 = "system.cpu.itb.walker.port" (gdb) bt #0 0x0000000000dbced7 in MasterPort::sendTimingReq (this=0x4d24cc0, pkt=0x58bca80) at build/X86_MOESI_hammer/mem/port.cc:144 #1 0x00000000005e2a02 in X86ISA::Walker::sendTiming (this=0x4d24c80, sendingState=0x5493220, pkt=0x58bca80) at build/X86_MOESI_hammer/arch/x86/pagetable_walker.cc:173 #2 0x00000000005e86b3 in X86ISA::Walker::WalkerState::sendPackets (this=0x5493220) at build/X86_MOESI_hammer/arch/x86/pagetable_walker.cc:631 #3 0x00000000005e83e3 in X86ISA::Walker::WalkerState::recvPacket (this=0x5493220, pkt=0x58bc0c0) at build/X86_MOESI_hammer/arch/x86/pagetable_walker.cc:588 #4 0x00000000005e2791 in X86ISA::Walker::recvTimingResp (this=0x4d257c0, pkt=0x58bc0c0) at build/X86_MOESI_hammer/arch/x86/pagetable_walker.cc:129 #5 0x00000000005e271f in X86ISA::Walker::WalkerPort::recvTimingResp (this=0x4d25800, pkt=0x58bc0c0) at build/X86_MOESI_hammer/arch/x86/pagetable_walker.cc:119 #6 0x0000000000dbd717 in SlavePort::sendTimingResp (this=0x40841a0, pkt=0x58bc0c0) at build/X86_MOESI_hammer/mem/port.cc:235 #7 0x0000000000dbf161 in SlavePacketQueue::sendTiming (this=0x40841d0, pkt=0x58bc0c0, send_as_snoop=false) at build/X86_MOESI_hammer/mem/packet_queue.cc:243 #8 0x0000000000dbe396 in PacketQueue::trySendTiming (this=0x40841d0) at build/X86_MOESI_hammer/mem/packet_queue.cc:152 #9 0x0000000000dbea64 in PacketQueue::sendDeferredPacket (this=0x40841d0) at build/X86_MOESI_hammer/mem/packet_queue.cc:190 #10 0x0000000000dbeacc in PacketQueue::processSendEvent (this=0x40841d0) at build/X86_MOESI_hammer/mem/packet_queue.cc:203 #11 0x0000000000dbfe9c in EventWrapper<PacketQueue, &PacketQueue::processSendEvent>::process ( this=0x40841f0) at build/X86_MOESI_hammer/sim/eventq.hh:582 #12 0x0000000000d0e5e6 in EventQueue::serviceOne (this=0x1f0df10 <mainEventQueue>) at build/X86_MOESI_hammer/sim/eventq.cc:204 #13 0x0000000000d5b651 in simulate (num_cycles=9223372036854785807) at build/X86_MOESI_hammer/sim/simulate.cc:71 #14 0x0000000000c4d483 in _wrap_simulate__SWIG_0 (args=0x5432650) at build/X86_MOESI_hammer/python/swig/event_wrap.cc:4806 ---Type <return> to continue, or q <return> to quit--- #15 0x0000000000c4d628 in _wrap_simulate (self=0x0, args=0x5432650) at build/X86_MOESI_hammer/python/swig/event_wrap.cc:4855 #16 0x00007f5441177fc6 in PyEval_EvalFrameEx () from /lib/libpython2.7.so.1.0 #17 0x00007f5441179eb5 in PyEval_EvalCodeEx () from /lib/libpython2.7.so.1.0 #18 0x00007f544117812c in PyEval_EvalFrameEx () from /lib/libpython2.7.so.1.0 #19 0x00007f5441178a53 in PyEval_EvalFrameEx () from /lib/libpython2.7.so.1.0 #20 0x00007f5441178a53 in PyEval_EvalFrameEx () from /lib/libpython2.7.so.1.0 #21 0x00007f5441179eb5 in PyEval_EvalCodeEx () from /lib/libpython2.7.so.1.0 #22 0x00007f5441179f82 in PyEval_EvalCode () from /lib/libpython2.7.so.1.0 #23 0x00007f5441177ebb in PyEval_EvalFrameEx () from /lib/libpython2.7.so.1.0 #24 0x00007f5441179eb5 in PyEval_EvalCodeEx () from /lib/libpython2.7.so.1.0 #25 0x00007f544117812c in PyEval_EvalFrameEx () from /lib/libpython2.7.so.1.0 #26 0x00007f5441179eb5 in PyEval_EvalCodeEx () from /lib/libpython2.7.so.1.0 #27 0x00007f5441179f82 in PyEval_EvalCode () from /lib/libpython2.7.so.1.0 #28 0x00007f5441192eba in run_mod () from /lib/libpython2.7.so.1.0 #29 0x00007f5441193a88 in PyRun_StringFlags () from /lib/libpython2.7.so.1.0 #30 0x0000000000d1789f in m5Main (argc=12, argv=0x7fffa3666048) at build/X86_MOESI_hammer/sim/init.cc:256 #31 0x000000000040a993 in main (argc=12, argv=0x7fffa3666048) at build/X86_MOESI_hammer/sim/main.cc:57 (gdb) frame 1 #1 0x00000000005e2a02 in X86ISA::Walker::sendTiming (this=0x4d24c80, sendingState=0x5493220, pkt=0x58bca80) at build/X86_MOESI_hammer/arch/x86/pagetable_walker.cc:173 173 return port.sendTimingReq(pkt); (gdb) p this->name() $3 = "system.cpu.itb.walker" (gdb) frame 2 #2 0x00000000005e86b3 in X86ISA::Walker::WalkerState::sendPackets (this=0x5493220) at build/X86_MOESI_hammer/arch/x86/pagetable_walker.cc:631 631 if (!walker->sendTiming(this, pkt)) { (gdb) p this->name() $4 = "system.cpu.itb.walker" (gdb) frame 2 #3 0x00000000005e83e3 in X86ISA::Walker::WalkerState::recvPacket (this=0x5493220, pkt=0x58bc0c0) at build/X86_MOESI_hammer/arch/x86/pagetable_walker.cc:588 588 sendPackets(); (gdb) p this->name() $5 = "system.cpu.itb.walker" (gdb) frame 3 #4 0x00000000005e2791 in X86ISA::Walker::recvTimingResp (this=0x4d257c0, pkt=0x58bc0c0) at build/X86_MOESI_hammer/arch/x86/pagetable_walker.cc:129 129 bool walkComplete = senderWalk->recvPacket(pkt); (gdb) p this->name() $6 = "system.switch_cpus.itb.walker" (gdb) frame 4 #5 0x00000000005e271f in X86ISA::Walker::WalkerPort::recvTimingResp (this=0x4d25800, pkt=0x58bc0c0) at build/X86_MOESI_hammer/arch/x86/pagetable_walker.cc:119 119 return walker->recvTimingResp(pkt); (gdb) p this->name() $7 = "system.switch_cpus.itb.walker.port" (gdb) frame 5 #6 0x0000000000dbd717 in SlavePort::sendTimingResp (this=0x40841a0, pkt=0x58bc0c0) at build/X86_MOESI_hammer/mem/port.cc:235 235 return _masterPort->recvTimingResp(pkt); (gdb) this->name() warning: RTTI symbol not found for class 'RubyPort::M5Port' warning: RTTI symbol not found for class 'RubyPort::M5Port' warning: RTTI symbol not found for class 'RubyPort::M5Port' warning: RTTI symbol not found for class 'RubyPort::M5Port' warning: RTTI symbol not found for class 'RubyPort::M5Port' $8 = "system.l1_cntrl0.sequencer-slave2" (gdb) frame 6 #7 0x0000000000dbf161 in SlavePacketQueue::sendTiming (this=0x40841d0, pkt=0x58bc0c0, send_as_snoop=false) at build/X86_MOESI_hammer/mem/packet_queue.cc:243 243 return slavePort.sendTimingResp(pkt); (gdb) p this->name() $9 = "system.l1_cntrl0.sequencer-slave2-SlavePacketQueue" (gdb) frame 7 #8 0x0000000000dbe396 in PacketQueue::trySendTiming (this=0x40841d0) at build/X86_MOESI_hammer/mem/packet_queue.cc:152 152 waitingOnRetry = !sendTiming(dp.pkt, dp.sendAsSnoop); (gdb) p this->name() $10 = "system.l1_cntrl0.sequencer-slave2-SlavePacketQueue" (gdb) frame 8 #9 0x0000000000dbea64 in PacketQueue::sendDeferredPacket (this=0x40841d0) at build/X86_MOESI_hammer/mem/packet_queue.cc:190 190 trySendTiming(); (gdb) p this->name() $11 = "system.l1_cntrl0.sequencer-slave2-SlavePacketQueue" (gdb) frame 9 #10 0x0000000000dbeacc in PacketQueue::processSendEvent (this=0x40841d0) at build/X86_MOESI_hammer/mem/packet_queue.cc:203 203 sendDeferredPacket(); (gdb) p this->name() $12 = "system.l1_cntrl0.sequencer-slave2-SlavePacketQueue" (gdb) frame 10 #11 0x0000000000dbfe9c in EventWrapper<PacketQueue, &PacketQueue::processSendEvent>::process ( this=0x40841f0) at build/X86_MOESI_hammer/sim/eventq.hh:582 582 void process() { (object->*F)(); } (gdb) p this->name() $13 = "system.l1_cntrl0.sequencer-slave2-SlavePacketQueue.wrapped_event" (gdb) frame 11 #12 0x0000000000d0e5e6 in EventQueue::serviceOne (this=0x1f0df10 <mainEventQueue>) at build/X86_MOESI_hammer/sim/eventq.cc:204 204 event->process(); (gdb) p this->name() $14 = "Main Event Queue" (gdb) quit
gem5-n1.log.bz2
Description: BZip2 compressed data
gem5-n16.log.bz2
Description: BZip2 compressed data
The University of Edinburgh is a charitable body, registered in Scotland, with registration number SC005336.
_______________________________________________ gem5-users mailing list [email protected] http://m5sim.org/cgi-bin/mailman/listinfo/gem5-users
