Dataspace juju

Christian Prochaska christian.prochaska at ...1...
Wed Jul 10 22:04:24 CEST 2013


Hi Daniel,

TOTAL_MEMORY_TO_USED was only used to calculate REGION_SIZE, but the RAM dataspace size is still set to GB(1).

When increasing the RAM dataspace size to 2G, I'm getting the error

We ran out of physical memory while allocating - bytes
[init -> core-api-1] Assertion failed:ram.alloc() failed

but not the page faults.

Christian

On 10.07.2013 21:52, Daniel Waddington wrote:
> Hi Christian,
> But this is 2GB which even rounded up to 128M is 1920MB??  The RAM
> dataspace should be plenty big enough.
>
> Daniel
>
> On Wed, 2013-07-10 at 20:26 +0200, Christian Prochaska wrote:
>> Hi Daniel,
>>
>> On 10.07.2013 16:48, Daniel Waddington wrote:
>>> Hi Alex,
>>> I see, so there is some 2^N round up.  Why is this, I thought it used an
>>> AVL tree to manage memory?
>> >From my understanding it's a mapping optimization for some kernels. Something like: mapping 64M to another task can be done with one
>> syscall if the address has 64M alignment. But I'm not familiar with the details, perhaps somebody else can help out here?
>>
>>> Also, can you run the test with..
>>>
>>> #define NUM_REGIONS 15
>>> #define TOTAL_MEMORY_TO_USE GB(2)
>>> #define REGION_SIZE MB(96)
>>>
>>> I then get unhandled page faults.  Can you see why?
>>>
>>> Thanks
>>> Daniel
>>>
>> When only changing these values, the RAM dataspace is too small (phys_slab_size = GB(1)) for 15 regions of 96M. Usually, it would be
>> an error if 'Ram_session::attach()' gets called with an 'offset' which exceeds the size of the dataspace (which happens in this
>> case), but if I remember correctly there was a use case where this was valid. Something with ELF images and the dynamic linker.
>> @ssumpf, do you remember? We should probably document this in 'Rm_session_component::attach()', why no exception gets thrown if
>> 'size' is given and (offset >= dsc()->size()).
>>
>> Christian
>>
>>
>> ------------------------------------------------------------------------------
>> See everything from the browser to the database with AppDynamics
>> Get end-to-end visibility with application monitoring from AppDynamics
>> Isolate bottlenecks and diagnose root cause in seconds.
>> Start your free trial of AppDynamics Pro today!
>> http://pubads.g.doubleclick.net/gampad/clk?id=48808831&iu=/4140/ostg.clktrk
>> _______________________________________________
>> Genode-main mailing list
>> Genode-main at lists.sourceforge.net
>> https://lists.sourceforge.net/lists/listinfo/genode-main
>
>
> ------------------------------------------------------------------------------
> See everything from the browser to the database with AppDynamics
> Get end-to-end visibility with application monitoring from AppDynamics
> Isolate bottlenecks and diagnose root cause in seconds.
> Start your free trial of AppDynamics Pro today!
> http://pubads.g.doubleclick.net/gampad/clk?id=48808831&iu=/4140/ostg.clktrk
> _______________________________________________
> Genode-main mailing list
> Genode-main at lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/genode-main





More information about the users mailing list