Nice catch.  Ali, do you know what the effect of this bug is?  What
happens when you try to sendTiming on the same packet twice?

  Nate

On Mon, Aug 25, 2008 at 2:24 PM, Ali Saidi <[EMAIL PROTECTED]> wrote:
> You're right, it's a bug. I'll commit it. Is Clint Smullen <[EMAIL PROTECTED]
>  > ok for the change log?
>
>
> Thanks,
> Ali
>
> On Aug 25, 2008, at 5:18 PM, Clint Smullen wrote:
>
>> While looking at traces, I discovered some odd behavior with the DMA
>> ports. After successfully sending a packet, it keeps trying to send
>> it. I determined that the problem is that even though the DmaPort
>> pops the packet off the queue, it does not get the new front. This
>> does not typically cause a problem, because the attempt to send the
>> packet a second time will always fail, but it doesn't change the
>> fact that it is a bug. It is present from 2.0b5 to the latest
>> unstable. I have included a simple patch below.
>>
>>    - Clint Smullen
>>
>> --- io_device.cc  2008-08-25 16:05:51.321310000 -0400
>> +++ io_device.cc  2008-08-25 17:12:14.139920000 -0400
>> @@ -190,9 +190,9 @@
>>  DmaPort::recvRetry()
>>  {
>>      assert(transmitList.size());
>> -    PacketPtr pkt = transmitList.front();
>>      bool result = true;
>>      do {
>> +        PacketPtr pkt = transmitList.front();
>>          DPRINTF(DMA, "Retry on %s addr %#x\n",
>>                  pkt->cmdString(), pkt->getAddr());
>>          result = sendTiming(pkt);
>> _______________________________________________
>> m5-dev mailing list
>> [email protected]
>> http://m5sim.org/mailman/listinfo/m5-dev
>
> _______________________________________________
> m5-dev mailing list
> [email protected]
> http://m5sim.org/mailman/listinfo/m5-dev
>
>
_______________________________________________
m5-dev mailing list
[email protected]
http://m5sim.org/mailman/listinfo/m5-dev

Reply via email to