diff options
author | Andreas Hansson <andreas.hansson@arm.com> | 2012-05-04 03:30:02 -0400 |
---|---|---|
committer | Andreas Hansson <andreas.hansson@arm.com> | 2012-05-04 03:30:02 -0400 |
commit | 15e28c5ba6ef0a436d05468e3113304987257b0b (patch) | |
tree | c7a5c3a5b235cff56aa229e2700eda2c0b6e07ca | |
parent | e8f56bdf45cf77083525273fe83fca95a165d40f (diff) | |
download | gem5-15e28c5ba6ef0a436d05468e3113304987257b0b.tar.xz |
Ruby: Ensure snoop requests are sent using sendTimingSnoopReq
This patch fixes a bug that caused snoop requests to be placed in a
packet queue. Instead, the packet is now sent immediately using
sendTimingSnoopReq, thus bypassing the packet queue and any normal
responses waiting to be sent.
-rw-r--r-- | src/mem/ruby/system/RubyPort.cc | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/src/mem/ruby/system/RubyPort.cc b/src/mem/ruby/system/RubyPort.cc index 53b6e8e6d..3621cc9e3 100644 --- a/src/mem/ruby/system/RubyPort.cc +++ b/src/mem/ruby/system/RubyPort.cc @@ -698,7 +698,7 @@ RubyPort::ruby_eviction_callback(const Address& address) if ((*p)->getMasterPort().isSnooping()) { Packet *pkt = new Packet(&req, MemCmd::InvalidationReq); // send as a snoop request - (*p)->sendNextCycle(pkt, true); + (*p)->sendTimingSnoopReq(pkt); } } } |