[Barrelfish-users] barrelfish help!

Kornilios Kourtis kornilios.kourtis at inf.ethz.ch
Tue Nov 4 13:51:57 CET 2014


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> 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> 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
>             https://lists.inf.ethz.ch/mailman/listinfo/barrelfish-users
> 
> 
>         _______________________________________________
>         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
> 
> 
> 
> 
> --
> 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



> _______________________________________________
> Barrelfish-users mailing list
> Barrelfish-users at lists.inf.ethz.ch
> https://lists.inf.ethz.ch/mailman/listinfo/barrelfish-users


-- 
Kornilios Kourtis



More information about the Barrelfish-users mailing list