Good afternoon,

I am doing some experiments with the 9948 rev. (Though I have experienced the 
same bug with revisions of May).

Currently I am taking a checkpoint inside a benchmark and restore it with Ruby 
+ OoO CPU.
If I do it with the simple network model or garnet flexible it works fine.
However, when trying to restore it with the garnet fixed network, I am facing a 
deadlock.

I am using the following parameters:

build/X86_MESI_CMP_directory/gem5.opt  -d testing_ckpt/ 
configs/example/ruby_fs.py --kernel=x86_64-vmlinux-2.6.28.4-smp 
--disk-image=x86root.img -n 16 -r1 --num-l2cache=16 --num-dir=16 --topo=Mesh 
--mesh-rows=4 --restore-with=detailed  --cpu-type=detailed --garnet=fixed

(I fixed a similar problem when restoring with the timing cpu, that fix is now 
in the gem5 dev repo.)

I have been tracing the source of this problem, and in some point of the 
simulation, a packet like this appears in the NetworkInterface_d.cc object of 
the garnet fixed router.

NI:22 Injecting msg [RequestMsg: Addr = [0x98ad80, line 0x98ad80] Type = INV 
AccessMode = User Requestor = L1Cache-0 Destination = [NetDest (4) 0 0 0 0 0 0 
0 0 0 0 0 0 0 0 0 0  - 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0  - 0 0 0 0 0 0 0 0 0 0 0 
0 0 0 0 0  - 0  - ] MessageSize = Request_Control DataBlk = [ 0x0 0x0 0x0 0x0 
0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 
0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 
0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 
] Len = 0 Dirty = 0 Prefetch = No Time = 3166840465750000 ]

This message has all possible destinations set to 0, causing the flitisize 
method to do absolutely nothing.
It does a for loop for all the destinations and after the loop is done, returns 
true. The NI will remove the packet from the Message Queue. When there are no 
possible destinations, the loop for won't execute and the flitisize will return 
true removing the packet from the queue. The problem comes when this mem 
request has been registered in the sequencer tables, so after quite some time, 
it will pop up with a deadlock panic.

Now I am trying to determine how did this packet get into the Network, does 
anyone know what may be happening in here?


Thanks a lot for your time,

Kind regards,



_______________________________________________
gem5-users mailing list
[email protected]
http://m5sim.org/cgi-bin/mailman/listinfo/gem5-users

Reply via email to