On 8/3/2023 11:56 AM, Khan Shaikhul Hadi wrote:
I'm not sure about silent suppression as that flush instruction is called write after write happens to that memory. Fault should arise when a write request is issued. .

This would happen during address translation, which comes before putting
something in the write queue, I believe.  So my scenario is still plausible,
though I do not claim it is right.

Also I checked the packet received in the cpu side port and it receives multiple CacheMaintenance  ( CacheClean) requests ( equivalent number of times workload executes clflushopt instruction). So, I'm assuming gem5 handles clflushopt instruction somehow, I just could not track how they are  doing it without placing it in the store queue as it will be difficult to simulate the following fence without this.

To get at various things like this, I like to use the Undo Debugger (udb).
It's a commercially available time travel debugger, but you can get a free
trial and they're also willing to give a free license for academic use.
You can find a place where the cache maintenance packet is issued and
work backwards from there, possibly going an event at a time to find each
prior stage of handling.

Best wishes - Eliot Moss
_______________________________________________
gem5-users mailing list -- gem5-users@gem5.org
To unsubscribe send an email to gem5-users-le...@gem5.org

Reply via email to