[Barrelfish-users] barrelfish help!
Antonio Barbalace
antoniob at vt.edu
Thu Nov 20 22:28:26 CET 2014
I was able to solve this problem by doubling the DEFAULT_CNODE_SLOTS number
in lib/spawndomain/arch/x86/spawn_arch.c: spawn_arch_load (). (kudos to who
put the XXX comment)
// XXX: this code assumes that elf_load never needs more than 32 slots
for
// text frame capabilities.
err = cnode_create_raw(cnode_cap, &si->segcn, DEFAULT_CNODE_SLOTS*2,
NULL);
return err_push(err, SPAWN_ERR_CREATE_SEGCN);
}
I can now run cg up to 32 cores. After that I get the refill_slab error..
Antonio
On Mon, Nov 17, 2014 at 11:18 AM, Antonio Barbalace <antoniob at vt.edu> wrote:
> I was able to print the cspace.
>
> > bomp_benchmark_cg 1
> cap_copy failed for src_slot = 20(0x40c24000), dest_slot = 32(0x40c24000),
> spawn_vspace_slot = 22, new_slot_count = 12
> ...
> spawnd.0: slot 4 caddr 0x40c24000 (20 bits) is a CNode cap (bits 5,
> rights mask 0x1f)
> spawnd.0: slot 0 caddr 0x40c24000 (25 bits) is a Frame cap
> (0x82e00000:19)
> spawnd.0: slot 1 caddr 0x40c24080 (25 bits) is a Frame cap
> (0x82e80000:18)
> spawnd.0: slot 2 caddr 0x40c24100 (25 bits) is a Frame cap
> (0x82d70000:16)
> spawnd.0: slot 3 caddr 0x40c24180 (25 bits) is a Frame cap
> (0x82de0000:15)
> spawnd.0: slot 4 caddr 0x40c24200 (25 bits) is a Frame cap
> (0x825b9000:12)
> spawnd.0: slot 5 caddr 0x40c24280 (25 bits) is a Frame cap
> (0x82e00000:19)
> spawnd.0: slot 6 caddr 0x40c24300 (25 bits) is a Frame cap
> (0x82e80000:18)
> spawnd.0: slot 7 caddr 0x40c24380 (25 bits) is a Frame cap
> (0x82d70000:16)
> spawnd.0: slot 8 caddr 0x40c24400 (25 bits) is a Frame cap
> (0x82de0000:15)
> spawnd.0: slot 9 caddr 0x40c24480 (25 bits) is a Frame cap
> (0x825b9000:12)
> spawnd.0: slot 10 caddr 0x40c24500 (25 bits) is a Frame cap
> (0x94000000:25)
> spawnd.0: slot 11 caddr 0x40c24580 (25 bits) is a Frame cap
> (0x91000000:24)
> spawnd.0: slot 12 caddr 0x40c24600 (25 bits) is a Frame cap
> (0x92000000:23)
> spawnd.0: slot 13 caddr 0x40c24680 (25 bits) is a Frame cap
> (0x83800000:21)
> spawnd.0: slot 14 caddr 0x40c24700 (25 bits) is a Frame cap
> (0x83700000:20)
> spawnd.0: slot 15 caddr 0x40c24780 (25 bits) is a Frame cap
> (0x83a00000:19)
> spawnd.0: slot 16 caddr 0x40c24800 (25 bits) is a Frame cap
> (0x82ec0000:17)
> spawnd.0: slot 17 caddr 0x40c24880 (25 bits) is a Frame cap
> (0x82ee0000:16)
> spawnd.0: slot 18 caddr 0x40c24900 (25 bits) is a Frame cap
> (0x82de8000:15)
> spawnd.0: slot 19 caddr 0x40c24980 (25 bits) is a Frame cap
> (0x825e0000:14)
> spawnd.0: slot 20 caddr 0x40c24a00 (25 bits) is a Frame cap
> (0x825d0000:13)
> spawnd.0: slot 21 caddr 0x40c24a80 (25 bits) is a Frame cap
> (0x825be000:12)
> spawnd.0: slot 22 caddr 0x40c24b00 (25 bits) is a Frame cap
> (0x94000000:25)
> spawnd.0: slot 23 caddr 0x40c24b80 (25 bits) is a Frame cap
> (0x91000000:24)
> spawnd.0: slot 24 caddr 0x40c24c00 (25 bits) is a Frame cap
> (0x92000000:23)
> spawnd.0: slot 25 caddr 0x40c24c80 (25 bits) is a Frame cap
> (0x83800000:21)
> spawnd.0: slot 26 caddr 0x40c24d00 (25 bits) is a Frame cap
> (0x83700000:20)
> spawnd.0: slot 27 caddr 0x40c24d80 (25 bits) is a Frame cap
> (0x83a00000:19)
> spawnd.0: slot 28 caddr 0x40c24e00 (25 bits) is a Frame cap
> (0x82ec0000:17)
> spawnd.0: slot 29 caddr 0x40c24e80 (25 bits) is a Frame cap
> (0x82ee0000:16)
> spawnd.0: slot 30 caddr 0x40c24f00 (25 bits) is a Frame cap
> (0x82de8000:15)
> spawnd.0: slot 31 caddr 0x40c24f80 (25 bits) is a Frame cap
> (0x825e0000:14)
> spawnd.0: slot 7 caddr 0x40c27000 (20 bits) is a CNode cap (bits 10,
> rights mask 0x1f)
> ...
> ERROR: spawnd.0 in spawn_with_caps_handler() ../usr/spawnd/service.c:352
> ERROR: spawn
> Failure: ( spawn) Failure while loading [SPAWN_ERR_LOAD]
> Failure: ( libelf) Nested failure in allocator function
> [ELF_ERR_ALLOCATE]
> Failure: ( libbarrelfish) Failure in cap_copy() [LIB_ERR_CAP_COPY]
> Failure: ( kernel) Destination capability slots occupied
> [SYS_ERR_SLOT_IN_USE]
> bomp_benchmark_cg: error spawning: Failure while loading
> ERROR: fish.0 in execute_program() ../usr/fish/fish.c:102
> ERROR: Spawning Error
>
> ab
>
>
> On Sun, Nov 16, 2014 at 11:13 PM, Antonio Barbalace <antoniob at vt.edu>
> wrote:
>
>> Dear Reto,
>>
>> I did some experiments as you suggested but I wasn't able to solve the
>> problem. If you have any example code I will be happy if you can share it.
>> However, I continued debugging the problem! I am curious to know if there
>> is an API that I can call at the moment of the error and dump the
>> capabilities (like print_cspace).
>>
>> >bomp_benchmark_cg 1
>> elf_allocate: cap_copy failed for src_slot = 20, dest_slot = 32,
>> spawn_vspace_slot = 22, new_slot_count = 12
>> ERROR: spawnd.0 in spawn_with_caps_handler() ../usr/spawnd/service.c:352
>> ERROR: spawn
>> Failure: ( spawn) Failure while loading [SPAWN_ERR_LOAD]
>> Failure: ( libelf) Nested failure in allocator function
>> [ELF_ERR_ALLOCATE]
>> Failure: ( libbarrelfish) Failure in cap_copy() [LIB_ERR_CAP_COPY]
>> Failure: ( kernel) Destination capability slots occupied
>> [SYS_ERR_SLOT_IN_USE]
>> bomp_benchmark_cg: error spawning: Failure while loading
>> ERROR: fish.0 in execute_program() ../usr/fish/fish.c:102
>> ERROR: Spawning Error
>>
>> Failure: ( spawn) Failure while loading [SPAWN_ERR_LOAD]
>> Failure: ( libelf) Nested failure in allocator function
>> [ELF_ERR_ALLOCATE]
>> Failure: ( libbarrelfish) Failure in cap_copy() [LIB_ERR_CAP_COPY]
>> Failure: ( kernel) Destination capability slots occupied
>> [SYS_ERR_SLOT_IN_USE]
>>
>> many thanks,
>> Antonio
>>
>> On Thu, Nov 13, 2014 at 9:30 AM, Achermann Reto <
>> retoachermann at student.ethz.ch> wrote:
>>
>>> Hi Antonio,
>>>
>>>
>>>
>>> Just to provide some additional information that may have caused the
>>> issue.
>>>
>>>
>>>
>>> I ran into similar problems when I benchmarked the Barrelfish OpenMP
>>> implementation. The problem there was caused by an improper cleanup of the
>>> worker threads i.e. the cleanup thread is not called early enough. This
>>> resulted that the pre-allocated threads no longer are freed and hence the
>>> “newthread != NULL” assertion fired. In my case a couple of thread_yield()
>>> between the rounds did the trick, however this is not considered a
>>> solution. I haven’t looked at the FT implementation yet but judging from 6
>>> iteration on 64 cores the limit is likely to be reached in iteration 5.
>>>
>>>
>>>
>>> In any case, we need to do a work around in the way the memory layout is
>>> set up. Currently, maximum of 3.5GB of memory can be allocated on the heap
>>> due to 4G boundary constraints.
>>>
>>>
>>>
>>> -- Reto
>>>
>>>
>>>
>>> *From:* Antonio Barbalace [mailto:antoniob at vt.edu]
>>> *Sent:* Thursday, November 13, 2014 5:46 AM
>>> *To:* Gerber Simon
>>> *Cc:* Achermann Reto; barrelfish-users at lists.inf.ethz.ch; Zellweger Gerd
>>> *Subject:* Re: [Barrelfish-users] barrelfish help!
>>>
>>>
>>>
>>> Hi Simon,
>>>
>>> first of all, thank you very much! I am now successfully running FT and
>>> CG! The first patch solved the allocation problem, I am successfully
>>> running up to 48 cores. However I tried for 64 cores and I get the
>>> following error (for FT):
>>>
>>> Size : 256x256x128
>>> Iterations : 6
>>> ERROR: bomp_benchmark_.24 in slab_alloc() ../lib/barrelfish/slab.c:100
>>> ERROR: slab refill_func failed
>>> Failure: ( libbarrelfish) Failure in vspace_mmu_aware_map() function
>>> [LIB_ERR_VSPACE_MMU_AWARE_MAP]
>>> Failure: ( libbarrelfish) Out of space in vspace_mmu_aware_map()
>>> function [LIB_ERR_VSPACE_MMU_AWARE_NO_SPACE]
>>> assertion "newthread != NULL" failed: file "../lib/barrelfish/domain.c",
>>> line 174, function: create_thread_request
>>> Aborted
>>> ERROR: bomp_benchmark_.60 in slab_alloc() ../lib/barrelfish/slab.c:100
>>> ERROR: slab refill_func failed
>>> Aborted
>>> ERROR: bomp_benchmark_.63 in slab_alloc() ../lib/barrelfish/slab.c:100
>>> ERROR: slab refill_func failed
>>> Aborted
>>> ERROR: bomp_benchmark_.62 in slab_alloc() ../lib/barrelfish/slab.c:100
>>> ERROR: slab refill_func failed
>>> Aborted
>>>
>>> However CG does not work, I am getting the following error:
>>>
>>>
>>> > bomp_benchmark_cg 1
>>> cap_copy failed for src_slot = 21, dest_slot = 33
>>> ERROR: spawnd.0 in spawn_with_caps_handler() ../usr/spawnd/service.c:352
>>> ERROR: spawn
>>> Failure: ( spawn) Failure while loading [SPAWN_ERR_LOAD]
>>> Failure: ( libelf) Nested failure in allocator function
>>> [ELF_ERR_ALLOCATE]
>>> Failure: ( libbarrelfish) Failure in cap_copy() [LIB_ERR_CAP_COPY]
>>> Failure: ( kernel) Destination capability slots occupied
>>> [SYS_ERR_SLOT_IN_USE]
>>> bomp_benchmark_cg: error spawning: Failure while loading
>>> ERROR: fish.0 in execute_program() ../usr/fish/fish.c:102
>>> ERROR: Spawning Error
>>>
>>> Failure: ( spawn) Failure while loading [SPAWN_ERR_LOAD]
>>> Failure: ( libelf) Nested failure in allocator function
>>> [ELF_ERR_ALLOCATE]
>>> Failure: ( libbarrelfish) Failure in cap_copy() [LIB_ERR_CAP_COPY]
>>> Failure: ( kernel) Destination capability slots occupied
>>> [SYS_ERR_SLOT_IN_USE]
>>>
>>> please advice,
>>> thanks for you great help,
>>>
>>> Antonio
>>>
>>>
>>>
>>> PS I am subscribed to the Barrelfish list!!
>>>
>>>
>>>
>>> On Mon, Nov 10, 2014 at 10:00 AM, Simon Gerber <
>>> simon.gerber at inf.ethz.ch> wrote:
>>>
>>> Hi Antonio,
>>>
>>> [@list: sorry for the spam, I'm not sure if Antonio is subscribed and
>>> mistakenly replied only to the list...]
>>>
>>> I've investigated a bit and have produced two patches that make the FT
>>> benchmark work.
>>>
>>> patch 1 fixes some confusion when creating different cnodes and
>>> increases the size of the page cnode by a factor of two. This fixes your
>>> immediate problem of not being able to run the FT benchmark. Additionally,
>>> changing the page cnode size should now be as easy as modifying
>>> PAGE_CNODE_BITS in include/barrelfish_kpi/init.h.
>>>
>>> patch 2 fixes the FT benchmark itself which was not working because the
>>> default stack size on Barrelfish (64kB) is too small for the fft
>>> implementation which creates rather large arrays on the stack. This patch
>>> is not necessary if you're using a release older than release2014-08-29.
>>>
>>> Best,
>>> -- Simon
>>>
>>> On 08.11.2014 18:43, Antonio Barbalace wrote:
>>>
>>> All,
>>>
>>> Clearly I need a way to make larger memory allocations. Please advise.
>>>
>>> thank you very much,
>>> Antonio
>>>
>>> ---------------------------------------------------------------- LOG:
>>>
>>> > bomp_benchmark_ft 1
>>> spawnd.0: single_slot_alloc_init_raw: ret: 0x6a1528 ret->a .alloc:
>>> 0x492f80 .free: 0x492d80 .nslot: 128 .space: 128
>>> spawnd.0: single_slot_alloc_init_raw: ret->head: 0x17692c8 ret->head
>>> ->slot: 0 ->space: 128 ->next: 0x0
>>> spawnd.0: spawn_arch_load: ROOTCN_SLOT_SEGCN: 4 DEFAULT_CNODE_SLOTS: 32
>>> spawnd.0: elf_allocate: size: 888832 sz: 4096
>>> spawnd.0: single_slot_alloc_init_raw: ret: 0x8013c80018 ret->a .alloc:
>>> 0x492f80 .free: 0x492d80 .nslot: 1024 .space: 1024
>>> spawnd.0: single_slot_alloc_init_raw: ret->head: 0x8013c800a8 ret->head
>>> ->slot: 0 ->space: 1024 ->next: 0x0
>>> spawnd.0: elf_allocate: size: 439181312 sz: 8192
>>> spawnd.0: salloc: sca: 0x6a1528 sca->a .alloc: 0x492f80 .free: 0x492d80
>>> .nslot: 128 .space: 0
>>> spawnd.0: salloc: sca->head: 0x0 ->slot: 0 ->space: 0 ->next: 0x0
>>> ERROR: spawnd.0 in elf_allocate()
>>> ../lib/spawndomain/arch/x86/spawn_arch.c:166
>>> ERROR: lib_err_memobj_pagefault_handler
>>> Failure: ( libbarrelfish) Failure in pmap_map() [LIB_ERR_PMAP_MAP]
>>> Failure: ( libbarrelfish) Failure in pmap_do_map() [LIB_ERR_PMAP_DO_MAP]
>>> Failure: ( libbarrelfish) Failure in get_mapping()
>>> [LIB_ERR_PMAP_GET_PTABLE]
>>> Failure: ( libbarrelfish) Failure in alloc_vnode()
>>> [LIB_ERR_PMAP_ALLOC_VNODE]
>>> Failure: ( libbarrelfish) Failure in slot_alloc() [LIB_ERR_SLOT_ALLOC]
>>> Failure: ( libbarrelfish) Slot allocator is out of space
>>> [LIB_ERR_SLOT_ALLOC_NO_SPACE]
>>> ERROR: spawnd.0 in spawn_with_caps_handler() ../usr/spawnd/service.c:352
>>> ERROR: spawn
>>> Failure: ( spawn) Failure while loading [SPAWN_ERR_LOAD]
>>> Failure: ( libelf) Nested failure in allocator function
>>> [ELF_ERR_ALLOCATE]
>>> Failure: ( libbarrelfish) Failure in memobj_pagefault_handler()
>>> [LIB_ERR_MEMOBJ_PAGEFAULT_HANDLER]
>>> Failure: ( libbarrelfish) Failure in pmap_map() [LIB_ERR_PMAP_MAP]
>>> Failure: ( libbarrelfish) Failure in pmap_do_map() [LIB_ERR_PMAP_DO_MAP]
>>> Failure: ( libbarrelfish) Failure in get_mapping()
>>> [LIB_ERR_PMAP_GET_PTABLE]
>>> bomp_benchmark_ft: error spawning: Failure while loading
>>> ERROR: fish.0 in execute_program() ../usr/fish/fish.c:102
>>> ERROR: Spawning Error
>>>
>>> Failure: ( spawn) Failure while loading [SPAWN_ERR_LOAD]
>>> Failure: ( libelf) Nested failure in allocator function
>>> [ELF_ERR_ALLOCATE]
>>> Failure: ( libbarrelfish) Failure in memobj_pagefault_handler()
>>> [LIB_ERR_MEMOBJ_PAGEFAULT_HANDLER]
>>> Failure: ( libbarrelfish) Failure in pmap_map() [LIB_ERR_PMAP_MAP]
>>> Failure: ( libbarrelfish) Failure in pmap_do_map() [LIB_ERR_PMAP_DO_MAP]
>>> Failure: ( libbarrelfish) Failure in get_mapping()
>>> [LIB_ERR_PMAP_GET_PTABLE]
>>>
>>> ---------------------------------------------------------------- READELF:
>>>
>>> barrelfish/build/x86_64/sbin$ readelf -l bomp_benchmark_ft
>>>
>>> Elf file type is EXEC (Executable file)
>>> Entry point 0x400455
>>> There are 5 program headers, starting at offset 64
>>>
>>> Program Headers:
>>> Type Offset VirtAddr PhysAddr
>>> FileSiz MemSiz Flags Align
>>> LOAD 0x0000000000000000 0x0000000000400000
>>> 0x0000000000400000
>>> 0x00000000000d8e60 0x00000000000d8e60 R E 1000
>>> LOAD 0x00000000000d90d0 0x00000000004d90d0
>>> 0x00000000004d90d0
>>> 0x0000000000011c5c 0x000000001a2d55f8 RW 1000
>>> GNU_EH_FRAME 0x00000000000b718c 0x00000000004b718c
>>> 0x00000000004b718c
>>> 0x0000000000003c54 0x0000000000003c54 R 4
>>> GNU_STACK 0x0000000000000000 0x0000000000000000
>>> 0x0000000000000000
>>> 0x0000000000000000 0x0000000000000000 RWE 10
>>> GNU_RELRO 0x00000000000d90d0 0x00000000004d90d0
>>> 0x00000000004d90d0
>>> 0x0000000000000f30 0x0000000000000f30 R 1
>>>
>>> Section to Segment mapping:
>>> Segment Sections...
>>> 00 .text .rodata .eh_frame_hdr .eh_frame
>>>
>>> 01 .ctors .data.rel.ro <http://data.rel.ro> .got .got.plt .data
>>> .bss
>>> 02 .eh_frame_hdr
>>> 03
>>> 04 .ctors .data.rel.ro <http://data.rel.ro> .got
>>>
>>> ---------------------------------------------------------------- EOF
>>>
>>>
>>> On Fri, Nov 7, 2014 at 9:11 AM, Antonio Barbalace <antoniob at vt.edu
>>>
>>> <mailto:antoniob at vt.edu>> wrote:
>>>
>>> Dear Reto,
>>>
>>> hope the following will help. As a note, I tried to increase the
>>> sizes but I was not successful in doing that, any suggestion?
>>>
>>> many thanks,
>>> Antonio
>>>
>>> ----------------------------------------------------------------
>>> CODE:
>>>
>>> @ lib/spawndomain/arch/x86/spawn_arch.c:spawn_arch_load( .. )
>>>
>>> // XXX: this code assumes that elf_load never needs more than
>>> 32 slots for
>>> // text frame capabilities.
>>> err = cnode_create_raw(cnode_cap, &si->segcn,
>>> DEFAULT_CNODE_SLOTS, NULL);
>>> debug_printf("%s: ROOTCN_SLOT_SEGCN: %ld DEFAULT_CNODE_SLOTS: %ld\n",
>>> __FUNCTION__, (unsigned long)ROOTCN_SLOT_SEGCN,
>>> (unsigned long)DEFAULT_CNODE_SLOTS);
>>> if (err_is_fail(err)) {
>>>
>>> ---------------------------------------------------------------- LOG:
>>>
>>> > bomp_benchmark_ft 1
>>> spawnd.0: single_slot_alloc_init_raw: ret: 0x6a1528 ret->a .alloc:
>>> 0x492f40 .free: 0x492d40 .nslot: 128 .space: 128
>>> spawnd.0: single_slot_alloc_init_raw: ret->head: 0x17692c8 ret->head
>>> ->slot: 0 ->space: 128 ->next: 0x0
>>> spawnd.0: spawn_arch_load: ROOTCN_SLOT_SEGCN: 4 DEFAULT_CNODE_SLOTS:
>>> 32
>>> spawnd.0: single_slot_alloc_init_raw: ret: 0x8013c80018 ret->a
>>> .alloc: 0x492f40 .free: 0x492d40 .nslot: 1024 .space: 1024
>>> spawnd.0: single_slot_alloc_init_raw: ret->head: 0x8013c800a8
>>> ret->head ->slot: 0 ->space: 1024 ->next: 0x0
>>> spawnd.0: salloc: sca: 0x6a1528 sca->a .alloc: 0x492f40 .free:
>>> 0x492d40 .nslot: 128 .space: 0
>>>
>>> spawnd.0: salloc: sca->head: 0x0 ->slot: 0 ->space: 0 ->next:
>>> 0x0
>>> ERROR: spawnd.0 in elf_allocate()
>>> ../lib/spawndomain/arch/x86/spawn_arch.c:165
>>> ERROR: lib_err_memobj_pagefault_handler
>>> Failure: ( libbarrelfish) Failure in pmap_map() [LIB_ERR_PMAP_MAP]
>>> Failure: ( libbarrelfish) Failure in pmap_do_map()
>>> [LIB_ERR_PMAP_DO_MAP]
>>> Failure: ( libbarrelfish) Failure in get_mapping()
>>> [LIB_ERR_PMAP_GET_PTABLE]
>>> Failure: ( libbarrelfish) Failure in alloc_vnode()
>>> [LIB_ERR_PMAP_ALLOC_VNODE]
>>> Failure: ( libbarrelfish) Failure in slot_alloc()
>>> [LIB_ERR_SLOT_ALLOC]
>>> Failure: ( libbarrelfish) Slot allocator is out of space
>>> [LIB_ERR_SLOT_ALLOC_NO_SPACE]
>>> ERROR: spawnd.0 in spawn_with_caps_handler()
>>> ../usr/spawnd/service.c:352
>>> ERROR: spawn
>>> Failure: ( spawn) Failure while loading [SPAWN_ERR_LOAD]
>>> Failure: ( libelf) Nested failure in allocator function
>>> [ELF_ERR_ALLOCATE]
>>> Failure: ( libbarrelfish) Failure in memobj_pagefault_handler()
>>> [LIB_ERR_MEMOBJ_PAGEFAULT_HANDLER]
>>> Failure: ( libbarrelfish) Failure in pmap_map() [LIB_ERR_PMAP_MAP]
>>> Failure: ( libbarrelfish) Failure in pmap_do_map()
>>> [LIB_ERR_PMAP_DO_MAP]
>>> Failure: ( libbarrelfish) Failure in get_mapping()
>>> [LIB_ERR_PMAP_GET_PTABLE]
>>> bomp_benchmark_ft: error spawning: Failure while loading
>>> ERROR: fish.0 in execute_program() ../usr/fish/fish.c:102
>>> ERROR: Spawning Error
>>>
>>> Failure: ( spawn) Failure while loading [SPAWN_ERR_LOAD]
>>> Failure: ( libelf) Nested failure in allocator function
>>> [ELF_ERR_ALLOCATE]
>>> Failure: ( libbarrelfish) Failure in memobj_pagefault_handler()
>>> [LIB_ERR_MEMOBJ_PAGEFAULT_HANDLER]
>>> Failure: ( libbarrelfish) Failure in pmap_map() [LIB_ERR_PMAP_MAP]
>>> Failure: ( libbarrelfish) Failure in pmap_do_map()
>>> [LIB_ERR_PMAP_DO_MAP]
>>> Failure: ( libbarrelfish) Failure in get_mapping()
>>> [LIB_ERR_PMAP_GET_PTABLE]
>>> > bomp_benchmark_ft 2
>>> spawnd.0: single_slot_alloc_init_raw: ret: 0x6a1528 ret->a .alloc:
>>> 0x492f40 .free: 0x492d40 .nslot: 128 .space: 128
>>> spawnd.0: single_slot_alloc_init_raw: ret->head: 0x68f468 ret->head
>>> ->slot: 0 ->space: 128 ->next: 0x0
>>> spawnd.0: spawn_arch_load: ROOTCN_SLOT_SEGCN: 4 DEFAULT_CNODE_SLOTS:
>>> 32
>>> spawnd.0: salloc: sca: 0x6a1528 sca->a .alloc: 0x492f40 .free:
>>> 0x492d40 .nslot: 128 .space: 0
>>>
>>> spawnd.0: salloc: sca->head: 0x0 ->slot: 0 ->space: 0 ->next:
>>> 0x0
>>> ERROR: spawnd.0 in elf_allocate()
>>> ../lib/spawndomain/arch/x86/spawn_arch.c:165
>>> ERROR: lib_err_memobj_pagefault_handler
>>> Failure: ( libbarrelfish) Failure in pmap_map() [LIB_ERR_PMAP_MAP]
>>> Failure: ( libbarrelfish) Failure in pmap_do_map()
>>> [LIB_ERR_PMAP_DO_MAP]
>>> Failure: ( libbarrelfish) Failure in get_mapping()
>>> [LIB_ERR_PMAP_GET_PTABLE]
>>> Failure: ( libbarrelfish) Failure in alloc_vnode()
>>> [LIB_ERR_PMAP_ALLOC_VNODE]
>>> Failure: ( libbarrelfish) Failure in slot_alloc()
>>> [LIB_ERR_SLOT_ALLOC]
>>> Failure: ( libbarrelfish) Slot allocator is out of space
>>> [LIB_ERR_SLOT_ALLOC_NO_SPACE]
>>> ERROR: spawnd.0 in spawn_with_caps_handler()
>>> ../usr/spawnd/service.c:352
>>> ERROR: spawn
>>> Failure: ( spawn) Failure while loading [SPAWN_ERR_LOAD]
>>> Failure: ( libelf) Nested failure in allocator function
>>> [ELF_ERR_ALLOCATE]
>>> Failure: ( libbarrelfish) Failure in memobj_pagefault_handler()
>>> [LIB_ERR_MEMOBJ_PAGEFAULT_HANDLER]
>>> Failure: ( libbarrelfish) Failure in pmap_map() [LIB_ERR_PMAP_MAP]
>>> Failure: ( libbarrelfish) Failure in pmap_do_map()
>>> [LIB_ERR_PMAP_DO_MAP]
>>> Failure: ( libbarrelfish) Failure in get_mapping()
>>> [LIB_ERR_PMAP_GET_PTABLE]
>>> bomp_benchmark_ft: error spawning: Failure while loading
>>> ERROR: fish.0 in execute_program() ../usr/fish/fish.c:102
>>> ERROR: Spawning Error
>>>
>>> Failure: ( spawn) Failure while loading [SPAWN_ERR_LOAD]
>>> Failure: ( libelf) Nested failure in allocator function
>>> [ELF_ERR_ALLOCATE]
>>> Failure: ( libbarrelfish) Failure in memobj_pagefault_handler()
>>> [LIB_ERR_MEMOBJ_PAGEFAULT_HANDLER]
>>> Failure: ( libbarrelfish) Failure in pmap_map() [LIB_ERR_PMAP_MAP]
>>> Failure: ( libbarrelfish) Failure in pmap_do_map()
>>> [LIB_ERR_PMAP_DO_MAP]
>>> Failure: ( libbarrelfish) Failure in get_mapping()
>>> [LIB_ERR_PMAP_GET_PTABLE]
>>>
>>>
>>> On Fri, Nov 7, 2014 at 4:20 AM, Achermann Reto
>>> <retoachermann at student.ethz.ch
>>>
>>> <mailto:retoachermann at student.ethz.ch>> wrote:
>>>
>>> Hi Antonio,____
>>>
>>> __ __
>>>
>>> Just another thought. I am not sure if the problem at hand is
>>> related to a hard limit on the maximum number of slots in the
>>> SEGCN:____
>>>
>>> __ __
>>>
>>> /* lib/spawndomain/arch/x86/spawn_arch.c */____
>>>
>>> 261 // XXX: this code assumes that elf_load never needs more
>>> than 32 slots for____
>>>
>>> 262 // text frame capabilities.____
>>>
>>> __ __
>>>
>>> The mapping is done with the caps in the SEGCN of the ELF. Can
>>> you verify how many slots you use when loading the ELF?____
>>>
>>> __ __
>>>
>>> -- Reto____
>>>
>>> __ __
>>>
>>> *From:*Antonio Barbalace [mailto:antoniob at vt.edu
>>> <mailto:antoniob at vt.edu>]
>>> *Sent:* Friday, November 7, 2014 3:24 AM
>>> *To:* Kornilios Kourtis; Antonio Barbalace; Zellweger Gerd;
>>> barrelfish-users at lists.inf.ethz.ch
>>> <mailto:barrelfish-users at lists.inf.ethz.ch>
>>> *Subject:* Re: [Barrelfish-users] barrelfish help!____
>>>
>>> __ __
>>>
>>> I added some more printfs ... if it can help solve the
>>> problem.____
>>>
>>>
>>>
>>>
>>> > bomp_benchmark_ft 1
>>> spawnd.0: single_slot_alloc_init_raw: ret: 0x6a1528 ret->a
>>> .alloc: 0x492f10 .free: 0x492d10 .nslot: 128 .space: 128
>>> spawnd.0: single_slot_alloc_init_raw: ret->head: 0x76c8f8
>>> ret->head ->slot: 0 ->space: 128 ->next: 0x0
>>> spawnd.0: single_slot_alloc_init_raw: ret: 0x8013c80018 ret->a
>>> .alloc: 0x492f10 .free: 0x492d10 .nslot: 1024 .space: 1024
>>> spawnd.0: single_slot_alloc_init_raw: ret->head: 0x8013c800a8
>>> ret->head ->slot: 0 ->space: 1024 ->next: 0x0
>>> spawnd.0: salloc: sca: 0x6a1528 sca->a .alloc: 0x492f10 .free:
>>> 0x492d10 .nslot: 128 .space: 0
>>> spawnd.0: salloc: sca->head: 0x0 ->slot: 0 ->space: 0
>>> ->next: 0x0
>>> ERROR: spawnd.0 in elf_allocate()
>>> ../lib/spawndomain/arch/x86/spawn_arch.c:165
>>> ERROR: lib_err_memobj_pagefault_handler
>>> Failure: ( libbarrelfish) Failure in pmap_map()
>>> [LIB_ERR_PMAP_MAP]
>>> Failure: ( libbarrelfish) Failure in pmap_do_map()
>>> [LIB_ERR_PMAP_DO_MAP]
>>> Failure: ( libbarrelfish) Failure in get_mapping()
>>> [LIB_ERR_PMAP_GET_PTABLE]
>>> Failure: ( libbarrelfish) Failure in alloc_vnode()
>>> [LIB_ERR_PMAP_ALLOC_VNODE]
>>> Failure: ( libbarrelfish) Failure in slot_alloc()
>>> [LIB_ERR_SLOT_ALLOC]
>>> Failure: ( libbarrelfish) Slot allocator is out of space
>>> [LIB_ERR_SLOT_ALLOC_NO_SPACE]
>>> ERROR: spawnd.0 in spawn_with_caps_handler()
>>> ../usr/spawnd/service.c:352
>>> ERROR: spawn
>>> Failure: ( spawn) Failure while loading [SPAWN_ERR_LOAD]
>>> Failure: ( libelf) Nested failure in allocator function
>>> [ELF_ERR_ALLOCATE]
>>> Failure: ( libbarrelfish) Failure in memobj_pagefault_handler()
>>> [LIB_ERR_MEMOBJ_PAGEFAULT_HANDLER]
>>> Failure: ( libbarrelfish) Failure in pmap_map()
>>> [LIB_ERR_PMAP_MAP]
>>> Failure: ( libbarrelfish) Failure in pmap_do_map()
>>> [LIB_ERR_PMAP_DO_MAP]
>>> Failure: ( libbarrelfish) Failure in get_mapping()
>>> [LIB_ERR_PMAP_GET_PTABLE]
>>> bomp_benchmark_ft: error spawning: Failure while loading
>>> ERROR: fish.0 in execute_program() ../usr/fish/fish.c:102
>>> ERROR: Spawning Error
>>>
>>> Failure: ( spawn) Failure while loading [SPAWN_ERR_LOAD]
>>> Failure: ( libelf) Nested failure in allocator function
>>> [ELF_ERR_ALLOCATE]
>>> Failure: ( libbarrelfish) Failure in memobj_pagefault_handler()
>>> [LIB_ERR_MEMOBJ_PAGEFAULT_HANDLER]
>>> Failure: ( libbarrelfish) Failure in pmap_map()
>>> [LIB_ERR_PMAP_MAP]
>>> Failure: ( libbarrelfish) Failure in pmap_do_map()
>>> [LIB_ERR_PMAP_DO_MAP]
>>> Failure: ( libbarrelfish) Failure in get_mapping()
>>> [LIB_ERR_PMAP_GET_PTABLE]
>>> > bomp_benchmark_ft 2
>>> spawnd.0: single_slot_alloc_init_raw: ret: 0x6a1528 ret->a
>>> .alloc: 0x492f10 .free: 0x492d10 .nslot: 128 .space: 128
>>> spawnd.0: single_slot_alloc_init_raw: ret->head: 0x76a148
>>> ret->head ->slot: 0 ->space: 128 ->next: 0x0
>>> spawnd.0: salloc: sca: 0x6a1528 sca->a .alloc: 0x492f10 .free:
>>> 0x492d10 .nslot: 128 .space: 0
>>> spawnd.0: salloc: sca->head: 0x0 ->slot: 0 ->space: 0
>>> ->next: 0x0
>>> ERROR: spawnd.0 in elf_allocate()
>>> ../lib/spawndomain/arch/x86/spawn_arch.c:165
>>> ERROR: lib_err_memobj_pagefault_handler
>>> Failure: ( libbarrelfish) Failure in pmap_map()
>>> [LIB_ERR_PMAP_MAP]
>>> Failure: ( libbarrelfish) Failure in pmap_do_map()
>>> [LIB_ERR_PMAP_DO_MAP]
>>> Failure: ( libbarrelfish) Failure in get_mapping()
>>> [LIB_ERR_PMAP_GET_PTABLE]
>>> Failure: ( libbarrelfish) Failure in alloc_vnode()
>>> [LIB_ERR_PMAP_ALLOC_VNODE]
>>> Failure: ( libbarrelfish) Failure in slot_alloc()
>>> [LIB_ERR_SLOT_ALLOC]
>>> Failure: ( libbarrelfish) Slot allocator is out of space
>>> [LIB_ERR_SLOT_ALLOC_NO_SPACE]
>>> ERROR: spawnd.0 in spawn_with_caps_handler()
>>> ../usr/spawnd/service.c:352
>>> ERROR: spawn
>>> Failure: ( spawn) Failure while loading [SPAWN_ERR_LOAD]
>>> Failure: ( libelf) Nested failure in allocator function
>>> [ELF_ERR_ALLOCATE]
>>> Failure: ( libbarrelfish) Failure in memobj_pagefault_handler()
>>> [LIB_ERR_MEMOBJ_PAGEFAULT_HANDLER]
>>> Failure: ( libbarrelfish) Failure in pmap_map()
>>> [LIB_ERR_PMAP_MAP]
>>> Failure: ( libbarrelfish) Failure in pmap_do_map()
>>> [LIB_ERR_PMAP_DO_MAP]
>>> Failure: ( libbarrelfish) Failure in get_mapping()
>>> [LIB_ERR_PMAP_GET_PTABLE]
>>> bomp_benchmark_ft: error spawning: Failure while loading
>>> ERROR: fish.0 in execute_program() ../usr/fish/fish.c:102
>>> ERROR: Spawning Error
>>>
>>> Failure: ( spawn) Failure while loading [SPAWN_ERR_LOAD]
>>> Failure: ( libelf) Nested failure in allocator function
>>> [ELF_ERR_ALLOCATE]
>>> Failure: ( libbarrelfish) Failure in memobj_pagefault_handler()
>>> [LIB_ERR_MEMOBJ_PAGEFAULT_HANDLER]
>>> Failure: ( libbarrelfish) Failure in pmap_map()
>>> [LIB_ERR_PMAP_MAP]
>>> Failure: ( libbarrelfish) Failure in pmap_do_map()
>>> [LIB_ERR_PMAP_DO_MAP]
>>> Failure: ( libbarrelfish) Failure in get_mapping()
>>> [LIB_ERR_PMAP_GET_PTABLE]
>>>
>>> Antonio____
>>>
>>> __ __
>>>
>>> __ __
>>>
>>> On Thu, Nov 6, 2014 at 1:17 PM, Antonio Barbalace
>>> <antoniob at vt.edu <mailto:antoniob at vt.edu>> wrote:____
>>>
>>> Kornilios,____
>>>
>>> I think the CAP error was due to the fact that before
>>> launching the application successfully I mistyped it (after
>>> you launch an application that is not existent is giving the
>>> CAP error problem). I added few printfs in the single slot
>>> allocator code (salloc) and this is the error report right
>>> now.
>>>
>>> > bomp_benchmark_ft 1
>>> spawnd.0: salloc: sca: 0x6a1528 sca->a .alloc: 0x492f10
>>> .free: 0x492d10 .nslot: 128 .space: 0
>>> spawnd.0: salloc: sca->head: 0x0 ->slot: 0 ->space: 0
>>> ->next: 0x0____
>>>
>>>
>>>
>>>
>>> ERROR: spawnd.0 in elf_allocate()
>>> ../lib/spawndomain/arch/x86/spawn_arch.c:165
>>> ERROR: lib_err_memobj_pagefault_handler
>>> Failure: ( libbarrelfish) Failure in pmap_map()
>>> [LIB_ERR_PMAP_MAP]
>>> Failure: ( libbarrelfish) Failure in pmap_do_map()
>>> [LIB_ERR_PMAP_DO_MAP]
>>> Failure: ( libbarrelfish) Failure in get_mapping()
>>> [LIB_ERR_PMAP_GET_PTABLE]
>>> Failure: ( libbarrelfish) Failure in alloc_vnode()
>>> [LIB_ERR_PMAP_ALLOC_VNODE]
>>> Failure: ( libbarrelfish) Failure in slot_alloc()
>>> [LIB_ERR_SLOT_ALLOC]
>>> Failure: ( libbarrelfish) Slot allocator is out of space
>>> [LIB_ERR_SLOT_ALLOC_NO_SPACE]
>>> ERROR: spawnd.0 in spawn_with_caps_handler()
>>> ../usr/spawnd/service.c:352
>>> ERROR: spawn
>>> Failure: ( spawn) Failure while loading
>>> [SPAWN_ERR_LOAD]
>>> Failure: ( libelf) Nested failure in allocator
>>> function [ELF_ERR_ALLOCATE]
>>> Failure: ( libbarrelfish) Failure in
>>> memobj_pagefault_handler() [LIB_ERR_MEMOBJ_PAGEFAULT_HANDLER]
>>> Failure: ( libbarrelfish) Failure in pmap_map()
>>> [LIB_ERR_PMAP_MAP]
>>> Failure: ( libbarrelfish) Failure in pmap_do_map()
>>> [LIB_ERR_PMAP_DO_MAP]
>>> Failure: ( libbarrelfish) Failure in get_mapping()
>>> [LIB_ERR_PMAP_GET_PTABLE]
>>> bomp_benchmark_ft: error spawning: Failure while loading
>>> ERROR: fish.0 in execute_program() ../usr/fish/fish.c:102
>>> ERROR: Spawning Error
>>>
>>> Failure: ( spawn) Failure while loading
>>> [SPAWN_ERR_LOAD]
>>> Failure: ( libelf) Nested failure in allocator
>>> function [ELF_ERR_ALLOCATE]
>>> Failure: ( libbarrelfish) Failure in
>>> memobj_pagefault_handler() [LIB_ERR_MEMOBJ_PAGEFAULT_HANDLER]
>>> Failure: ( libbarrelfish) Failure in pmap_map()
>>> [LIB_ERR_PMAP_MAP]
>>> Failure: ( libbarrelfish) Failure in pmap_do_map()
>>> [LIB_ERR_PMAP_DO_MAP]
>>> Failure: ( libbarrelfish) Failure in get_mapping()
>>>
>>> [LIB_ERR_PMAP_GET_PTABLE]____
>>>
>>> the error comes from
>>> lib/barrelfish/slot_alloc/single_slot_alloc.c because
>>> sca->a.space is ZERO.____
>>>
>>> please advice!____
>>>
>>> thanks,
>>> Antonio____
>>>
>>> __ __
>>>
>>> On Wed, Nov 5, 2014 at 11:53 AM, Antonio Barbalace
>>> <antoniob at vt.edu <mailto:antoniob at vt.edu>> wrote:____
>>>
>>>
>>>
>>> Let me also include this:
>>>
>>> bomp_benhchmark_ft 2
>>> ERROR: spawnd.0 in elf_allocate()
>>> ../lib/spawndomain/arch/x86/spawn_arch.c:165
>>> ERROR: lib_err_memobj_pagefault_handler
>>> Failure: ( libbarrelfish) Failure in pmap_map()
>>> [LIB_ERR_PMAP_MAP]
>>> Failure: ( libbarrelfish) Failure in pmap_do_map()
>>> [LIB_ERR_PMAP_DO_MAP]
>>> Failure: ( libbarrelfish) Failure in get_mapping()
>>> [LIB_ERR_PMAP_GET_PTABLE]
>>> Failure: ( libbarrelfish) Failure in alloc_vnode()
>>> [LIB_ERR_PMAP_ALLOC_VNODE]
>>> Failure: ( libbarrelfish) Failure in slot_alloc()
>>> [LIB_ERR_SLOT_ALLOC]
>>> Failure: ( libbarrelfish) Slot allocator is out of
>>> space [LIB_ERR_SLOT_ALLOC_NO_SPACE]
>>> ERROR: spawnd.0 in spawn_with_caps_handler()
>>> ../usr/spawnd/service.c:352
>>> ERROR: spawn
>>> Failure: ( spawn) Failure while loading
>>> [SPAWN_ERR_LOAD]
>>> Failure: ( libelf) Nested failure in allocator
>>> function [ELF_ERR_ALLOCATE]
>>> Failure: ( libbarrelfish) Failure in
>>> memobj_pagefault_handler()
>>> [LIB_ERR_MEMOBJ_PAGEFAULT_HANDLER]
>>> Failure: ( libbarrelfish) Failure in pmap_map()
>>> [LIB_ERR_PMAP_MAP]
>>> Failure: ( libbarrelfish) Failure in pmap_do_map()
>>> [LIB_ERR_PMAP_DO_MAP]
>>> Failure: ( libbarrelfish) Failure in get_mapping()
>>> [LIB_ERR_PMAP_GET_PTABLE]
>>> bomp_benchmark_ft: error spawning: Failure while loading
>>> ERROR: fish.0 in execute_program() ../usr/fish/fish.c:102
>>> ERROR: Spawning Error
>>>
>>> Failure: ( spawn) Failure while loading
>>> [SPAWN_ERR_LOAD]
>>> Failure: ( libelf) Nested failure in allocator
>>> function [ELF_ERR_ALLOCATE]
>>> Failure: ( libbarrelfish) Failure in
>>> memobj_pagefault_handler()
>>> [LIB_ERR_MEMOBJ_PAGEFAULT_HANDLER]
>>> Failure: ( libbarrelfish) Failure in pmap_map()
>>> [LIB_ERR_PMAP_MAP]
>>> Failure: ( libbarrelfish) Failure in pmap_do_map()
>>> [LIB_ERR_PMAP_DO_MAP]
>>> Failure: ( libbarrelfish) Failure in get_mapping()
>>>
>>> [LIB_ERR_PMAP_GET_PTABLE]____
>>>
>>> >>> Slot allocator is out of space____
>>>
>>> ab____
>>>
>>> __ __
>>>
>>> On Wed, Nov 5, 2014 at 11:47 AM, Antonio Barbalace
>>> <antoniob at vt.edu <mailto:antoniob at vt.edu>> wrote:____
>>>
>>> Attached the log and the output of print_cspace.____
>>>
>>> thanks again for your support,
>>> Antonio____
>>>
>>> __ __
>>>
>>> On Tue, Nov 4, 2014 at 7:51 AM, Kornilios Kourtis
>>> <kornilios.kourtis at inf.ethz.ch
>>> <mailto:kornilios.kourtis at inf.ethz.ch>> wrote:____
>>>
>>>
>>>
>>> On Mon, Nov 03, 2014 at 12:56:46PM -0500,
>>> Antonio Barbalace wrote:
>>> > Dear all,
>>> >
>>> > I am now trying to run the bomp experiments.
>>> >
>>> > Just to make some context, I am using a tftp
>>> server. bomp_benchmark_ft is
>>> > loaded by the menu.lst/grub (maybe is not the
>>> right way to do it). I am
>>> > attaching menu.lst.
>>> >
>>> > This is what happen when I am loading
>>> bomp_benchmark_ft (also without
>>> > arguments, the same errors are reported during
>>> boot):
>>> >
>>> > > bomp_benchmark_ft
>>> > cap_copy failed for src_slot = 0, dest_slot = 5
>>> > ERROR: spawnd.0 in spawn_with_caps_handler()
>>> ../usr/spawnd/service.c:352
>>> > ERROR: spawn
>>> > Failure: ( spawn) Failure while
>>> loading [SPAWN_ERR_LOAD]
>>> > Failure: ( libelf) Nested failure in
>>> allocator function
>>> > [ELF_ERR_ALLOCATE]
>>> > Failure: ( libbarrelfish) Failure in
>>> cap_copy() [LIB_ERR_CAP_COPY]
>>> > Failure: ( kernel) Error looking up
>>> source capability
>>> > [SYS_ERR_SOURCE_CAP_LOOKUP]
>>> > Failure: ( kernel) Exceeded depth
>>> limit of CSpace
>>> > [SYS_ERR_DEPTH_EXCEEDED]
>>>
>>> Grepping for SYS_ERR_DEPTH_EXCEEDED results in:
>>> kernel/capabilities.c-618- // If lookup
>>> exceeded expected depth then table is malformed
>>> kernel/capabilities.c-619- if (bits_resolved
>>> > vbits) {
>>> kernel/capabilities.c-620-
>>> debug(SUBSYS_CAPS, "caps_lookup_slot: Lookup
>>> exceeded valid bits\n"
>>> kernel/capabilities.c-621- "Cnode
>>> bits = %u, guard size = %u, valid bits = %u\n",
>>> kernel/capabilities.c-622-
>>> cnode_cap->u.cnode.bits,
>>> cnode_cap->u.cnode.guard_size,
>>> kernel/capabilities.c-623- vbits);
>>> kernel/capabilities.c:624: return
>>> SYS_ERR_DEPTH_EXCEEDED;
>>> kernel/capabilities.c-625- }
>>>
>>> I'm wondering whether this has something to do
>>> with the patch that you
>>> applied... I'm guessing that using BIOS
>>> allocation did not help.
>>>
>>> It might be worth enabling the debug for the
>>> caps system. Can you please
>>> replace the corresponding line in menu.lst with:
>>>
>>> module /x86_64/sbin/cpu loglevel=5
>>> logmask=0x40
>>>
>>> And send us the debug messages?
>>>
>>> cheers,
>>>
>>> Kornilios.____
>>>
>>>
>>>
>>>
>>>
>>>
>>> > bomp_benchmark_ft: error spawning: Failure
>>> while loading
>>> > ERROR: fish.0 in execute_program()
>>> ../usr/fish/fish.c:102
>>> > ERROR: Spawning Error
>>> >
>>> > Failure: ( spawn) Failure while
>>> loading [SPAWN_ERR_LOAD]
>>> > Failure: ( libelf) Nested failure in
>>> allocator function
>>> > [ELF_ERR_ALLOCATE]
>>> > Failure: ( libbarrelfish) Failure in
>>> cap_copy() [LIB_ERR_CAP_COPY]
>>> > Failure: ( kernel) Error looking up
>>> source capability
>>> > [SYS_ERR_SOURCE_CAP_LOOKUP]
>>> > Failure: ( kernel) Exceeded depth
>>> limit of CSpace
>>> > [SYS_ERR_DEPTH_EXCEEDED]
>>> > > bomp_benchmark_ft 0
>>> > cap_copy failed for src_slot = 0, dest_slot = 5
>>> > ERROR: spawnd.0 in spawn_with_caps_handler()
>>> ../usr/spawnd/service.c:352
>>> > ERROR: spawn
>>> > Failure: ( spawn) Failure while
>>> loading [SPAWN_ERR_LOAD]
>>> > Failure: ( libelf) Nested failure in
>>> allocator function
>>> > [ELF_ERR_ALLOCATE]
>>> > Failure: ( libbarrelfish) Failure in
>>> cap_copy() [LIB_ERR_CAP_COPY]
>>> > Failure: ( kernel) Error looking up
>>> source capability
>>> > [SYS_ERR_SOURCE_CAP_LOOKUP]
>>> > Failure: ( kernel) Exceeded depth
>>> limit of CSpace
>>> > [SYS_ERR_DEPTH_EXCEEDED]
>>> > bomp_benchmark_ft: error spawning: Failure
>>> while loading
>>> > ERROR: fish.0 in execute_program()
>>> ../usr/fish/fish.c:102
>>> > ERROR: Spawning Error
>>> >
>>> > Failure: ( spawn) Failure while
>>> loading [SPAWN_ERR_LOAD]
>>> > Failure: ( libelf) Nested failure in
>>> allocator function
>>> > [ELF_ERR_ALLOCATE]
>>> > Failure: ( libbarrelfish) Failure in
>>> cap_copy() [LIB_ERR_CAP_COPY]
>>> > Failure: ( kernel) Error looking up
>>> source capability
>>> > [SYS_ERR_SOURCE_CAP_LOOKUP]
>>> > Failure: ( kernel) Exceeded depth
>>> limit of CSpace
>>> > [SYS_ERR_DEPTH_EXCEEDED]
>>> > > bomp_benchmark_ft 1
>>> > cap_copy failed for src_slot = 0, dest_slot = 5
>>> > ERROR: spawnd.0 in spawn_with_caps_handler()
>>> ../usr/spawnd/service.c:352
>>> > ERROR: spawn
>>> > Failure: ( spawn) Failure while
>>> loading [SPAWN_ERR_LOAD]
>>> > Failure: ( libelf) Nested failure in
>>> allocator function
>>> > [ELF_ERR_ALLOCATE]
>>> > Failure: ( libbarrelfish) Failure in
>>> cap_copy() [LIB_ERR_CAP_COPY]
>>> > Failure: ( kernel) Error looking up
>>> source capability
>>> > [SYS_ERR_SOURCE_CAP_LOOKUP]
>>> > Failure: ( kernel) Exceeded depth
>>> limit of CSpace
>>> > [SYS_ERR_DEPTH_EXCEEDED]
>>> > bomp_benchmark_ft: error spawning: Failure
>>> while loading
>>> > ERROR: fish.0 in execute_program()
>>> ../usr/fish/fish.c:102
>>> > ERROR: Spawning Error
>>> >
>>> > Failure: ( spawn) Failure while
>>> loading [SPAWN_ERR_LOAD]
>>> > Failure: ( libelf) Nested failure in
>>> allocator function
>>> > [ELF_ERR_ALLOCATE]
>>> > Failure: ( libbarrelfish) Failure in
>>> cap_copy() [LIB_ERR_CAP_COPY]
>>> > Failure: ( kernel) Error looking up
>>> source capability
>>> > [SYS_ERR_SOURCE_CAP_LOOKUP]
>>> > Failure: ( kernel) Exceeded depth
>>> limit of CSpace
>>> > [SYS_ERR_DEPTH_EXCEEDED]
>>> > > bomp_benchmark_ft 4
>>> > cap_copy failed for src_slot = 0, dest_slot = 5
>>> > ERROR: spawnd.0 in spawn_with_caps_handler()
>>> ../usr/spawnd/service.c:352
>>> > ERROR: spawn
>>> > Failure: ( spawn) Failure while
>>> loading [SPAWN_ERR_LOAD]
>>> > Failure: ( libelf) Nested failure in
>>> allocator function
>>> > [ELF_ERR_ALLOCATE]
>>> > Failure: ( libbarrelfish) Failure in
>>> cap_copy() [LIB_ERR_CAP_COPY]
>>> > Failure: ( kernel) Error looking up
>>> source capability
>>> > [SYS_ERR_SOURCE_CAP_LOOKUP]
>>> > Failure: ( kernel) Exceeded depth
>>> limit of CSpace
>>> > [SYS_ERR_DEPTH_EXCEEDED]
>>> > bomp_benchmark_ft: error spawning: Failure
>>> while loading
>>> > ERROR: fish.0 in execute_program()
>>> ../usr/fish/fish.c:102
>>> > ERROR: Spawning Error
>>> >
>>> > Failure: ( spawn) Failure while
>>> loading [SPAWN_ERR_LOAD]
>>> > Failure: ( libelf) Nested failure in
>>> allocator function
>>> > [ELF_ERR_ALLOCATE]
>>> > Failure: ( libbarrelfish) Failure in
>>> cap_copy() [LIB_ERR_CAP_COPY]
>>> > Failure: ( kernel) Error looking up
>>> source capability
>>> > [SYS_ERR_SOURCE_CAP_LOOKUP]
>>> > Failure: ( kernel) Exceeded depth
>>> limit of CSpace
>>> > [SYS_ERR_DEPTH_EXCEEDED]
>>> >
>>> > many thanks,
>>> > Antonio
>>> >
>>> >
>>>
>>> > On Mon, Nov 3, 2014 at 9:58 AM, Antonio
>>> Barbalace <antoniob at vt.edu <mailto:antoniob at vt.edu>> wrote:
>>> >
>>> > Kornilios, Stefan, Gerd,
>>> >
>>> > thank you very much! I am now able to
>>> interact with the terminal via the
>>> > serial line. The patch was necessary, note
>>> that maxchild is 2 while busnum
>>> > is 4.
>>> >
>>> > I am attaching the boot logs as a
>>> reference.
>>> >
>>> > appreciate your support,
>>> > Antonio
>>> >
>>> > On Fri, Oct 31, 2014 at 10:45 AM, Gerd
>>> Zellweger <
>>> >gerd.zellweger at inf.ethz.ch
>>>
>>> <mailto:gerd.zellweger at inf.ethz.ch>> wrote:
>>> >
>>> > Hi,
>>> >
>>> > Just in case: If changing the bridge
>>> program as suggested by Stefan is
>>> > not helping, you can also try this
>>> small patch that essentially
>>> > disables the assertion.
>>> > AFAIK that bound check there, which is
>>> reported by ACPI seems to be (at
>>> > least on our machines) not really a
>>> strict limit and can be ignored.
>>> >
>>> > Gerd
>>> >
>>> >
>>> > On 2014-10-31 14:01, Stefan Kaestle
>>> wrote:
>>> >
>>> > Hi Antonio,
>>> >
>>> > This could be due to a bug in the
>>> PCI bus allocation code.
>>> > It is worth trying the BIOS given
>>> PCI allocation plan instead. For
>>> > that, try using the following
>>> arguments to PCI in menu.lst
>>> >
>>> > modulenounzip
>>> /harness/sbrinz2_harness/x86_64/sbin/pci auto
>>> > SKB_BRIDGE_PROGRAM=BRIDGE_BIOS
>>> >
>>> >
>>> > Also, can you please enable PCI
>>> debug output and send the log? For
>>> > that, uncomment the following in
>>> line 17 of usr/pci/pci_debug.h
>>> > and
>>> > recompile:
>>> >
>>> > #define PCI_SERVICE_DEBUG 1
>>> >
>>> > Cheers,
>>> > Stefan
>>> >
>>> > On 10/31/2014 11:36 AM, Kornilios
>>> Kourtis wrote:
>>> >
>>> >
>>> > Hi Antonio,
>>> >
>>> > [CCing the list and Gerd]
>>> >
>>> > On Thu, Oct 30, 2014 at
>>> 11:29:16AM -0400, Antonio Barbalace
>>> > wrote:
>>> >
>>> >
>>> > Hi Kornilios,
>>> >
>>> > I re-started my adventure
>>> with Barrelfish this morning with
>>> > the
>>> > last mercurial
>>> > release. I am using
>>> tftpboot PXE boot (modified grub etc.).
>>> > I kept
>>> > myself from
>>> > modify the code at the
>>> moment. But I have to confess that I
>>> > added
>>> > a PCI_DEBUG()
>>> > before this error and
>>> nothing was printed even changing the
>>> > loglevel= . Let me
>>> > know if you prefer me to
>>> send this error on the forum.
>>> >
>>> > monitor: synchronizing
>>> clocks
>>> > Kaluga: pci_root_bridge
>>> > spawnd.0: spawning
>>> /x86_64/sbin/pci on core 0
>>> > Kaluga: pci_devices
>>> > pci: Unknown commandline
>>> option "auto" -- skipping.
>>> > startd.0: starting app
>>> /x86_64/sbin/serial on core 0
>>> > spawnd.0: spawning
>>> /x86_64/sbin/serial on core 0
>>> > startd.0: starting app
>>> /x86_64/sbin/angler on core 0
>>> > spawnd.0: spawning
>>> /x86_64/sbin/angler on core 0
>>> > No bootscript
>>> > skb.0: waiting for: pci
>>> > skb.0: waiting for:
>>> serial0.terminal
>>> > assertion "*busnum <=
>>> maxchild" failed: file "../usr/pci/
>>> > pci.c",
>>> > line 598,
>>> > function:
>>> assign_bus_numbers
>>> > Aborted
>>> > Spawnd up.
>>> >
>>> >
>>> > Sounds like a problem Gerd has
>>> been dealing with. If that's the
>>> > case, we
>>> > might have a quick-fix for it.
>>> Gerd?
>>> >
>>> > cheers,
>>> > Kornilios.
>>> >
>>> >
>>> > --
>>> > Stefan
>>> >http://people.inf.ethz.ch/skaestle/ [1]
>>> >
>>> >
>>> > Links:
>>> > ------
>>> > [1]
>>> http://people.inf.ethz.ch/skaestle/
>>> >
>>> >
>>> _______________________________________________
>>> > Barrelfish-users mailing list
>>> >Barrelfish-users at lists.inf.ethz.ch
>>>
>>> <mailto:Barrelfish-users at lists.inf.ethz.ch>
>>> >
>>> https://lists.inf.ethz.ch/mailman/listinfo/barrelfish-users
>>> >
>>> >
>>> >
>>> _______________________________________________
>>> > Barrelfish-users mailing list
>>> >Barrelfish-users at lists.inf.ethz.ch
>>> <mailto:Barrelfish-users at lists.inf.ethz.ch>
>>> >
>>> https://lists.inf.ethz.ch/mailman/listinfo/barrelfish-users
>>> >
>>> >
>>> >
>>> >
>>> >
>>> > --
>>> > Dr. Eng. Antonio Barbalace, PhD
>>> > Systems Software Research Group (SSRG)
>>> > Bradley Department of Electrical and
>>> Computer Engineering
>>> > Virginia Tech
>>> > 453 Durham Hall (0111)
>>> > Blacksburg, VA 24061
>>> > phone:+1 (540) 231-2494 <
>>> tel:%2B1%20%28540%29%20231-2494 <%2B1%20%28540%29%20231-2494>>
>>> > email:antoniob at vt.edu <mailto:
>>> antoniob at vt.edu>
>>> >
>>> >
>>> >
>>> >
>>> > --
>>> > Dr. Eng. Antonio Barbalace, PhD
>>> > Systems Software Research Group (SSRG)
>>> > Bradley Department of Electrical and Computer
>>> Engineering
>>> > Virginia Tech
>>> > 453 Durham Hall (0111)
>>> > Blacksburg, VA 24061
>>> > phone:+1 (540) 231-2494 <
>>> tel:%2B1%20%28540%29%20231-2494 <%2B1%20%28540%29%20231-2494>>
>>> > email:antoniob at vt.edu <mailto:antoniob at vt.edu>
>>>
>>>
>>>
>>> > _______________________________________________
>>> > Barrelfish-users mailing list
>>> >Barrelfish-users at lists.inf.ethz.ch
>>> <mailto:Barrelfish-users at lists.inf.ethz.ch>
>>> >
>>> https://lists.inf.ethz.ch/mailman/listinfo/barrelfish-users
>>>
>>>
>>> --____
>>>
>>> Kornilios Kourtis____
>>>
>>>
>>>
>>>
>>> -- ____
>>>
>>> Dr. Eng. Antonio Barbalace, PhD
>>> Systems Software Research Group (SSRG)
>>> Bradley Department of Electrical and Computer
>>> Engineering
>>> Virginia Tech
>>> 453 Durham Hall (0111)
>>> Blacksburg, VA 24061
>>> phone: +1 (540) 231-2494
>>> <tel:%2B1%20%28540%29%20231-2494
>>> <%2B1%20%28540%29%20231-2494>>
>>> email: antoniob at vt.edu <mailto:antoniob at vt.edu>____
>>>
>>>
>>>
>>>
>>> -- ____
>>>
>>> Dr. Eng. Antonio Barbalace, PhD
>>> Systems Software Research Group (SSRG)
>>> Bradley Department of Electrical and Computer Engineering
>>> Virginia Tech
>>> 453 Durham Hall (0111)
>>> Blacksburg, VA 24061
>>> phone: +1 (540) 231-2494 <
>>> tel:%2B1%20%28540%29%20231-2494 <%2B1%20%28540%29%20231-2494>>
>>> email: antoniob at vt.edu <mailto:antoniob at vt.edu>____
>>>
>>>
>>>
>>>
>>> -- ____
>>>
>>> Dr. Eng. Antonio Barbalace, PhD
>>> Systems Software Research Group (SSRG)
>>> Bradley Department of Electrical and Computer Engineering
>>> Virginia Tech
>>> 453 Durham Hall (0111)
>>> Blacksburg, VA 24061
>>> phone: +1 (540) 231-2494 <tel:%2B1%20%28540%29%20231-2494
>>> <%2B1%20%28540%29%20231-2494>>
>>> email: antoniob at vt.edu <mailto:antoniob at vt.edu>____
>>>
>>>
>>>
>>>
>>> -- ____
>>>
>>> Dr. Eng. Antonio Barbalace, PhD
>>> Systems Software Research Group (SSRG)
>>> Bradley Department of Electrical and Computer Engineering
>>> Virginia Tech
>>> 453 Durham Hall (0111)
>>> Blacksburg, VA 24061
>>> phone: +1 (540) 231-2494 <tel:%2B1%20%28540%29%20231-2494
>>> <%2B1%20%28540%29%20231-2494>>
>>> email: antoniob at vt.edu <mailto:antoniob at vt.edu>____
>>>
>>>
>>>
>>>
>>> --
>>> Dr. Eng. Antonio Barbalace, PhD
>>> Systems Software Research Group (SSRG)
>>> Bradley Department of Electrical and Computer Engineering
>>> Virginia Tech
>>> 453 Durham Hall (0111)
>>> Blacksburg, VA 24061
>>> phone: +1 (540) 231-2494 <tel:%2B1%20%28540%29%20231-2494
>>> <%2B1%20%28540%29%20231-2494>>
>>> email: antoniob at vt.edu <mailto:antoniob at vt.edu>
>>>
>>>
>>>
>>>
>>> --
>>> Dr. Eng. Antonio Barbalace, PhD
>>> Systems Software Research Group (SSRG)
>>> Bradley Department of Electrical and Computer Engineering
>>> Virginia Tech
>>> 453 Durham Hall (0111)
>>> Blacksburg, VA 24061
>>> phone: +1 (540) 231-2494
>>> email: antoniob at vt.edu <mailto:antoniob at vt.edu>
>>>
>>>
>>> _______________________________________________
>>> Barrelfish-users mailing list
>>> Barrelfish-users at lists.inf.ethz.ch
>>> https://lists.inf.ethz.ch/mailman/listinfo/barrelfish-users
>>>
>>>
>>>
>>>
>>> --
>>>
>>> Dr. Eng. Antonio Barbalace, PhD
>>> Systems Software Research Group (SSRG)
>>> Bradley Department of Electrical and Computer Engineering
>>> Virginia Tech
>>> 453 Durham Hall (0111)
>>> Blacksburg, VA 24061
>>> phone: +1 (540) 231-2494
>>> email: antoniob at vt.edu
>>>
>>>
>>>
>>> On Mon, Nov 10, 2014 at 10:00 AM, Simon Gerber <simon.gerber at inf.ethz.ch>
>>> wrote:
>>>
>>> Hi Antonio,
>>>
>>> [@list: sorry for the spam, I'm not sure if Antonio is subscribed and
>>> mistakenly replied only to the list...]
>>>
>>> I've investigated a bit and have produced two patches that make the FT
>>> benchmark work.
>>>
>>> patch 1 fixes some confusion when creating different cnodes and
>>> increases the size of the page cnode by a factor of two. This fixes your
>>> immediate problem of not being able to run the FT benchmark. Additionally,
>>> changing the page cnode size should now be as easy as modifying
>>> PAGE_CNODE_BITS in include/barrelfish_kpi/init.h.
>>>
>>> patch 2 fixes the FT benchmark itself which was not working because the
>>> default stack size on Barrelfish (64kB) is too small for the fft
>>> implementation which creates rather large arrays on the stack. This patch
>>> is not necessary if you're using a release older than release2014-08-29.
>>>
>>> Best,
>>> -- Simon
>>>
>>> On 08.11.2014 18:43, Antonio Barbalace wrote:
>>>
>>> All,
>>>
>>> Clearly I need a way to make larger memory allocations. Please advise.
>>>
>>> thank you very much,
>>> Antonio
>>>
>>> ---------------------------------------------------------------- LOG:
>>>
>>> > bomp_benchmark_ft 1
>>> spawnd.0: single_slot_alloc_init_raw: ret: 0x6a1528 ret->a .alloc:
>>> 0x492f80 .free: 0x492d80 .nslot: 128 .space: 128
>>> spawnd.0: single_slot_alloc_init_raw: ret->head: 0x17692c8 ret->head
>>> ->slot: 0 ->space: 128 ->next: 0x0
>>> spawnd.0: spawn_arch_load: ROOTCN_SLOT_SEGCN: 4 DEFAULT_CNODE_SLOTS: 32
>>> spawnd.0: elf_allocate: size: 888832 sz: 4096
>>> spawnd.0: single_slot_alloc_init_raw: ret: 0x8013c80018 ret->a .alloc:
>>> 0x492f80 .free: 0x492d80 .nslot: 1024 .space: 1024
>>> spawnd.0: single_slot_alloc_init_raw: ret->head: 0x8013c800a8 ret->head
>>> ->slot: 0 ->space: 1024 ->next: 0x0
>>> spawnd.0: elf_allocate: size: 439181312 sz: 8192
>>> spawnd.0: salloc: sca: 0x6a1528 sca->a .alloc: 0x492f80 .free: 0x492d80
>>> .nslot: 128 .space: 0
>>> spawnd.0: salloc: sca->head: 0x0 ->slot: 0 ->space: 0 ->next: 0x0
>>> ERROR: spawnd.0 in elf_allocate()
>>> ../lib/spawndomain/arch/x86/spawn_arch.c:166
>>> ERROR: lib_err_memobj_pagefault_handler
>>> Failure: ( libbarrelfish) Failure in pmap_map() [LIB_ERR_PMAP_MAP]
>>> Failure: ( libbarrelfish) Failure in pmap_do_map() [LIB_ERR_PMAP_DO_MAP]
>>> Failure: ( libbarrelfish) Failure in get_mapping()
>>> [LIB_ERR_PMAP_GET_PTABLE]
>>> Failure: ( libbarrelfish) Failure in alloc_vnode()
>>> [LIB_ERR_PMAP_ALLOC_VNODE]
>>> Failure: ( libbarrelfish) Failure in slot_alloc() [LIB_ERR_SLOT_ALLOC]
>>> Failure: ( libbarrelfish) Slot allocator is out of space
>>> [LIB_ERR_SLOT_ALLOC_NO_SPACE]
>>> ERROR: spawnd.0 in spawn_with_caps_handler() ../usr/spawnd/service.c:352
>>> ERROR: spawn
>>> Failure: ( spawn) Failure while loading [SPAWN_ERR_LOAD]
>>> Failure: ( libelf) Nested failure in allocator function
>>> [ELF_ERR_ALLOCATE]
>>> Failure: ( libbarrelfish) Failure in memobj_pagefault_handler()
>>> [LIB_ERR_MEMOBJ_PAGEFAULT_HANDLER]
>>> Failure: ( libbarrelfish) Failure in pmap_map() [LIB_ERR_PMAP_MAP]
>>> Failure: ( libbarrelfish) Failure in pmap_do_map() [LIB_ERR_PMAP_DO_MAP]
>>> Failure: ( libbarrelfish) Failure in get_mapping()
>>> [LIB_ERR_PMAP_GET_PTABLE]
>>> bomp_benchmark_ft: error spawning: Failure while loading
>>> ERROR: fish.0 in execute_program() ../usr/fish/fish.c:102
>>> ERROR: Spawning Error
>>>
>>> Failure: ( spawn) Failure while loading [SPAWN_ERR_LOAD]
>>> Failure: ( libelf) Nested failure in allocator function
>>> [ELF_ERR_ALLOCATE]
>>> Failure: ( libbarrelfish) Failure in memobj_pagefault_handler()
>>> [LIB_ERR_MEMOBJ_PAGEFAULT_HANDLER]
>>> Failure: ( libbarrelfish) Failure in pmap_map() [LIB_ERR_PMAP_MAP]
>>> Failure: ( libbarrelfish) Failure in pmap_do_map() [LIB_ERR_PMAP_DO_MAP]
>>> Failure: ( libbarrelfish) Failure in get_mapping()
>>> [LIB_ERR_PMAP_GET_PTABLE]
>>>
>>> ---------------------------------------------------------------- READELF:
>>>
>>> barrelfish/build/x86_64/sbin$ readelf -l bomp_benchmark_ft
>>>
>>> Elf file type is EXEC (Executable file)
>>> Entry point 0x400455
>>> There are 5 program headers, starting at offset 64
>>>
>>> Program Headers:
>>> Type Offset VirtAddr PhysAddr
>>> FileSiz MemSiz Flags Align
>>> LOAD 0x0000000000000000 0x0000000000400000
>>> 0x0000000000400000
>>> 0x00000000000d8e60 0x00000000000d8e60 R E 1000
>>> LOAD 0x00000000000d90d0 0x00000000004d90d0
>>> 0x00000000004d90d0
>>> 0x0000000000011c5c 0x000000001a2d55f8 RW 1000
>>> GNU_EH_FRAME 0x00000000000b718c 0x00000000004b718c
>>> 0x00000000004b718c
>>> 0x0000000000003c54 0x0000000000003c54 R 4
>>> GNU_STACK 0x0000000000000000 0x0000000000000000
>>> 0x0000000000000000
>>> 0x0000000000000000 0x0000000000000000 RWE 10
>>> GNU_RELRO 0x00000000000d90d0 0x00000000004d90d0
>>> 0x00000000004d90d0
>>> 0x0000000000000f30 0x0000000000000f30 R 1
>>>
>>> Section to Segment mapping:
>>> Segment Sections...
>>> 00 .text .rodata .eh_frame_hdr .eh_frame
>>>
>>> 01 .ctors .data.rel.ro <http://data.rel.ro> .got .got.plt .data
>>> .bss
>>> 02 .eh_frame_hdr
>>> 03
>>> 04 .ctors .data.rel.ro <http://data.rel.ro> .got
>>>
>>> ---------------------------------------------------------------- EOF
>>>
>>>
>>> On Fri, Nov 7, 2014 at 9:11 AM, Antonio Barbalace <antoniob at vt.edu
>>>
>>> <mailto:antoniob at vt.edu>> wrote:
>>>
>>> Dear Reto,
>>>
>>> hope the following will help. As a note, I tried to increase the
>>> sizes but I was not successful in doing that, any suggestion?
>>>
>>> many thanks,
>>> Antonio
>>>
>>> ----------------------------------------------------------------
>>> CODE:
>>>
>>> @ lib/spawndomain/arch/x86/spawn_arch.c:spawn_arch_load( .. )
>>>
>>> // XXX: this code assumes that elf_load never needs more than
>>> 32 slots for
>>> // text frame capabilities.
>>> err = cnode_create_raw(cnode_cap, &si->segcn,
>>> DEFAULT_CNODE_SLOTS, NULL);
>>> debug_printf("%s: ROOTCN_SLOT_SEGCN: %ld DEFAULT_CNODE_SLOTS: %ld\n",
>>> __FUNCTION__, (unsigned long)ROOTCN_SLOT_SEGCN,
>>> (unsigned long)DEFAULT_CNODE_SLOTS);
>>> if (err_is_fail(err)) {
>>>
>>> ---------------------------------------------------------------- LOG:
>>>
>>> > bomp_benchmark_ft 1
>>> spawnd.0: single_slot_alloc_init_raw: ret: 0x6a1528 ret->a .alloc:
>>> 0x492f40 .free: 0x492d40 .nslot: 128 .space: 128
>>> spawnd.0: single_slot_alloc_init_raw: ret->head: 0x17692c8 ret->head
>>> ->slot: 0 ->space: 128 ->next: 0x0
>>> spawnd.0: spawn_arch_load: ROOTCN_SLOT_SEGCN: 4 DEFAULT_CNODE_SLOTS:
>>> 32
>>> spawnd.0: single_slot_alloc_init_raw: ret: 0x8013c80018 ret->a
>>> .alloc: 0x492f40 .free: 0x492d40 .nslot: 1024 .space: 1024
>>> spawnd.0: single_slot_alloc_init_raw: ret->head: 0x8013c800a8
>>> ret->head ->slot: 0 ->space: 1024 ->next: 0x0
>>> spawnd.0: salloc: sca: 0x6a1528 sca->a .alloc: 0x492f40 .free:
>>> 0x492d40 .nslot: 128 .space: 0
>>>
>>> spawnd.0: salloc: sca->head: 0x0 ->slot: 0 ->space: 0 ->next:
>>> 0x0
>>> ERROR: spawnd.0 in elf_allocate()
>>> ../lib/spawndomain/arch/x86/spawn_arch.c:165
>>> ERROR: lib_err_memobj_pagefault_handler
>>> Failure: ( libbarrelfish) Failure in pmap_map() [LIB_ERR_PMAP_MAP]
>>> Failure: ( libbarrelfish) Failure in pmap_do_map()
>>> [LIB_ERR_PMAP_DO_MAP]
>>> Failure: ( libbarrelfish) Failure in get_mapping()
>>> [LIB_ERR_PMAP_GET_PTABLE]
>>> Failure: ( libbarrelfish) Failure in alloc_vnode()
>>> [LIB_ERR_PMAP_ALLOC_VNODE]
>>> Failure: ( libbarrelfish) Failure in slot_alloc()
>>> [LIB_ERR_SLOT_ALLOC]
>>> Failure: ( libbarrelfish) Slot allocator is out of space
>>> [LIB_ERR_SLOT_ALLOC_NO_SPACE]
>>> ERROR: spawnd.0 in spawn_with_caps_handler()
>>> ../usr/spawnd/service.c:352
>>> ERROR: spawn
>>> Failure: ( spawn) Failure while loading [SPAWN_ERR_LOAD]
>>> Failure: ( libelf) Nested failure in allocator function
>>> [ELF_ERR_ALLOCATE]
>>> Failure: ( libbarrelfish) Failure in memobj_pagefault_handler()
>>> [LIB_ERR_MEMOBJ_PAGEFAULT_HANDLER]
>>> Failure: ( libbarrelfish) Failure in pmap_map() [LIB_ERR_PMAP_MAP]
>>> Failure: ( libbarrelfish) Failure in pmap_do_map()
>>> [LIB_ERR_PMAP_DO_MAP]
>>> Failure: ( libbarrelfish) Failure in get_mapping()
>>> [LIB_ERR_PMAP_GET_PTABLE]
>>> bomp_benchmark_ft: error spawning: Failure while loading
>>> ERROR: fish.0 in execute_program() ../usr/fish/fish.c:102
>>> ERROR: Spawning Error
>>>
>>> Failure: ( spawn) Failure while loading [SPAWN_ERR_LOAD]
>>> Failure: ( libelf) Nested failure in allocator function
>>> [ELF_ERR_ALLOCATE]
>>> Failure: ( libbarrelfish) Failure in memobj_pagefault_handler()
>>> [LIB_ERR_MEMOBJ_PAGEFAULT_HANDLER]
>>> Failure: ( libbarrelfish) Failure in pmap_map() [LIB_ERR_PMAP_MAP]
>>> Failure: ( libbarrelfish) Failure in pmap_do_map()
>>> [LIB_ERR_PMAP_DO_MAP]
>>> Failure: ( libbarrelfish) Failure in get_mapping()
>>> [LIB_ERR_PMAP_GET_PTABLE]
>>> > bomp_benchmark_ft 2
>>> spawnd.0: single_slot_alloc_init_raw: ret: 0x6a1528 ret->a .alloc:
>>> 0x492f40 .free: 0x492d40 .nslot: 128 .space: 128
>>> spawnd.0: single_slot_alloc_init_raw: ret->head: 0x68f468 ret->head
>>> ->slot: 0 ->space: 128 ->next: 0x0
>>> spawnd.0: spawn_arch_load: ROOTCN_SLOT_SEGCN: 4 DEFAULT_CNODE_SLOTS:
>>> 32
>>> spawnd.0: salloc: sca: 0x6a1528 sca->a .alloc: 0x492f40 .free:
>>> 0x492d40 .nslot: 128 .space: 0
>>>
>>> spawnd.0: salloc: sca->head: 0x0 ->slot: 0 ->space: 0 ->next:
>>> 0x0
>>> ERROR: spawnd.0 in elf_allocate()
>>> ../lib/spawndomain/arch/x86/spawn_arch.c:165
>>> ERROR: lib_err_memobj_pagefault_handler
>>> Failure: ( libbarrelfish) Failure in pmap_map() [LIB_ERR_PMAP_MAP]
>>> Failure: ( libbarrelfish) Failure in pmap_do_map()
>>> [LIB_ERR_PMAP_DO_MAP]
>>> Failure: ( libbarrelfish) Failure in get_mapping()
>>> [LIB_ERR_PMAP_GET_PTABLE]
>>> Failure: ( libbarrelfish) Failure in alloc_vnode()
>>> [LIB_ERR_PMAP_ALLOC_VNODE]
>>> Failure: ( libbarrelfish) Failure in slot_alloc()
>>> [LIB_ERR_SLOT_ALLOC]
>>> Failure: ( libbarrelfish) Slot allocator is out of space
>>> [LIB_ERR_SLOT_ALLOC_NO_SPACE]
>>> ERROR: spawnd.0 in spawn_with_caps_handler()
>>> ../usr/spawnd/service.c:352
>>> ERROR: spawn
>>> Failure: ( spawn) Failure while loading [SPAWN_ERR_LOAD]
>>> Failure: ( libelf) Nested failure in allocator function
>>> [ELF_ERR_ALLOCATE]
>>> Failure: ( libbarrelfish) Failure in memobj_pagefault_handler()
>>> [LIB_ERR_MEMOBJ_PAGEFAULT_HANDLER]
>>> Failure: ( libbarrelfish) Failure in pmap_map() [LIB_ERR_PMAP_MAP]
>>> Failure: ( libbarrelfish) Failure in pmap_do_map()
>>> [LIB_ERR_PMAP_DO_MAP]
>>> Failure: ( libbarrelfish) Failure in get_mapping()
>>> [LIB_ERR_PMAP_GET_PTABLE]
>>> bomp_benchmark_ft: error spawning: Failure while loading
>>> ERROR: fish.0 in execute_program() ../usr/fish/fish.c:102
>>> ERROR: Spawning Error
>>>
>>> Failure: ( spawn) Failure while loading [SPAWN_ERR_LOAD]
>>> Failure: ( libelf) Nested failure in allocator function
>>> [ELF_ERR_ALLOCATE]
>>> Failure: ( libbarrelfish) Failure in memobj_pagefault_handler()
>>> [LIB_ERR_MEMOBJ_PAGEFAULT_HANDLER]
>>> Failure: ( libbarrelfish) Failure in pmap_map() [LIB_ERR_PMAP_MAP]
>>> Failure: ( libbarrelfish) Failure in pmap_do_map()
>>> [LIB_ERR_PMAP_DO_MAP]
>>> Failure: ( libbarrelfish) Failure in get_mapping()
>>> [LIB_ERR_PMAP_GET_PTABLE]
>>>
>>>
>>> On Fri, Nov 7, 2014 at 4:20 AM, Achermann Reto
>>> <retoachermann at student.ethz.ch
>>>
>>> <mailto:retoachermann at student.ethz.ch>> wrote:
>>>
>>> Hi Antonio,____
>>>
>>> __ __
>>>
>>> Just another thought. I am not sure if the problem at hand is
>>> related to a hard limit on the maximum number of slots in the
>>> SEGCN:____
>>>
>>> __ __
>>>
>>> /* lib/spawndomain/arch/x86/spawn_arch.c */____
>>>
>>> 261 // XXX: this code assumes that elf_load never needs more
>>> than 32 slots for____
>>>
>>> 262 // text frame capabilities.____
>>>
>>> __ __
>>>
>>> The mapping is done with the caps in the SEGCN of the ELF. Can
>>> you verify how many slots you use when loading the ELF?____
>>>
>>> __ __
>>>
>>> -- Reto____
>>>
>>> __ __
>>>
>>> *From:*Antonio Barbalace [mailto:antoniob at vt.edu
>>> <mailto:antoniob at vt.edu>]
>>> *Sent:* Friday, November 7, 2014 3:24 AM
>>> *To:* Kornilios Kourtis; Antonio Barbalace; Zellweger Gerd;
>>> barrelfish-users at lists.inf.ethz.ch
>>> <mailto:barrelfish-users at lists.inf.ethz.ch>
>>> *Subject:* Re: [Barrelfish-users] barrelfish help!____
>>>
>>> __ __
>>>
>>> I added some more printfs ... if it can help solve the
>>> problem.____
>>>
>>>
>>>
>>>
>>> > bomp_benchmark_ft 1
>>> spawnd.0: single_slot_alloc_init_raw: ret: 0x6a1528 ret->a
>>> .alloc: 0x492f10 .free: 0x492d10 .nslot: 128 .space: 128
>>> spawnd.0: single_slot_alloc_init_raw: ret->head: 0x76c8f8
>>> ret->head ->slot: 0 ->space: 128 ->next: 0x0
>>> spawnd.0: single_slot_alloc_init_raw: ret: 0x8013c80018 ret->a
>>> .alloc: 0x492f10 .free: 0x492d10 .nslot: 1024 .space: 1024
>>> spawnd.0: single_slot_alloc_init_raw: ret->head: 0x8013c800a8
>>> ret->head ->slot: 0 ->space: 1024 ->next: 0x0
>>> spawnd.0: salloc: sca: 0x6a1528 sca->a .alloc: 0x492f10 .free:
>>> 0x492d10 .nslot: 128 .space: 0
>>> spawnd.0: salloc: sca->head: 0x0 ->slot: 0 ->space: 0
>>> ->next: 0x0
>>> ERROR: spawnd.0 in elf_allocate()
>>> ../lib/spawndomain/arch/x86/spawn_arch.c:165
>>> ERROR: lib_err_memobj_pagefault_handler
>>> Failure: ( libbarrelfish) Failure in pmap_map()
>>> [LIB_ERR_PMAP_MAP]
>>> Failure: ( libbarrelfish) Failure in pmap_do_map()
>>> [LIB_ERR_PMAP_DO_MAP]
>>> Failure: ( libbarrelfish) Failure in get_mapping()
>>> [LIB_ERR_PMAP_GET_PTABLE]
>>> Failure: ( libbarrelfish) Failure in alloc_vnode()
>>> [LIB_ERR_PMAP_ALLOC_VNODE]
>>> Failure: ( libbarrelfish) Failure in slot_alloc()
>>> [LIB_ERR_SLOT_ALLOC]
>>> Failure: ( libbarrelfish) Slot allocator is out of space
>>> [LIB_ERR_SLOT_ALLOC_NO_SPACE]
>>> ERROR: spawnd.0 in spawn_with_caps_handler()
>>> ../usr/spawnd/service.c:352
>>> ERROR: spawn
>>> Failure: ( spawn) Failure while loading [SPAWN_ERR_LOAD]
>>> Failure: ( libelf) Nested failure in allocator function
>>> [ELF_ERR_ALLOCATE]
>>> Failure: ( libbarrelfish) Failure in memobj_pagefault_handler()
>>> [LIB_ERR_MEMOBJ_PAGEFAULT_HANDLER]
>>> Failure: ( libbarrelfish) Failure in pmap_map()
>>> [LIB_ERR_PMAP_MAP]
>>> Failure: ( libbarrelfish) Failure in pmap_do_map()
>>> [LIB_ERR_PMAP_DO_MAP]
>>> Failure: ( libbarrelfish) Failure in get_mapping()
>>> [LIB_ERR_PMAP_GET_PTABLE]
>>> bomp_benchmark_ft: error spawning: Failure while loading
>>> ERROR: fish.0 in execute_program() ../usr/fish/fish.c:102
>>> ERROR: Spawning Error
>>>
>>> Failure: ( spawn) Failure while loading [SPAWN_ERR_LOAD]
>>> Failure: ( libelf) Nested failure in allocator function
>>> [ELF_ERR_ALLOCATE]
>>> Failure: ( libbarrelfish) Failure in memobj_pagefault_handler()
>>> [LIB_ERR_MEMOBJ_PAGEFAULT_HANDLER]
>>> Failure: ( libbarrelfish) Failure in pmap_map()
>>> [LIB_ERR_PMAP_MAP]
>>> Failure: ( libbarrelfish) Failure in pmap_do_map()
>>> [LIB_ERR_PMAP_DO_MAP]
>>> Failure: ( libbarrelfish) Failure in get_mapping()
>>> [LIB_ERR_PMAP_GET_PTABLE]
>>> > bomp_benchmark_ft 2
>>> spawnd.0: single_slot_alloc_init_raw: ret: 0x6a1528 ret->a
>>> .alloc: 0x492f10 .free: 0x492d10 .nslot: 128 .space: 128
>>> spawnd.0: single_slot_alloc_init_raw: ret->head: 0x76a148
>>> ret->head ->slot: 0 ->space: 128 ->next: 0x0
>>> spawnd.0: salloc: sca: 0x6a1528 sca->a .alloc: 0x492f10 .free:
>>> 0x492d10 .nslot: 128 .space: 0
>>> spawnd.0: salloc: sca->head: 0x0 ->slot: 0 ->space: 0
>>> ->next: 0x0
>>> ERROR: spawnd.0 in elf_allocate()
>>> ../lib/spawndomain/arch/x86/spawn_arch.c:165
>>> ERROR: lib_err_memobj_pagefault_handler
>>> Failure: ( libbarrelfish) Failure in pmap_map()
>>> [LIB_ERR_PMAP_MAP]
>>> Failure: ( libbarrelfish) Failure in pmap_do_map()
>>> [LIB_ERR_PMAP_DO_MAP]
>>> Failure: ( libbarrelfish) Failure in get_mapping()
>>> [LIB_ERR_PMAP_GET_PTABLE]
>>> Failure: ( libbarrelfish) Failure in alloc_vnode()
>>> [LIB_ERR_PMAP_ALLOC_VNODE]
>>> Failure: ( libbarrelfish) Failure in slot_alloc()
>>> [LIB_ERR_SLOT_ALLOC]
>>> Failure: ( libbarrelfish) Slot allocator is out of space
>>> [LIB_ERR_SLOT_ALLOC_NO_SPACE]
>>> ERROR: spawnd.0 in spawn_with_caps_handler()
>>> ../usr/spawnd/service.c:352
>>> ERROR: spawn
>>> Failure: ( spawn) Failure while loading [SPAWN_ERR_LOAD]
>>> Failure: ( libelf) Nested failure in allocator function
>>> [ELF_ERR_ALLOCATE]
>>> Failure: ( libbarrelfish) Failure in memobj_pagefault_handler()
>>> [LIB_ERR_MEMOBJ_PAGEFAULT_HANDLER]
>>> Failure: ( libbarrelfish) Failure in pmap_map()
>>> [LIB_ERR_PMAP_MAP]
>>> Failure: ( libbarrelfish) Failure in pmap_do_map()
>>> [LIB_ERR_PMAP_DO_MAP]
>>> Failure: ( libbarrelfish) Failure in get_mapping()
>>> [LIB_ERR_PMAP_GET_PTABLE]
>>> bomp_benchmark_ft: error spawning: Failure while loading
>>> ERROR: fish.0 in execute_program() ../usr/fish/fish.c:102
>>> ERROR: Spawning Error
>>>
>>> Failure: ( spawn) Failure while loading [SPAWN_ERR_LOAD]
>>> Failure: ( libelf) Nested failure in allocator function
>>> [ELF_ERR_ALLOCATE]
>>> Failure: ( libbarrelfish) Failure in memobj_pagefault_handler()
>>> [LIB_ERR_MEMOBJ_PAGEFAULT_HANDLER]
>>> Failure: ( libbarrelfish) Failure in pmap_map()
>>> [LIB_ERR_PMAP_MAP]
>>> Failure: ( libbarrelfish) Failure in pmap_do_map()
>>> [LIB_ERR_PMAP_DO_MAP]
>>> Failure: ( libbarrelfish) Failure in get_mapping()
>>> [LIB_ERR_PMAP_GET_PTABLE]
>>>
>>> ...
>
> [Message clipped]
--
Dr. Eng. Antonio Barbalace, PhD
Systems Software Research Group (SSRG)
Bradley Department of Electrical and Computer Engineering
Virginia Tech
453 Durham Hall (0111)
Blacksburg, VA 24061
phone: +1 (540) 231-2494
email: antoniob at vt.edu
-------------- next part --------------
An HTML attachment was scrubbed...
URL: https://lists.inf.ethz.ch/pipermail/barrelfish-users/attachments/20141120/9f3df359/attachment-0001.html
More information about the Barrelfish-users
mailing list