mem: Fix cache MSHR conflict determination
authorAndreas Hansson <andreas.hansson@arm.com>
Mon, 2 Mar 2015 09:00:54 +0000 (04:00 -0500)
committerAndreas Hansson <andreas.hansson@arm.com>
Mon, 2 Mar 2015 09:00:54 +0000 (04:00 -0500)
commit88e2963951860966dd850ef874e5fed99fe78b88
tree5c8ebbe7b69ec49ebbd762fd84c5bbf73a864bb3
parent407737614ed2431d75314eba813edfec40e95bcc
mem: Fix cache MSHR conflict determination

This patch fixes a rather subtle issue in the sending of MSHR requests
in the cache, where the logic previously did not check for conflicts
between the MSRH queue and the write queue when requests were not
ready. The correct thing to do is to always check, since not having a
ready MSHR does not guarantee that there is no conflict.

The underlying problem seems to have slipped past due to the symmetric
timings used for the write queue and MSHR queue. However, with the
recent timing changes the bug caused regressions to fail.
src/mem/cache/cache_impl.hh