Searched hist:11750 (Results 1 - 2 of 2) sorted by relevance
/gem5/src/mem/ | ||
H A D | packet.cc | diff 12821:3663a543ed2a Fri Jul 13 12:28:00 EDT 2018 Robert Kovacsics <rmk35@cl.cam.ac.uk> mem: Fix off-by-one error in checkFunctional, and simplify it There was an off-by-one error in the isRead() case, as `val_end` and `func_end` pointed to the last byte to write to (not one past the last byte), and thus `*_end - *_start` was not the length of the data to memcpy. This was correct in the case of val_start >= func_start && val_end <= func_end where `overlap_size = size`, but if it were (as the other cases suggest) `overlap_size = val_end - val_start`, then it would also be off by one. Also, the isWrite() case catered for this. I simplified the four ifs into one case which uses min/max (this is how I spotted the inconsistency). Change-Id: Ib5c5da084652e752f6baf1eec56b51b4f0f5c95c Reviewed-on: https://gem5-review.googlesource.com/11750 Reviewed-by: Daniel Carvalho <odanrc@yahoo.com.br> Reviewed-by: Nikos Nikoleris <nikos.nikoleris@arm.com> Maintainer: Nikos Nikoleris <nikos.nikoleris@arm.com> |
/gem5/src/mem/cache/ | ||
H A D | cache.cc | diff 11750:c15cc4d973ea Mon Dec 05 16:48:00 EST 2016 Nikos Nikoleris <nikos.nikoleris@arm.com> mem: Invalidate a blk when servicing the 1st invalidating target Previously an MSHR with one or more invalidating targets would first service all targets in the MSHR TargetList and then invalidate the block. As a result any service snooping targets would lookup in the cache and incorrectly find the block. This patch forces the invalidation to happen when the first invalidating target is encountered. Change-Id: I9df15de24e1d351cd96f5a2c424d9a03d81c2cce Reviewed-by: Andreas Hansson <andreas.hansson@arm.com> |
Completed in 57 milliseconds