Hi Nilay,

Yes, the request pointer being NULL was creating the issue. I also checked
that the problem is arising when dataMemReq is not NULL. So,
cache_req->memReq is not being allocated at all(as you suggested). In the
current issue, I am hitting the first case of setupMemRequest in [ if
(!cache_req->is2ndSplit()) ]. The second case of the setupMemRequest
function is proper, as it updates the cache_req outside the NULL check
clause.
I also moved the cache_req->memReq updation to outside the NULL clause in
the first case. The segfault seems to be resolved at that cycle. I will keep
posted, if I run into some other issues as the run progresses. Any reason
for it being inside the clause and not outside?

Thanks,
Reena


On Mon, May 16, 2011 at 11:43 AM, Nilay Vaish <[email protected]> wrote:

> Reena,
>
> Can you move the assert to doTLBAccess() function and check if
> cache_req->memReq is NULL before translateAtomic is called?
>
> If it is NULL, then check which of the two cases in  setupMemRequest was
> hit?
>
> Korey,
>
> It seems to me that line 399
>
>
>            cache_req->memReq = inst->dataMemReq;
>
> should be out side the if condition on (inst->dataMemReq == NULL)
>
> --
> Nilay
> _______________________________________________
> 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

Reply via email to