The default code has no problem. Trying to find where is the fault in my code. However as I said I have not changed anything about snoop packets. I made some ReadReq packets and send to cache_impl.
Thanks for yout reply. On 1/2/12, Nilay Vaish <[email protected]> wrote: > I don't have much understanding of this piece of code. At a high level, > the function is meant to implement the snooping behavior of cache > controllers. The cache controller is snopping on the bus. 'pkt' is the > packet seen on the bus. In case this controller or any higher controller > has the address (for which this packet is meant), then the controller > will invalidate that address. > > Running without your changes would be a good idea. It seems to me that you > are creating some packet, and it is not being created properly. > > -- > Nilay > > > On Sun, 1 Jan 2012, Mahmood Naderan wrote: > >> currently I have tried bzip2. I have made some changes but but snoop >> packets. I don't think my chnages has impact on snoop packets. It is >> worth to try the default code. Can you please tell what does this >> pieace of code do? >> >> On 1/1/12, Nilay Vaish <[email protected]> wrote: >>> Well, I understood what you wrote in the first email. The question what >>> is >>> it that you are trying to execute that results in this error. What >>> application? Have you made any changes? >>> >>> -- >>> Nilay >>> >>> On Sun, 1 Jan 2012, Mahmood Naderan wrote: >>> >>>> sorry what? while debuging I see these statemnets are executed: >>>> >>>> cpuSidePort->sendTiming(snoopPkt); >>>> delete snoopPkt->senderState; >>>> delete snoopPkt; >>>> >>>> The second "delete" says double free or corruption >>>> >>>> On 1/1/12, Nilay Vaish <[email protected]> wrote: >>>>> What are you trying to execute? >>>>> >>>>> -- >>>>> Nilay >>>>> >>>>> On Sun, 1 Jan 2012, Mahmood Naderan wrote: >>>>> >>>>>> Hi, >>>>>> Consider this statements in cache_impl.hh::handleSnoop() >>>>>> >>>>>> cpuSidePort->sendTiming(snoopPkt); >>>>>> if (snoopPkt->memInhibitAsserted()) { >>>>>> assert(!alreadyResponded); >>>>>> pkt->assertMemInhibit(); >>>>>> } else { >>>>>> delete snoopPkt->senderState; >>>>>> } >>>>>> if (snoopPkt->sharedAsserted()) { >>>>>> pkt->assertShared(); >>>>>> } >>>>>> delete snoopPkt; >>>>>> >>>>>> I have noticed that when >>>>>> delete snoopPkt->senderState; >>>>>> >>>>>> is executed, and then >>>>>> delete snoopPkt; >>>>>> >>>>>> I get this error: >>>>>> >>>>>> *** glibc detected *** /home/mahmood/gem5/build/X86_SE/m5.debug: >>>>>> double free or corruption (fasttop): 0x0000000002a8a640 *** >>>>>> >>>>>> Is it a bug or something else. Can someone verify that? >>>>>> >>>>>> -- >>>>>> // Naderan *Mahmood; >>>>>> _______________________________________________ >>>>>> gem5-users mailing list >>>>>> [email protected] >>>>>> http://m5sim.org/cgi-bin/mailman/listinfo/gem5-users >>>>>> >>>>> _______________________________________________ >>>>> gem5-users mailing list >>>>> [email protected] >>>>> http://m5sim.org/cgi-bin/mailman/listinfo/gem5-users >>>>> >>>> >>>> >>>> -- >>>> -- >>>> // Naderan *Mahmood; >>>> _______________________________________________ >>>> gem5-users mailing list >>>> [email protected] >>>> http://m5sim.org/cgi-bin/mailman/listinfo/gem5-users >>>> >>> _______________________________________________ >>> gem5-users mailing list >>> [email protected] >>> http://m5sim.org/cgi-bin/mailman/listinfo/gem5-users >>> >> >> >> -- >> -- >> // Naderan *Mahmood; >> _______________________________________________ >> gem5-users mailing list >> [email protected] >> http://m5sim.org/cgi-bin/mailman/listinfo/gem5-users >> > _______________________________________________ > gem5-users mailing list > [email protected] > http://m5sim.org/cgi-bin/mailman/listinfo/gem5-users > -- -- // Naderan *Mahmood; _______________________________________________ gem5-users mailing list [email protected] http://m5sim.org/cgi-bin/mailman/listinfo/gem5-users
