Writebacks do not have virtual addresses, as only the physical address is available in the cache tag.
Steve On Fri, Apr 17, 2015 at 10:59 AM, Vinayak Bhargav Srinath <[email protected]> wrote: > Hi folks, > > Currently, using a work around to prevent this failure incase there is no > Vaddr in the pkt->req by using a check pkt->req->hasVaddr() before fetching > the Vaddr using getVaddr() . > However I'm still trying to find out what could have caused some requests > into the Caches to not have a Vaddr .. > > > > On Tue, Apr 14, 2015 at 4:54 PM, Vinayak Bhargav Srinath <[email protected] > > > wrote: > > > Hi , > > > > I'm trying to access the Virtual Address of the packets to *handleFill()* > > and *access()* methods using *pkt->req->getVaddr()* > > Seems that some of the packets don't have Virtual Addresses.. If this is > > the case, then how can I access the Virtual address of a particular data > > being written into the cache. > > I just want the Virtual Addresses of data flowing into the dcache (for > > allocating cache blocks). I'm running in syscall emulation mode using the > > benchmark x264. > > > > I think I managed to statically compile x264 without pthreads as it does > > not throw me the static binary required error. > > ---------------------------------------------- > > Here's my run command: > > build/X86/gem5.opt --debug-file=Cache.dbg --debug-flags=Cache > > --outdir=m5out/x264 --redirect-stdout > > --stdout-file=afb_0_n8T_0_cvdd_700.out --redirect-stderr > > --stderr-file=afb_0_n8T_0_cvdd_700.err > > --stats-file=afb_0_n8T_0_cvdd_700.stats ./configs/example/se.py > > --cpu-type=detailed --caches --l2cache --num-cpus=1 --cpu-clock=1GHz > > --l1d_size=32kB --l1i_size=32kB --l1d_assoc=4 --l1i_assoc=4 > --l2_size=256kB > > --l2_assoc=8 --mem-type=LPDDR3_1600_x32 --mem-size=512MB > > --cacheline_size=64 -c /home/srina005/x264-snapshot-20141218-2245/x264 > -o " > > --qp 0 -o m5out/X86_Hybrid_8T_6T_LE_BFE/x264/out.264 > > m5out/x264/input/akiyo_cif.yuv --input-res 352x288" > > > > > > and this is my error message: > > > > 0: system.remote_gdb.listener: listening for remote gdb #0 on port 7020 > > yuv [info]: 352x288p 0:0 @ 25/1 fps (cfr) > > warn: ignoring syscall rt_sigaction(2, ...) > > x264 [info]: using cpu capabilities: none! > > *gem5.opt: build/X86/mem/request.hh:509: Addr Request::getVaddr() const: > > Assertion `privateFlags.isSet(VALID_VADDR)' failed.* > > Program aborted at tick 6230504500 > > ------------------------------------------------ > > > > I tested it on hello world. That seems to work fine.. > > > > -- > > Thanks and Regards, > > *Vinayak Bhargav Srinath* > > *Ph: +1-612-987-9211 <%2B1-612-987-9211>* > > > > > > -- > Thanks and Regards, > *Vinayak Bhargav Srinath* > *Ph: +1-612-987-9211* > _______________________________________________ > gem5-dev mailing list > [email protected] > http://m5sim.org/mailman/listinfo/gem5-dev > _______________________________________________ gem5-dev mailing list [email protected] http://m5sim.org/mailman/listinfo/gem5-dev
