Hello Norman,
>* Do I need to use the argos-research/genode repository with the
> branch called 'checkpointRestore'?
>
>* Do I need to create a build directory for your customized version
> of the base-foc platform, called 'focnados_pbxa9'?
My testcase is supposed to work with Genode 16.08, Fiasco.OC and pbx-A9
platform. You should be able to test it with vanilla Genode 16.08 in a build
directory foc_pbxa9 with the original Genode 16.08 arm toolchain. Focnados and
the rest of our Rtcr component is not used in this testcase.
Unfortunately we could not rebase the testcase for 17.05 as it is part of my
final thesis, that is based on 16.08 and understanding the changes for 17.05
and changing it would exceed my timely scope.
>* Even though you instruct Qemu to emulate a 4-core machine, the
> Platform::affinity_space method reports a physical affinity space of
> 2x1. Maybe the CPU detection is at fault? Or the kernel indeed
> only sees 2 CPUs? Anyhow, the logical affinity space of 4x1 as defined
> in your init configuration is ultimately mapped to a physical affinity
> space of 2x1, which is certainly not your intention.
In my case an inserted log reports the desired 4 cores from
Platform::affinity_space. The log is located in
<GENODE-DIR>/repos/base-foc/src/core/platform.cc inside
Platform::affinity_space and outputs the variable 'cpus_online'
>* The member variable '_location' is designated for the location of a
> thread within the physical affinity space but it is not used anywhere.
> Instead, the value should somehow end up being specified to a kernel
> operation during the thread creation. Hence, regardless of the
> affinity arguments, they remain without effect.
This is a bit confusing for me. As i understand it following things should
happen in my case:
At child creation i pass a capability for a cpus session as well as a
Child:Initial_thread object that is seeded with the same cpu session. I create
the cpu session by opening a connection to it and passing the desired affinity
with it. Shouldn't this be enough to let the child use this affinity, or did i
miss something there?
I also attached a little image for you that shows how i want the components to
be bound repectively.
First, is it possible to bind different components to fixed different cores
like shown in the image?
Second, is it possible to dynamically spawn a child from within parents (in my
example affinity_test_parent) code on another core?
If my approach of distributing the components to different cores is not
correct, it would be very good for me, if you could tell me how such a
partition has to look as the Genode framework intends it.
Thank you and kind regards,
Stephan Lex
------------------------------------------------------------------------------
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot
_______________________________________________
genode-main mailing list
genode-main@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/genode-main