changeset 372d3611c693 in /z/repo/gem5
details: http://repo.gem5.org/gem5?cmd=changeset;node=372d3611c693
description:
        kvm: Correctly handle the return value from handleIpr(Read|Write)

        The KVM base class incorrectly assumed that handleIprRead and
        handleIprWrite both return ticks. This is not the case, instead they
        return cycles. This changeset converts the returned cycles to ticks
        when handling IPR accesses.

diffstat:

 src/cpu/kvm/base.cc |  8 ++++----
 1 files changed, 4 insertions(+), 4 deletions(-)

diffs (18 lines):

diff -r 638e865d70c6 -r 372d3611c693 src/cpu/kvm/base.cc
--- a/src/cpu/kvm/base.cc       Thu Sep 19 17:55:03 2013 +0200
+++ b/src/cpu/kvm/base.cc       Thu Sep 19 17:55:04 2013 +0200
@@ -969,10 +969,10 @@
     pkt.dataStatic(data);
 
     if (mmio_req.isMmappedIpr()) {
-        if (write)
-            return TheISA::handleIprWrite(tc, &pkt);
-        else
-            return TheISA::handleIprRead(tc, &pkt);
+        const Cycles ipr_delay(write ?
+                             TheISA::handleIprWrite(tc, &pkt) :
+                             TheISA::handleIprRead(tc, &pkt));
+        return clockEdge(ipr_delay);
     } else {
         return dataPort.sendAtomic(&pkt);
     }
_______________________________________________
gem5-dev mailing list
[email protected]
http://m5sim.org/mailman/listinfo/gem5-dev

Reply via email to