[Barrelfish-users] barrelfish help!
Achermann Reto
retoachermann at student.ethz.ch
Thu Nov 13 15:30:59 CET 2014
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<mailto: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> <http://data.rel.ro> .got .got.plt .data
.bss
02 .eh_frame_hdr
03
04 .ctors .data.rel.ro<http://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>
<mailto: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>
<mailto: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>
<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>
<mailto: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> <mailto: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> <mailto: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> <mailto: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>
<mailto: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> <mailto: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>
<mailto: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>
<mailto: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>
<mailto: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> <tel:%2B1%20%28540%29%20231-2494>
> email:antoniob at vt.edu<mailto:email%3Aantoniob at vt.edu> <mailto: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> <tel:%2B1%20%28540%29%20231-2494>
> email:antoniob at vt.edu<mailto:email%3Aantoniob at vt.edu> <mailto: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>
<mailto: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>
<tel:%2B1%20%28540%29%20231-2494>
email: antoniob at vt.edu<mailto:antoniob at vt.edu> <mailto: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> <tel:%2B1%20%28540%29%20231-2494>
email: antoniob at vt.edu<mailto:antoniob at vt.edu> <mailto: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> <tel:%2B1%20%28540%29%20231-2494>
email: antoniob at vt.edu<mailto:antoniob at vt.edu> <mailto: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> <tel:%2B1%20%28540%29%20231-2494>
email: antoniob at vt.edu<mailto:antoniob at vt.edu> <mailto: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> <tel:%2B1%20%28540%29%20231-2494>
email: antoniob at vt.edu<mailto:antoniob at vt.edu> <mailto: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>
email: antoniob at vt.edu<mailto:antoniob at vt.edu> <mailto: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
--
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>
email: antoniob at vt.edu<mailto:antoniob at vt.edu>
On Mon, Nov 10, 2014 at 10:00 AM, Simon Gerber <simon.gerber at inf.ethz.ch<mailto: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> <http://data.rel.ro> .got .got.plt .data
.bss
02 .eh_frame_hdr
03
04 .ctors .data.rel.ro<http://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>
<mailto: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>
<mailto: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>
<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>
<mailto: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> <mailto: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> <mailto: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> <mailto: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>
<mailto: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> <mailto: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>
<mailto: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>
<mailto: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>
<mailto: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> <tel:%2B1%20%28540%29%20231-2494>
> email:antoniob at vt.edu<mailto:email%3Aantoniob at vt.edu> <mailto: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> <tel:%2B1%20%28540%29%20231-2494>
> email:antoniob at vt.edu<mailto:email%3Aantoniob at vt.edu> <mailto: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>
<mailto: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>
<tel:%2B1%20%28540%29%20231-2494>
email: antoniob at vt.edu<mailto:antoniob at vt.edu> <mailto: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> <tel:%2B1%20%28540%29%20231-2494>
email: antoniob at vt.edu<mailto:antoniob at vt.edu> <mailto: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> <tel:%2B1%20%28540%29%20231-2494>
email: antoniob at vt.edu<mailto:antoniob at vt.edu> <mailto: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> <tel:%2B1%20%28540%29%20231-2494>
email: antoniob at vt.edu<mailto:antoniob at vt.edu> <mailto: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> <tel:%2B1%20%28540%29%20231-2494>
email: antoniob at vt.edu<mailto:antoniob at vt.edu> <mailto: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>
email: antoniob at vt.edu<mailto:antoniob at vt.edu> <mailto: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
--
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>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: https://lists.inf.ethz.ch/pipermail/barrelfish-users/attachments/20141113/3f195130/attachment-0001.html
More information about the Barrelfish-users
mailing list