Dataspace juju

Daniel Waddington waddy16925 at ...9...
Wed Jul 10 22:18:36 CEST 2013


Sorry. My mistake.
Daniel

On Wed, 2013-07-10 at 22:04 +0200, Christian Prochaska wrote:
> 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
> 
> 
> ------------------------------------------------------------------------------
> 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