Dear huangyongbing

That may true or false.

If you have 32bit machine, you can't allocate physical memory 4096mb  (
http://comments.gmane.org/gmane.comp.emulators.m5.users/4865)
But if you have 64bit machine, you and me have same problems.

During I have debuging, I have find* the astonishing fact* that this problem
happen when I allocate 4,8,16,20GB.
That is, this means* four **multiple.*
*
*
*I have thought that allocation boundary is not allocated properly.
Maybe...*
*
*
Nilay Vaish and all
Please, could you fixed this problems.


And

Dear Nilay

According to your request, I have tried to print the values of arguments in
memcpy().

However,
I couldn't print exact value, but I surely find obj.m_data value is wrong at
some point
It means that is garbage value.

The reason of my thought is that this problem still happen when just print
values (m_data, obj.m_data, RubySystem::getBlockSizeBytes()) before
memcpy().
And this problem happen at point that I write code to print value of
obj.m_data,
the others are ok

Please help me.

Thanks

Junghoon, Lee









*
*
*
*
* *
*
*
2011/6/28 huangyongbing <[email protected]>

> **
> It is the same question as the mail "[gem5-dev] Segmentation 
> fault:UnderSituationPhysicalMemory(range=AddrRange("4096MB") and Ruby
> ". You can find the detailed suituation in this mail.
>
>
> 2011-06-28
> ------------------------------
>   --Yongbing Huang
>
> ------------------------------
> *发件人:* Nilay Vaish
> *发送时间:* 2011-06-28  11:19:01
> *收件人:* gem5 users mailing list
> *抄送:*
> *主题:* Re: [gem5-users] Segmentation fault according to physical
> memory(Directory_Controller)
>   You still have not specified the values that m_data, obj.m_data,
> RubySystem::getBlockSizeBytes() take when passed on to memcpy().
>  --
> Nilay
>  On Tue, 28 Jun 2011, Junghoon wrote:
>  >
> Program received signal SIGSEGV, Segmentation fault.
> 0x00007ffff643ed30 in memcpy () from /lib/libc.so.6
> (gdb) bt
> #0  0x00007ffff643ed30 in memcpy () from /lib/libc.so.6
> #1  0x00000000008fa7a5 in DataBlock::operator= (this=0x82e0a28, obj=...) at
> build/ALPHA_SE/mem/ruby/common/DataBlock.cc:95
> #2  0x0000000000881339 in Directory_Controller::qf_queueMemoryFetchRequest
> (this=0x22485e0, m_tbe_ptr=@0x7fffffffc5e8, addr=...) at
> build/ALPHA_SE/mem/protocol/Directory_Controller.cc:445
> #3  0x00000000008956e1 in Directory_Controller::doTransitionWorker
> (this=0x22485e0, event=Directory_Event_FIRST, state=Directory_State_FIRST,
> next_state=@0x7fffffffcd64, m_tbe_ptr=@0x7fffffffc5e8, addr=...
>  vi  build/ALPHA_SE/mem/ruby/common/DataBlock.cc:95
>  95 :  memcpy(m_data, obj.m_data, RubySystem::getBlockSizeBytes());
>  Is this right???
>  Thanks
> Junghoon, Lee
>  2011. 6. 28. 오전 11:45 Nilay Vaish <[email protected]> 작성:
>  > Arguments for the memcpy() function.
> >
> >
> _______________________________________________
> 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
>
_______________________________________________
gem5-users mailing list
[email protected]
http://m5sim.org/cgi-bin/mailman/listinfo/gem5-users

Reply via email to