mem: Determine if a packet queue forces ordering at construction
authorNikos Nikoleris <nikos.nikoleris@arm.com>
Tue, 27 Nov 2018 16:55:50 +0000 (16:55 +0000)
committerNikos Nikoleris <nikos.nikoleris@arm.com>
Thu, 17 Jan 2019 11:09:41 +0000 (11:09 +0000)
commitccc50b7355fa9964c6da3ca1de2b3c48b7728bae
tree42efb7a18e24b092dd26f80ab4716e2ea581164f
parent1e9f65343c79b2c3b081e785cfec070d25292be7
mem: Determine if a packet queue forces ordering at construction

A packet queue is typically used to hold on to packets that are
schedules to be sent in the future or when they need to queue behind
younger packets that have been sent out yet. Due to memory order
requirements, some MemObjects need to maintain the order for packet
(mostly responses) that reference the same cache block.

Prior to this patch the ordering requirements where determined when
the packet was scheduled to be sent. This patch moves the parameter to
the constructor.

Change-Id: Ieb4d94e86bc7514f5036b313ec23ea47dd653164
Signed-off-by: Nikos Nikoleris <nikos.nikoleris@arm.com>
Reviewed-on: https://gem5-review.googlesource.com/c/15555
Reviewed-by: Daniel Carvalho <odanrc@yahoo.com.br>
Reviewed-by: Jason Lowe-Power <jason@lowepower.com>
Maintainer: Jason Lowe-Power <jason@lowepower.com>
src/mem/cache/base.cc
src/mem/cache/cache.cc
src/mem/cache/noncoherent_cache.cc
src/mem/dram_ctrl.cc
src/mem/packet_queue.cc
src/mem/packet_queue.hh
src/mem/qos/mem_sink.cc
src/mem/qport.hh
src/mem/ruby/slicc_interface/AbstractController.cc