Merge zizzer:/bk/newmem
into zeep.pool:/z/saidi/work/m5.newmem --HG-- extra : convert_revision : ebd55fc18b09821712f73867c93bd3d888e7788c
This commit is contained in:
commit
4d8ea8dc47
1 changed files with 14 additions and 10 deletions
|
@ -143,15 +143,19 @@ void
|
|||
DmaPort::recvRetry()
|
||||
{
|
||||
Packet* pkt = transmitList.front();
|
||||
DPRINTF(DMA, "Retry on Packet %#x with senderState: %#x\n",
|
||||
pkt, pkt->senderState);
|
||||
if (sendTiming(pkt)) {
|
||||
DPRINTF(DMA, "-- Done\n");
|
||||
transmitList.pop_front();
|
||||
pendingCount--;
|
||||
assert(pendingCount >= 0);
|
||||
} else {
|
||||
DPRINTF(DMA, "-- Failed, queued\n");
|
||||
bool result = true;
|
||||
while (result && transmitList.size()) {
|
||||
DPRINTF(DMA, "Retry on Packet %#x with senderState: %#x\n",
|
||||
pkt, pkt->senderState);
|
||||
result = sendTiming(pkt);
|
||||
if (result) {
|
||||
DPRINTF(DMA, "-- Done\n");
|
||||
transmitList.pop_front();
|
||||
pendingCount--;
|
||||
assert(pendingCount >= 0);
|
||||
} else {
|
||||
DPRINTF(DMA, "-- Failed, queued\n");
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -198,7 +202,7 @@ DmaPort::sendDma(Packet *pkt)
|
|||
if (state == Timing) { */
|
||||
DPRINTF(DMA, "Attempting to send Packet %#x with senderState: %#x\n",
|
||||
pkt, pkt->senderState);
|
||||
if (!sendTiming(pkt)) {
|
||||
if (transmitList.size() || !sendTiming(pkt)) {
|
||||
transmitList.push_back(pkt);
|
||||
DPRINTF(DMA, "-- Failed: queued\n");
|
||||
} else {
|
||||
|
|
Loading…
Reference in a new issue