Nope. I don't ever use that functionality and don't know how it's supposed to work. It would be helpful to see what the different system pointers are. For instance, is one or the other NULL? Do they both point at different system objects?

Gabe

Quoting Nilay Vaish <ni...@cs.wisc.edu>:

Knute, thanks for looking into the issue. You can use the Bisect extension with hg.
        http://mercurial.selenic.com/wiki/BisectExtension

Can figure out the exact changeset that caused the problem?

Gabe, can you comment on what might have changed with SE/FS merge that is causing switching CPUs to fail?

--
Nilay

On Tue, 7 Feb 2012, Knute Lingaard wrote:

It works if I roll back, but if I move ahead to bb10807da889 (8809) stuff
breaks.  This is just after someone named Gabe Black pushed a whole bunch of
changes.  Do you know if there's a good tester script for an hg bisect?

-----Original Message-----
From: Nilay Vaish [mailto:ni...@cs.wisc.edu]
Sent: Tuesday, February 07, 2012 3:15 PM
To: Knute Lingaard
Cc: gem5-users@gem5.org
Subject: Re: [gem5-users] checkpointing issue

I am not able to figure out where the system pointer is getting set in case
of a switch.

Knute, can you try rolling back to version 8737, i.e. just before the SE/FS
merge took place and see if this switch still fails.

--
Nilay


On Tue, 7 Feb 2012, Knute Lingaard wrote:

I've created a series of checkpoints using the AtomicSimpleCPU and am
trying to load one of them into the O3CPU.  When running, I'm getting
the following
assert:

cpu/o3/thread_context_impl.hh:71: void O3ThreadContext<
<template-parameter-1-1> >::takeOverFrom(ThreadContext*) [with Impl =
O3CPUImpl]: Assertion `getSystemPtr() == old_context->getSystemPtr()'
failed.

The last time I pulled and built from the gem5 repo was today.

To reproduce, generate a checkpoint:

 ./build/ARM_SE/gem5.opt configs/example/se.py
--take-checkpoints=1,10000000

the command to run the checkpoint:

 ./build/ARM_SE/gem5.opt configs/example/se.py -r 1
--cpu-type=detailed --caches

The output:

gem5 compiled Feb  7 2012 13:53:07
gem5 started Feb  7 2012 13:54:59
gem5 executing on SARCUnix024.sarc.sas command line:
./build/ARM_SE/gem5.opt configs/example/se.py -r 1 --cpu-type=detailed
--caches Global frequency set at 1000000000000 ticks per second
0: system.remote_gdb.listener: listening for remote gdb #0 on port
7000
warn: optional parameter system.cpu.workload:M5_pid not present Switch
at curTick count:10000
info: Entering event queue @ 1.  Starting simulation...
Switched CPUS @ tick 10001
Changing memory mode to timing
switching cpus
gem5.opt: build/ARM_SE/cpu/o3/thread_context_impl.hh:71: void
O3ThreadContext< <template-parameter-1-1>
::takeOverFrom(ThreadContext*) [with Impl = O3CPUImpl]: Assertion
`getSystemPtr() == old_context->getSystemPtr()' failed.
Program aborted at cycle 10001
Aborted

Any ideas?

Thanks in advance,
Knute






_______________________________________________
gem5-users mailing list
gem5-users@gem5.org
http://m5sim.org/cgi-bin/mailman/listinfo/gem5-users

Reply via email to