Hi Nilay,

Thank you for your reply. I did debug it with gdb and it reported the
assertion "assert(isDeadlockEventScheduled() == false)" in
mem/ruby/system/RubyPort.cc was failed. I've no idea how to fix it but just
commented this statement and compiled and ran again. It reported
segmentation fault again because "build/X86/python/swig/pyevent.cc:84: void
cleanupCountedDrain(Event*): Assertion `event->getCount() == 0' failed."

I also tried to restore the checkpoints (they seemed to be created, at
least there were checkpoint files in the directory) using the following
command: build/X86/m5.debug -d ruby-output configs/example/ruby_fs.py
--kernel=x86_64-vmlinux-2.6.22.9.smp --script=configs/boot/mcf.rcS
--cpu-type=detailed --caches --ruby -r 4.
But it failed and reported as:
----------------------
 File "/home/ytian/Documents/Gem5/configs/common/Simulation.py", line 70,
in setCPUClass
    class TmpClass(AtomicSimpleCPU): pass
NameError: global name 'AtomicSimpleCPU' is not defined
------------------------
So I removed the option "--cpu-type" and used "--restore-with-cpu=detailed"
to restore the checkpoint again. It reported as:
-----------------------
  File "/home/ytian/Documents/Gem5/configs/common/Simulation.py", line 45,
in setCPUClass
    class TmpClass(TimingSimpleCPU): pass
NameError: global name 'TimingSimpleCPU' is not defined
------------------------

I think both of the objects are defined. So I wonder if there is something
wrong with the steps/options which I used to compile/run the gem5 since I
didn't make any changes to the source code. Could you please help me fix
this problem? Thank you for your help.


Thanks,
Yingying



On Thu, Aug 23, 2012 at 11:53 AM, Nilay Vaish <ni...@cs.wisc.edu> wrote:

> Well, whenever I get a segmentation fault with any program, I run it under
> GDB and figure out where the problem might be. In almost all the cases,
> this works out well. You might also want to do the same.
>
> --
> Nilay
>
>
> On Thu, 23 Aug 2012, Cookie wrote:
>
>  To whom it may concern,
>>
>> I got segmentation fault when trying to create checkpoints for X86_FS with
>> ruby. Hereunder are the steps, please tell me if there is anything wrong:
>>
>> 1/ Compile Gem5 with RUBY and MOESI_hammer protocol:
>>    $  scons -j4 build/X86/gem5.fast PROTOCOL=MOESI_hammer RUBY=True
>>
>> 2/ Writing the mcf.rcS script with the checkpoint command. Here is the
>> script file:
>>   cd run/run_base_ref_x86.0000
>>   /sbin/m5 checkpoint 0 0
>>   /sbin/m5 checkpoint 100000000 200000000
>>   /sbin/m5 loadsymbol
>>   /sbin/m5 resetstats
>>   echo "i am reaching program itself"
>>   /spec06/429.mcf/exe/mcf_base.**exe inp.in
>>   /sbin/m5 exit
>>
>> 3/ Running the program:
>>  $ build/X86/gem5.fast -d ruby-output configs/example/ruby_fs.py
>> --kernel=x86_64-vmlinux-2.6.**22.9.smp --script=configs/boot/mcf.rcS
>> --cpu-type=detailed --caches --ruby --checkpoint-dir=checkpoint-**dir
>>
>> However, when it tried to write the checkpoint, it gave the following
>> output and exited:
>> ------------------------------**-------
>> info: Entering event queue @ 5169999496500.  Starting simulation...
>> Writing checkpoint
>> Segmentation fault
>> ------------------------------**-------
>>
>> I also tried to create checkpoint using options like: --take-checkpoints
>> "10000000, 10000000", which also encountered the segmentation fault and
>> exited. Could you please tell me what the problem is? Did I give the wrong
>> options or any steps missing? Thank you in advance.
>>
>>
>> Thanks,
>> Yingying
>>
>>
_______________________________________________
gem5-users mailing list
gem5-users@gem5.org
http://m5sim.org/cgi-bin/mailman/listinfo/gem5-users

Reply via email to