Experimenting the vm-tz example on the Freescale i.mx6 SDB
Mahdi Aichouch
foxmehdi at gmail.com
Fri Apr 17 11:09:19 CEST 2015
Hello Adam,
Applying the change you suggested produce the following compilation errors:
Tell me what do you think.
Best Regards,
Mahdi
"make
srcdir=/home/aichouch/dev/l4re-snapshot-2014092821/src/kernel/fiasco/src
objbase=/home/aichouch/dev/l4re-snapshot-2014092821/obj/fiasco/arm-mp-rv-a9-vexpress
-f
/home/aichouch/dev/l4re-snapshot-2014092821/src/kernel/fiasco/src/Makefile.sub1
make[1]: Entering directory
`/home/aichouch/dev/l4re-snapshot-2014092821/obj/fiasco/arm-mp-rv-a9-vexpress'
Checking compiler config... unchanged.
... Preprocessing thread
make[1]: Leaving directory
`/home/aichouch/dev/l4re-snapshot-2014092821/obj/fiasco/arm-mp-rv-a9-vexpress'
make
srcdir=/home/aichouch/dev/l4re-snapshot-2014092821/src/kernel/fiasco/src
objbase=/home/aichouch/dev/l4re-snapshot-2014092821/obj/fiasco/arm-mp-rv-a9-vexpress
-f
/home/aichouch/dev/l4re-snapshot-2014092821/src/kernel/fiasco/src/Makefile.sub2
all
make[1]: Entering directory
`/home/aichouch/dev/l4re-snapshot-2014092821/obj/fiasco/arm-mp-rv-a9-vexpress'
... Generating version information
... Making kip.o
... Making kip-debug.o
... Making kip-arm.o
==> Archiving into libabi.a
... Making startup.o
... Making startup-arm.o
... Making vlog.o
... Making kobject_helper.o
... Making icu_helper.o
... Making factory.o
... Making thread.o
In file included from
/home/aichouch/dev/l4re-snapshot-2014092821/src/kernel/fiasco/src/kern/context.cpp:9:0,
from
/home/aichouch/dev/l4re-snapshot-2014092821/src/kernel/fiasco/src/kern/switch_lock.cpp:85,
from
/home/aichouch/dev/l4re-snapshot-2014092821/src/kernel/fiasco/src/kern/helping_lock.cpp:4,
from
/home/aichouch/dev/l4re-snapshot-2014092821/src/kernel/fiasco/src/kern/thread.cpp:6,
from auto/thread.cc:3:
/home/aichouch/dev/l4re-snapshot-2014092821/src/kernel/fiasco/src/kern/arm/thread-arm-hyp.cpp:
In member function 'void Arm_ppi_virt::alloc()':
/home/aichouch/dev/l4re-snapshot-2014092821/src/kernel/fiasco/src/kern/arm/thread-arm-hyp.cpp:217:12:
error: 'Irq_mgr' has not been declared
check (Irq_mgr::mgr->alloc(this, _irq));
^
/home/aichouch/dev/l4re-snapshot-2014092821/src/kernel/fiasco/src/kern/globals.cpp:23:20:
note: in definition of macro 'check'
((void)((expression) ? 0 : \
^
/home/aichouch/dev/l4re-snapshot-2014092821/src/kernel/fiasco/src/kern/arm/thread-arm-hyp.cpp:
In member function 'void Arm_vtimer_ppi::alloc()':
/home/aichouch/dev/l4re-snapshot-2014092821/src/kernel/fiasco/src/kern/arm/thread-arm-hyp.cpp:248:12:
error: 'Irq_mgr' has not been declared
check (Irq_mgr::mgr->alloc(this, _irq));
^
/home/aichouch/dev/l4re-snapshot-2014092821/src/kernel/fiasco/src/kern/globals.cpp:23:20:
note: in definition of macro 'check'
((void)((expression) ? 0 : \
^
In file included from auto/thread.cc:4:0:
/home/aichouch/dev/l4re-snapshot-2014092821/src/kernel/fiasco/src/kern/arm/thread-arm-hyp.cpp:
In member function 'void Arm_ppi_virt::handle(const Upstream_irq*)':
/home/aichouch/dev/l4re-snapshot-2014092821/src/kernel/fiasco/src/kern/arm/thread-arm-hyp.cpp:232:21:
error: 'class Thread' has no member named 'vcpu_vgic_upcall'
current_thread()->vcpu_vgic_upcall(_virq);
^
In file included from auto/thread.cc:4:0:
/home/aichouch/dev/l4re-snapshot-2014092821/src/kernel/fiasco/src/kern/arm/thread-arm-hyp.cpp:
In member function 'void Arm_vtimer_ppi::handle(const Upstream_irq*)':
/home/aichouch/dev/l4re-snapshot-2014092821/src/kernel/fiasco/src/kern/arm/thread-arm-hyp.cpp:265:21:
error: 'class Thread' has no member named 'vcpu_vgic_upcall'
current_thread()->vcpu_vgic_upcall(1);
^
make[1]: *** [thread.o] Error 1
make[1]: Leaving directory
`/home/aichouch/dev/l4re-snapshot-2014092821/obj/fiasco/arm-mp-rv-a9-vexpress'
make: *** [all] Error 2
On Mon, Apr 13, 2015 at 11:02 AM, Mahdi Aichouch <foxmehdi at gmail.com> wrote:
> Hello Adam,
>
> Please find below the error code returned by the
> "l4_error(me->vcpu_control_ext((l4_addr_t)vcpu))" function:
> Thank you very much for you help.
>
> Best Regards,
>
> Mahdi
>
> Welcome to Fiasco.OC (arm)!
> L4/Fiasco.OC arm microkernel (C) 1998-2013 TU Dresden
> Rev: rexported compiled with gcc 4.8.3 for i.MX6 []
> Build: #4 Tue Mar 17 14:55:01 CET 2015
>
> GIC: Switching IRQ 29 to secure
> Calibrating timer loop... done.
> MDB: use page size: 20
> MDB: use page size: 12
> SIGMA0: Hello!
> KIP @ 10002000
> allocated 4KB for maintenance structures
> SIGMA0: Dump of all resource maps
> RAM:------------------------
> [4:10000000;10000fff]
> [0:10067000;1008ffff]
> [0:10097000;10097fff]
> [0:1009f000;1013ffff]
> [4:10140000;10171fff]
> [0:10172000;10177fff]
> [4:10178000;10193fff]
> [0:10194000;110fffff]
> [4:11100000;11e8dfff]
> [0:11e8e000;1effffff]
> IOMEM:----------------------
> [0:0;fffffff]
> [0:20000000;ffffffff]
> MOE: Hello world
> MOE: found 231100 KByte free memory
> MOE: found RAM from 10000000 to 1f000000
> MOE: allocated 240 KByte for the page array @0x1009f000
> MOE: virtual user address space [0-bfffffff]
> MOE: rom name space cap -> [C:501000]
> BOOTFS: [11100000-11119474] [C:503000] l4re
> BOOTFS: [1111a000-1116cc20] [C:504000] ned
> BOOTFS: [1116d000-112c3470] [C:505000] io
> BOOTFS: [112c4000-112dd65c] [C:506000] vm-tz
> BOOTFS: [112de000-1168df8c] [C:507000] vm-linux-image-tz
> BOOTFS: [1168e000-11e8e000] [C:508000] linux-initrd
> MOE: cmdline: moe --init=rom/vm-tz
> MOE: Starting: rom/vm-tz
> MOE: loading 'rom/vm-tz'
> Vmm started
> setup linux ok...
> vcp_control_ext returns -38
> MOE: task 270000679 exited with 1
>
>
>
>
>
>
> On Fri, Apr 10, 2015 at 5:26 PM, Mahdi Aichouch <foxmehdi at gmail.com>
> wrote:
>
>> Hello Adam,
>>
>> I reduced the RAM_SIZE_MB to 256MB and it worked great! Thank you very
>> much!
>>
>> However, the execution went well until the call
>> to L4Re::chksys(me->vcpu_control_ext((l4_addr_t)vcpu));
>> which generates the following error:
>>
>> terminate called after throwing an instance of 'N2L413Runtime_errorE'
>>
>> Do you have any idea of what might be wrong.
>> I attached the whole debug messages to this mail.
>>
>> Many thanks in advance.
>>
>> Best Regards,
>> Mahdi
>>
>>
>> On Wed, Apr 8, 2015 at 2:13 PM, Mahdi Aichouch <foxmehdi at gmail.com>
>> wrote:
>>
>>> Hello Adam,
>>>
>>> Thank you very much for your answer and explanation.
>>>
>>> The call to "l4sigma0_map_iomem(sigma0_cap.cap(), Ram_base, Ram_base,
>>> ram_size, 1)"
>>> failed at the first page that it tries to map.
>>>
>>> I activated the debug flags in pkg/sigma0/server/src/globals.h.
>>>
>>> And I get the debug messages include in the attached file. But based on
>>> the debug messages
>>> it is difficult to interpret what might be wrong.
>>> Could you please take a look at the logs in the attached file and tell
>>> me what do you think.
>>>
>>> Thank you again for your help.
>>>
>>> Best Regards,
>>>
>>> Mahdi
>>>
>>>
>>>
>>>
>>>
>>>
>>>
>>>
>>>
>>>
>>>
>>>
>>>
>>>
>>>
>>>
>>> On Wed, Apr 1, 2015 at 11:36 AM, Mahdi Aichouch <foxmehdi at gmail.com>
>>> wrote:
>>>
>>>> Hello Adam,
>>>>
>>>> I tried to do as you suggested, and I added a loop in order to map a
>>>> small chunk of memory at time.
>>>>
>>>> When I tried to map 1 KB at a time and 2 KB at a time, I received this
>>>> error from the first call to
>>>> l4sigma0_map_iomem ( ) function:
>>>>
>>>> ...
>>>> Vmm started
>>>> j = 0 addr = 0x0
>>>> Cannot map nonsecure memory Phys, virt or size not aligned
>>>> ...
>>>>
>>>> Then, I tried to add 4KB at a time, and I received the same error as
>>>> before at the first call to
>>>> the l4sigma0_map_iomem ( ) function, that is:
>>>>
>>>> ...
>>>> Vmm started
>>>> j = 0 addr = 0x0
>>>> Cannot map nonsecure memory No fpage received
>>>> ...
>>>>
>>>>
>>>> I also tried with 4 KB, 8 KB, 16 KB, 32 KB,...
>>>> I get the same error: "No fpage received"
>>>>
>>>>
>>>> This is the code of the loop that I added:
>>>>
>>>> int ram_size = 0x1000; //4 KB
>>>>
>>>>
>>>> int address = 0x0;
>>>> int j;
>>>> for(j = 0; j < 256; j++) {
>>>> fault = l4sigma0_map_iomem(sigma0_cap.cap(), Ram_base, Ram_base,
>>>> ram_size, 1);
>>>> printf("j = %d addr = 0x%x\n", j, address);
>>>> address += ram_size;
>>>> if (fault) {
>>>> printf("Cannot map nonsecure memory %s\n",
>>>> l4sigma0_map_errstr(fault));
>>>> exit(1);
>>>> }
>>>> }
>>>>
>>>>
>>>> Could you please tell me what else should I check to track down the
>>>> source of the error.
>>>> Thank you very much in advance.
>>>>
>>>> Kindest regards,
>>>>
>>>> Mahdi
>>>>
>>>> PS: I attached the main.cc file of my vm-tz example.
>>>>
>>>>
>>>>
>>>>
>>>>
>>>>
>>>>
>>>>
>>>> On Wed, Mar 25, 2015 at 10:19 AM, Mahdi Aichouch <foxmehdi at gmail.com>
>>>> wrote:
>>>>
>>>>> Hello Adam,
>>>>>
>>>>> Thank you again for your answer.
>>>>>
>>>>> Please find below the execution's log from the start of L4 kernel
>>>>> until the stop of the vm-tz test:
>>>>>
>>>>> L4 Bootstrapper
>>>>> Build: #21 Tue Mar 17 15:28:32 CET 2015, 4.8.3 20140320 (prerelease)
>>>>> Scanning up to 1024 MB RAM, starting at offset 32MB
>>>>> Memory size is 1024MB (10000000 - 4fffffff)
>>>>> RAM: 0000000010000000 - 000000004fffffff: 1048576kB
>>>>> Total RAM: 1024MB
>>>>> Scanning fiasco
>>>>> Scanning sigma0
>>>>> Scanning moe
>>>>> Moving up to 5 modules behind 11100000
>>>>> moving module 02 { 110a6000-110df63f } -> { 11196000-111cf63f }
>>>>> [235072]
>>>>> moving module 01 { 1109c000-110a538b } -> { 1118c000-1119538b }
>>>>> [37772]
>>>>> moving module 00 { 11044000-1109bb17 } -> { 11134000-1118bb17 }
>>>>> [359192]
>>>>> moving module 04 { 1102a000-1104365b } -> { 1111a000-1113365b }
>>>>> [104028]
>>>>> moving module 03 { 11010000-11029473 } -> { 11100000-11119473 }
>>>>> [103540]
>>>>> Loading fiasco
>>>>> Loading sigma0
>>>>> Loading moe
>>>>> find kernel info page...
>>>>> found kernel info page at 0x10002000
>>>>> Regions of list 'regions'
>>>>> [ 10000000, 100000e3] { e4} Root mbi_rt
>>>>> [ 10001000, 10001aff] { b00} Kern fiasco
>>>>> [ 10002000, 10066fff] { 65000} Kern fiasco
>>>>> [ 10090000, 10096edf] { 6ee0} Sigma0 sigma0
>>>>> [ 10098000, 1009e177] { 6178} Sigma0 sigma0
>>>>> [ 10140000, 10171d77] { 31d78} Root moe
>>>>> [ 10178000, 101934ab] { 1b4ac} Root moe
>>>>> [ 11000000, 1100f4ff] { f500} Boot bootstrap
>>>>> [ 11100000, 11133fff] { 34000} Root Module
>>>>> API Version: (87) experimental
>>>>> Sigma0 config ip:10090100 sp:00000000
>>>>> Roottask config ip:10140260 sp:00000000
>>>>> Starting kernel fiasco at 100012c8
>>>>> Number of IRQs available at this GIC: 160
>>>>> FPU0: Arch: VFPv3(3), Part: VFPv3(30), r: 4, v: 9, i: 41, t: hard, p:
>>>>> dbl/sngl
>>>>> L2: ID=410000c7 Type=9e340340 Aux=02070000 WMask=ffff S=0
>>>>> L2: Type L2C-310 Size = 1024kB Ways=16 Waysize=64
>>>>> GIC: Switching IRQ 58 to secure
>>>>> SERIAL ESC: allocated IRQ 58 for serial uart
>>>>> Not using serial hack in slow timer handler.
>>>>> Welcome to Fiasco.OC (arm)!
>>>>> L4/Fiasco.OC arm microkernel (C) 1998-2013 TU Dresden
>>>>> Rev: rexported compiled with gcc 4.8.3 for i.MX6 []
>>>>> Build: #4 Tue Mar 17 14:55:01 CET 2015
>>>>>
>>>>> GIC: Switching IRQ 29 to secure
>>>>> Calibrating timer loop... done.
>>>>> MDB: use page size: 20
>>>>> MDB: use page size: 12
>>>>> SIGMA0: Hello!
>>>>> KIP @ 10002000
>>>>> allocated 4KB for maintenance structures
>>>>> SIGMA0: Dump of all resource maps
>>>>> RAM:------------------------
>>>>> [4:10000000;10000fff]
>>>>> [0:10067000;1008ffff]
>>>>> [0:10097000;10097fff]
>>>>> [0:1009f000;1013ffff]
>>>>> [4:10140000;10171fff]
>>>>> [0:10172000;10177fff]
>>>>> [4:10178000;10193fff]
>>>>> [0:10194000;110fffff]
>>>>> [4:11100000;11133fff]
>>>>> [0:11134000;4effffff]
>>>>> IOMEM:----------------------
>>>>> [0:0;fffffff]
>>>>> [0:50000000;ffffffff]
>>>>> MOE: Hello world
>>>>> MOE: found 1031204 KByte free memory
>>>>> MOE: found RAM from 10000000 to 4f000000
>>>>> MOE: allocated 1008 KByte for the page array @0x10194000
>>>>> MOE: virtual user address space [0-bfffffff]
>>>>> MOE: rom name space cap -> [C:501000]
>>>>> BOOTFS: [11100000-11119474] [C:503000] l4re
>>>>> BOOTFS: [1111a000-1113365c] [C:504000] vm-tz
>>>>> MOE: cmdline: moe --init=rom/vm-tz
>>>>> MOE: Starting: rom/vm-tz
>>>>> MOE: loading 'rom/vm-tz'
>>>>> Vmm started
>>>>> Cannot map nonsecure memory No fpage received
>>>>> MOE: task 270000679 exited with 1
>>>>>
>>>>>
>>>>>
>>>>> Kindest regards,
>>>>>
>>>>> Mahdi
>>>>>
>>>>>
>>>>> On Mon, Mar 23, 2015 at 11:33 AM, Mahdi Aichouch <foxmehdi at gmail.com>
>>>>> wrote:
>>>>>
>>>>>> Hello Adam,
>>>>>>
>>>>>> Thank you very much for your answer!
>>>>>>
>>>>>> I configured the Ram_base to 0x20000000 for the normal-world OS and
>>>>>> the Ram_size to
>>>>>> 0x10000000 (256 MB).
>>>>>>
>>>>>> The secure world OS is loaded at 0x10000000 according to the link
>>>>>> address of fiasco
>>>>>> kernel on the i.mx6, and has 256 MB of Ram.
>>>>>>
>>>>>> When I start the vm-tz example, the reserve_area( ) method is
>>>>>> executed successfully,
>>>>>>
>>>>>> ...
>>>>>>
>>>>>> l4_addr_t v = Ram_base;
>>>>>> L4Re::chksys(env->rm()->reserve_area(&v, Ram_size,
>>>>>> L4Re::Rm::Reserved));
>>>>>>
>>>>>> fault = l4sigma0_map_iomem(sigma0_cap.cap(), Ram_base, Ram_base,
>>>>>> Ram_size, 1);
>>>>>> if (fault) {
>>>>>> printf("Cannot map nonsecure memory: %s\n",
>>>>>> l4sigma0_map_errstr(fault));
>>>>>> exit(1);
>>>>>> }
>>>>>>
>>>>>> ...
>>>>>>
>>>>>> but the l4sigma0_map_iomem( ) returns an error:
>>>>>>
>>>>>> ...
>>>>>> Vmm started
>>>>>> Cannot map nonsecure memory No fpage received
>>>>>> MOE: task 270000679 exited with 1
>>>>>>
>>>>>> Then the programs stops executing, the setup_linux(vmstate) function
>>>>>> is not
>>>>>> executed, and the ATAG data structure is not copied.
>>>>>>
>>>>>> Do you have an idea of what might cause this fault.
>>>>>>
>>>>>> Thank you very much in advance.
>>>>>>
>>>>>> Best regars,
>>>>>> Mahdi
>>>>>>
>>>>>>
>>>>>>
>>>>>> On Fri, Mar 20, 2015 at 9:48 AM, Mahdi Aichouch <foxmehdi at gmail.com>
>>>>>> wrote:
>>>>>>
>>>>>>> Hello,
>>>>>>>
>>>>>>> I am trying to test the "vm-tz", and I created a new entry in the
>>>>>>> "/src/l4/conf/modules.list".
>>>>>>>
>>>>>>> entry tz_vm
>>>>>>> roottask moe --init=rom/vm-tz
>>>>>>> module l4re
>>>>>>> module vm-tz
>>>>>>>
>>>>>>> Is my entry correct? Or there is some missing modules?
>>>>>>> How to know what modules should be included?
>>>>>>>
>>>>>>> Does someone has a successful running configuration.
>>>>>>> Is it possible to share with us a working configuration.
>>>>>>>
>>>>>>> Thank you very much in advance.
>>>>>>>
>>>>>>> Best regards,
>>>>>>>
>>>>>>> Mahdi
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> On Tue, Mar 17, 2015 at 4:39 PM, Mahdi Aichouch <foxmehdi at gmail.com>
>>>>>>> wrote:
>>>>>>>
>>>>>>>> Hello,
>>>>>>>>
>>>>>>>> I was able to correct the error related to the creation of the VM,
>>>>>>>> by recompiling the fiasco kernel using
>>>>>>>> the "trustzone secure side" as an Execution Model option instead of
>>>>>>>> the "Standard Mode".
>>>>>>>>
>>>>>>>> Now the code goes further and it stops at
>>>>>>>>
>>>>>>>> l4sigma0_map_iomem(sigma0_cap.cap(), Ram_base, Ram_base, Ram_size,
>>>>>>>> 1);
>>>>>>>>
>>>>>>>> which return the following error:
>>>>>>>>
>>>>>>>> MOE: Hello world
>>>>>>>> MOE: found 1031204 KByte free memory
>>>>>>>> MOE: found RAM from 10000000 to 4f000000
>>>>>>>> MOE: allocated 1008 KByte for the page array @0x10194000
>>>>>>>> MOE: virtual user address space [0-bfffffff]
>>>>>>>> MOE: rom name space cap -> [C:501000]
>>>>>>>> BOOTFS: [11100000-11119474] [C:503000] l4re
>>>>>>>> BOOTFS: [1111a000-1113365c] [C:504000] vm-tz
>>>>>>>> MOE: cmdline: moe --init=rom/vm-tz
>>>>>>>> MOE: Starting: rom/vm-tz
>>>>>>>> MOE: loading 'rom/vm-tz'
>>>>>>>> Vmm started
>>>>>>>> Cannot map nonsecure memory No fpage received
>>>>>>>>
>>>>>>>> I used the same memory parameters of the example, that is,
>>>>>>>> the RAM base of the non secure world is 0x20000000, and
>>>>>>>> the RAM size is 0x00100000.
>>>>>>>>
>>>>>>>> Could someone help me to correct this.
>>>>>>>>
>>>>>>>> Thank you very much in advance.
>>>>>>>>
>>>>>>>> Best regards,
>>>>>>>> Mahdi
>>>>>>>>
>>>>>>>>
>>>>>>>> On Tue, Mar 17, 2015 at 2:46 PM, Mahdi Aichouch <foxmehdi at gmail.com
>>>>>>>> > wrote:
>>>>>>>>
>>>>>>>>> Hello,
>>>>>>>>>
>>>>>>>>> I am trying to experiment the "vm-tz" example on the Freescale
>>>>>>>>> i.mx6 SDB board.
>>>>>>>>>
>>>>>>>>> At first, my goal is to understand the example, thus I am
>>>>>>>>> interested in running
>>>>>>>>> a simple test kernel instead of a full linux kernel.
>>>>>>>>>
>>>>>>>>> Specifically, I am trying to reproduce the experimentation of the
>>>>>>>>> article related to the trustzone
>>>>>>>>> implementation on Fiasco.OC L4re, "ARM Trustzone as a
>>>>>>>>> Virtualization Technique in Embedded Systems".
>>>>>>>>> In particular, it is mentioned in the article at the
>>>>>>>>> "Implementation" paragraph that "Multiplexing two or more OS is supported
>>>>>>>>> by our design."
>>>>>>>>> I would like to investigate this point.
>>>>>>>>>
>>>>>>>>> I created a new entry to generate the vm-tz binary.
>>>>>>>>> I added the following entry to the "src/l4/conf/modules.list" file
>>>>>>>>> :
>>>>>>>>>
>>>>>>>>> entry tz_vm
>>>>>>>>> roottask moe --init=rom/vm-tz
>>>>>>>>> module l4re
>>>>>>>>> module vm-tz
>>>>>>>>>
>>>>>>>>> Is my configuration entry correct, is there any missing modules
>>>>>>>>> that are required by the example?
>>>>>>>>>
>>>>>>>>> I tested the binary on the board using tftp, and I obtained the
>>>>>>>>> following results:
>>>>>>>>>
>>>>>>>>> L4 Bootstrapper
>>>>>>>>> Build: #12 Tue Mar 17 12:10:02 CET 2015, 4.8.3 20140320
>>>>>>>>> (prerelease)
>>>>>>>>> Scanning up to 1024 MB RAM, starting at offset 32MB
>>>>>>>>> Memory size is 1024MB (10000000 - 4fffffff)
>>>>>>>>> RAM: 0000000010000000 - 000000004fffffff: 1048576kB
>>>>>>>>> Total RAM: 1024MB
>>>>>>>>> Scanning fiasco
>>>>>>>>> Scanning sigma0
>>>>>>>>> Scanning moe
>>>>>>>>> Moving up to 5 modules behind 11100000
>>>>>>>>> moving module 02 { 110a5000-110de63f } -> { 11195000-111ce63f }
>>>>>>>>> [235072]
>>>>>>>>> moving module 01 { 1109b000-110a438b } -> { 1118b000-1119438b }
>>>>>>>>> [37772]
>>>>>>>>> moving module 00 { 11044000-1109a0c7 } -> { 11134000-1118a0c7 }
>>>>>>>>> [352456]
>>>>>>>>> moving module 04 { 1102a000-11043597 } -> { 1111a000-11133597 }
>>>>>>>>> [103832]
>>>>>>>>> moving module 03 { 11010000-11029473 } -> { 11100000-11119473 }
>>>>>>>>> [103540]
>>>>>>>>> Loading fiasco
>>>>>>>>> Loading sigma0
>>>>>>>>> Loading moe
>>>>>>>>> find kernel info page...
>>>>>>>>> found kernel info page at 0x10002000
>>>>>>>>> Regions of list 'regions'
>>>>>>>>> [ 10000000, 100000e3] { e4} Root mbi_rt
>>>>>>>>> [ 10001000, 10001aff] { b00} Kern fiasco
>>>>>>>>> [ 10002000, 10062fff] { 61000} Kern fiasco
>>>>>>>>> [ 10090000, 10096edf] { 6ee0} Sigma0 sigma0
>>>>>>>>> [ 10098000, 1009e177] { 6178} Sigma0 sigma0
>>>>>>>>> [ 10140000, 10171d77] { 31d78} Root moe
>>>>>>>>> [ 10178000, 101934ab] { 1b4ac} Root moe
>>>>>>>>> [ 11000000, 1100f4ff] { f500} Boot bootstrap
>>>>>>>>> [ 11100000, 11133fff] { 34000} Root Module
>>>>>>>>> API Version: (87) experimental
>>>>>>>>> Sigma0 config ip:10090100 sp:00000000
>>>>>>>>> Roottask config ip:10140260 sp:00000000
>>>>>>>>> Starting kernel fiasco at 100012c8
>>>>>>>>> Number of IRQs available at this GIC: 160
>>>>>>>>> FPU0: Arch: VFPv3(3), Part: VFPv3(30), r: 4, v: 9, i: 41, t: hard,
>>>>>>>>> p: dbl/sngl
>>>>>>>>> L2: ID=410000c7 Type=9e340340 Aux=02070000 WMask=ffff S=0
>>>>>>>>> L2: Type L2C-310 Size = 1024kB Ways=16 Waysize=64
>>>>>>>>> SERIAL ESC: allocated IRQ 58 for serial uart
>>>>>>>>> Not using serial hack in slow timer handler.
>>>>>>>>> Welcome to Fiasco.OC (arm)!
>>>>>>>>> L4/Fiasco.OC arm microkernel (C) 1998-2013 TU Dresden
>>>>>>>>> Rev: rexported compiled with gcc 4.8.3 for i.MX6 []
>>>>>>>>> Build: #3 Wed Mar 11 16:43:41 CET 2015
>>>>>>>>>
>>>>>>>>> Calibrating timer loop... done.
>>>>>>>>> MDB: use page size: 20
>>>>>>>>> MDB: use page size: 12
>>>>>>>>> SIGMA0: Hello!
>>>>>>>>> KIP @ 10002000
>>>>>>>>> allocated 4KB for maintenance structures
>>>>>>>>> SIGMA0: Dump of all resource maps
>>>>>>>>> RAM:------------------------
>>>>>>>>> [4:10000000;10000fff]
>>>>>>>>> [0:10063000;1008ffff]
>>>>>>>>> [0:10097000;10097fff]
>>>>>>>>> [0:1009f000;1013ffff]
>>>>>>>>> [4:10140000;10171fff]
>>>>>>>>> [0:10172000;10177fff]
>>>>>>>>> [4:10178000;10193fff]
>>>>>>>>> [0:10194000;110fffff]
>>>>>>>>> [4:11100000;11133fff]
>>>>>>>>> [0:11134000;4effffff]
>>>>>>>>> IOMEM:----------------------
>>>>>>>>> [0:0;fffffff]
>>>>>>>>> [0:50000000;ffffffff]
>>>>>>>>> MOE: Hello world
>>>>>>>>> MOE: found 1031220 KByte free memory
>>>>>>>>> MOE: found RAM from 10000000 to 4f000000
>>>>>>>>> MOE: allocated 1008 KByte for the page array @0x10194000
>>>>>>>>> MOE: virtual user address space [0-bfffffff]
>>>>>>>>> MOE: rom name space cap -> [C:501000]
>>>>>>>>> BOOTFS: [11100000-11119474] [C:503000] l4re
>>>>>>>>> BOOTFS: [1111a000-11133598] [C:504000] vm-tz
>>>>>>>>> MOE: cmdline: moe --init=rom/vm-tz
>>>>>>>>> MOE: Starting: rom/vm-tz
>>>>>>>>> MOE: loading 'rom/vm-tz'
>>>>>>>>> Vmm started
>>>>>>>>> terminate called after throwing an instance of
>>>>>>>>> 'N2L413Runtime_errorE'
>>>>>>>>> MOE: task 270000679 exited with 127
>>>>>>>>>
>>>>>>>>> The code stops at the beginning when it tries to create a VM :
>>>>>>>>>
>>>>>>>>> L4Re::chksys(env->factory()->create_vm(vm));
>>>>>>>>>
>>>>>>>>> After reading through the code, I saw that the code example is
>>>>>>>>> expecting a linux-image and an initrd to be provided. Is it possible to
>>>>>>>>> tell me where these should be added in the build directory? In my test
>>>>>>>>> case, the linux-image will be replaced by a simple kernel image.
>>>>>>>>>
>>>>>>>>> Could someone help me to correct my test case.
>>>>>>>>>
>>>>>>>>> Many thanks in advance.
>>>>>>>>>
>>>>>>>>> Best regards,
>>>>>>>>> Mahdi
>>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>
>>>>>>
>>>>>
>>>>
>>>
>>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://os.inf.tu-dresden.de/pipermail/l4-hackers/attachments/20150417/de28a271/attachment.htm>
More information about the l4-hackers
mailing list