[Barrelfish-users] {Disarmed} Re: Problems when booting Barrelfish on SCC

Shi Jinghao (史经浩) jhshi at cs.hku.hk
Sat Apr 28 15:51:44 CEST 2012


I did a clean clone of release2011-09-02

hg clone -r release2011-09-02 http://hg.barrelfish.org release2011-09-02

and it still fails with this message when booting:

kernel 1 PANIC! kernel assertion "rck_get_coreid() == 0" failed at
../kernel/arch/scc/rck.c:874

which shows that kernel 1 is still trying to boot other cores. The same
output also occurs on a
clean release2011-11-10.

Can you show me your menu.lst.scc
so that I can check if my boot configuration is not correct. Mine is:

  1 timeout 0
  2
  3 # spawnd is used to control which cpus are booted
  4 #
  5 # "spawnd boot" will use the skb and pci to figure out and
  6 #  boot all cores in the machine
  7 #
  8 # "spawnd boot bootscc=1-6" will not use the skb and
  9 # boot the list of cores passed as argument.
 10 # The hardware id of the cores to boot should be specified.
 11 # This list may not include the bsp core id.
 12
 13 title   Barrelfish
 14 root    (nd)
 15 kernel  /scc/sbin/cpu loglevel=4
 16 module  /scc/sbin/cpu
 17 module  /scc/sbin/init
 18
 19 # Domains spawned by init
 20 module  /scc/sbin/mem_serv
 21 module  /scc/sbin/monitor
 22
 23 module  /scc/sbin/chips boot
 24 module  /scc/sbin/ramfsd boot
 25 module  /scc/sbin/spawnd boot bootscc=1-3
 26 module  /scc/sbin/startd boot
 27
 28 module /scc/sbin/examples/xmpl-hello core=0
 29
 30 # modules needed to start the networking
 31 # module  /scc/sbin/eMAC core=0 device=2
 32 # module  /scc/sbin/netd core=0 cardname=eMAC2_0
 33 # module  /scc/sbin/eMAC core=1
 34 # module  /scc/sbin/netd core=1 cardname=eMAC2_1
 35
 36 # Test for network throughput
 37 # module  /scc/sbin/netthroughput core=1 /nfs
nfs://10.110.4.41/shared/nfs/pravin/testfile.txt
 38
 39 # For webserver
 40 # module  /scc/sbin/webserver core=1 eMAC2_1 10.110.4.41
/shared/pravin/sw
 41
 42 # RCK memory map
 43 # Everything up til VGA is private RAM (maybe we want to throw it away)
 44 mmap    map 0x0     0xa000      2
 45 # Everything after VGA is private RAM (we also live in this area)
 46 mmap    map 0xe800      0x26ff1800  1
 47 # Shared RAM (over all MCs) in the middle of address space
 48 #mmap   map 0x80000000  0x4000000   1
 49 mmap    map     0x80000000      0x40000000      1
 50 # At the very end we have some platform memory (bootup EEPROM)
 51 mmap    map 0xfffc0000  0x40000     2


On Sat, Apr 28, 2012 at 5:23 PM, Stefan Kästle
<stefan.kaestle at inf.ethz.ch>wrote:

>  Hi,
>
> Yes, exactly: apic_is_bsp is broken on the SCC. It should use
> rck_get_coreid to initialize apic_bsp, but I doesn't. If fixed this issue
> in my tree, but it won't help you, as there are more bugs coming up after
> that.
>
> Are you sure you reverted your revision properly? Can you try a clean
> clone of that revision? I tested revision release2011-09-02 on our SCC, and
> it worked.
>
>
> On 04/27/2012 11:55 AM, Shi Jinghao (史经浩) wrote:
>
>
>  Here is my progress update on the problem of booting on SCC.
>
>  I found that the variable bsp is not correctly set in apic_init
> (/kernel/arch/x86/apic.c). bsp is initiated as true when defined. But there
> is no code that set its value when __scc__ is defined. The only code that
> touch bsp is wapped by #if !defined(__scc__) || defined.
>
>  So I added the following line in text_init (/kernel/arch/x86_32/init.c),
> right after print the "My APIC ID:" message,
>
>  bsp = (apic_id == 0);
>
>  It's a temporal hack that we assume core 0 is always the bsp core.
>
>  After done this, core 1 will realize that it's not bsp core so it will
> not try to boot core 0. But then I immediately found that the core_data
> passed to core 1 is corrupted. I found this from:
>
>  - core_data->memory_base_start = 0x0ffb7000, which seems ok but
> core_data->memory_bits = 0, this will make app_alloc_phys_end = 0x0ffb7001
> and fail app_alloc_phys
>
>  - core_data->dst_core_id and src_arch_id is wrong (some meaningless
> number)
>
>  I'm trying to figure out whether core 0 has place the x86_core_data
> structure correctly..
>
>  Thanks,
> Jinghao
>
> On Fri, Apr 27, 2012 at 2:18 PM, Shi Jinghao <jhshi89 at gmail.com> wrote:
>
>> Hi, Stefan,
>>
>>  I tried release2011-09-02 but it's still not work, and the same problem
>> occurs.
>>
>>  Don't know if you got any clue yet, but when I insert a printk in
>> function kernel_startup (/kernel/arch/x86/startup_x86.c). I find that the
>> function apic_is_bsp() may not work properly: each core think it' startup
>> core!! But when I traced the code and come to apic_base_msr (function
>> apic_init in file /kernel/arch/x86/apic.c), I am lost, and can not figure
>> out where apic_base_msr.bsp is set. Any hints here?
>>
>>  Thanks,
>> Jinghao
>>
>>
>>  Here is the code snippet where I inserted printk, FYI:
>>
>>  290     if (apic_is_bsp()) {
>> 291         printk(LOG_DEBUG, "\n in kernel_startup, I am BSP\n");
>> 292         /* Initialize the location to allocate phys memory from */
>> 293         bsp_init_alloc_addr = glbl_core_data->start_free_ram;
>>  294
>> 295         /* spawn init */
>> 296         init_dcb = spawn_bsp_init(BSP_INIT_MODULE_PATH,
>> bsp_alloc_phys);
>> 297     } else {
>> 298         printk(LOG_DEBUG, "\n in kernel_startup, I am NOT BSP\n");
>> 299         my_core_id = core_data->dst_core_id;
>> 300
>> 301         /* Initialize the allocator */
>> 302         app_alloc_phys_start = core_data->memory_base_start;
>> 303         app_alloc_phys_end   = ((lpaddr_t)1 <<
>> core_data->memory_bits) +
>> 304                                     app_alloc_phys_start;
>> 305
>> 306         init_dcb = spawn_app_init(core_data, APP_INIT_PROG_NAME,
>> app_alloc_phys);
>> 307     }
>>
>>
>> On Tue, Apr 24, 2012 at 4:13 AM, Stefan Kästle <
>> stefan.kaestle at inf.ethz.ch> wrote:
>>
>>>  Hi,
>>>
>>> this is harder to fix than I originally though. I will take some time to
>>> fix (especially since I am a little busy right now).
>>>
>>> Maybe you want to use an earlier version of Barrelfish in the meanwhile,
>>> e.g. revision release2011-09-02?! Since then, nothing significantly changed
>>> for the SCC code anyway. That one works fine on our SCC. In case you
>>> revert, make sure to do a clean rebuild!
>>>
>>> Cheers
>>>  Stefan
>>>
>>> On 04/22/2012 12:18 PM, Shi Jinghao (史经浩) wrote:
>>>
>>> Hi, stefan.
>>>
>>>  I changed the line as you instructed and it works. But when I try to
>>> boot core 0, 1, 2 ,3
>>>  with the following line:
>>>
>>>  module /scc/sbin/spawnd boot bootscc=1-3
>>>
>>>  The same problem occurs (ouput attached). So what's the proper syntax
>>> that correctly
>>> boot scc cores (e.g. {0, 1, 2, 3}, or {0, 2, 4, 6} )?
>>>
>>>  Regards,
>>> Jinghao
>>>
>>>  ---------- OUTPUT START ------------------------------
>>>  Kernel starting at address 0x80100000
>>> Barrelfish CPU driver starting on scc core 0
>>>  init: invoked as: init 2097152
>>> Spawning memory server (scc/sbin/mem_serv)...
>>> Spawning monitor (scc/sbin/monitor)...
>>>  starting monitor as 'scc/sbin/monitor 327680 '
>>> monitor: invoked as: scc/sbin/monitor 327680
>>> RAM allocator initialised, 1612 MB (of 1628 MB) available
>>> Spawning chips on core 0
>>> Spawning /scc/sbin/ramfsd on core 0
>>> Spawning /scc/sbin/spawnd on core 0
>>> Spawning /scc/sbin/startd on core 0
>>> 0 chips: client waiting for ramfs
>>> ramfsd.0: pre-populating from boot image...
>>> 0 chips: client waiting for ramfs
>>>  ramfsd.0: ready
>>> 0 chips: notifying client about ramfs
>>> 0 chips: notifying client about ramfs
>>> kernel 0: Allocating RAM at 0x80000000 uninitialized
>>> kernel 0: Allocating RAM at 0x80010000 uninitialized
>>> spawnd.0: coreid 0 is arch id 0
>>> spawnd.0: coreid 1 is arch id 1
>>>  spawnd.0: coreid 2 is arch id 2
>>> spawnd.0: coreid 3 is arch id 3
>>> 0 chips: client waiting for all_spawnds_up
>>> Monitor 0: booting scc core 1 as '/scc/sbin/cpu'
>>> kernel 0: Allocating RAM at 0x80020000 uninitialized
>>> Kernel starting at address 0x80100000
>>> My APIC ID: 1
>>>  Barrelfish CPU driver starting on scc core 1
>>> init: invoked as: init 2097152
>>> Spawning memory server (scc/sbin/mem_serv)...
>>> Spawning monitor (scc/sbin/monitor)...
>>>  starting monitor as 'scc/sbin/monitor 327680 '
>>> monitor: invoked as: scc/sbin/monitor 327680
>>> RAM allocator initialised, 1612 MB (of 1628 MB) available
>>> Spawning chips on core 1
>>> Spawning /scc/sbin/ramfsd on core 1
>>> Spawning /scc/sbin/spawnd on core 1
>>> Spawning /scc/sbin/startd on core 1
>>> 0 chips: client waiting for ramfs
>>> ramfsd.1: pre-populating from boot image...
>>> 0 chips: client waiting for ramfs
>>>  ramfsd.1: ready
>>> 0 chips: notifying client about ramfs
>>> 0 chips: notifying client about ramfs
>>> kernel 1: Allocating RAM at 0x84000000 uninitialized
>>> kernel 1: Allocating RAM at 0x84010000 uninitialized
>>> spawnd.1: coreid 0 is arch id 2
>>> spawnd.1: coreid 1 is arch id 1
>>>  spawnd.1: coreid 2 is arch id 3
>>> 0 chips: client waiting for all_spawnds_up
>>> Monitor 1: booting scc core 0 as '/scc/sbin/cpu'
>>>  kernel 1: Allocating RAM at 0x84020000 uninitialized
>>> kernel 1 PANIC! kernel assertion "rck_get_coreid() == 0" failed at
>>> ../kernel/arch/scc/rck.c:876
>>> kernel 1: exception 3 (error code 0x0): breakpoint
>>> On behalf of: monitor
>>> Faulting instruction pointer (or following instruction): 0x8010a7bf (0x
>>> 10a7bf in binary)
>>> EAX 0x80118000 EBX 0x80116e88 ECX 0x0 EDX 0x805202c0 ESP 0x80920a08
>>> Top o' stack:
>>> 0x8010a7bf 0x2 0x8 0x10 0x3 0x0 0x8010a7bf 0x8 0x2 0x80520180 0x80116e88
>>> 0x80920a44 0x8010c612 0x80116e88 0x210d6000 0x80920a64 0x8010c64b
>>> 0x801164a0 0x80114c10 0x80114b55
>>> No GDB backend
>>> ---------------- OUTPUT END ----------------------------
>>>
>>>
>>> On Sun, Apr 22, 2012 at 5:33 PM, <
>>> barrelfish-users-request at lists.inf.ethz.ch> wrote:
>>>
>>>> Send Barrelfish-users mailing list submissions to
>>>>        barrelfish-users at lists.inf.ethz.ch
>>>>
>>>> To subscribe or unsubscribe via the World Wide Web, visit
>>>>        https://lists.inf.ethz.ch/mailman/listinfo/barrelfish-users
>>>> or, via email, send a message with subject or body 'help' to
>>>>        barrelfish-users-request at lists.inf.ethz.ch
>>>>
>>>> You can reach the person managing the list at
>>>>        barrelfish-users-owner at lists.inf.ethz.ch
>>>>
>>>> When replying, please edit your Subject line so it is more specific
>>>> than "Re: Contents of Barrelfish-users digest..."
>>>>
>>>>
>>>> Today's Topics:
>>>>
>>>>   1. Problems when booting Barrelfish on SCC (???? <jhshi at cs.hku.hk>)
>>>>   2. Re: Problems when booting Barrelfish on SCC (Stefan K?stle)
>>>>
>>>>
>>>> ----------------------------------------------------------------------
>>>>
>>>> Message: 1
>>>> Date: Sun, 22 Apr 2012 17:12:57 +0800
>>>> From: Shi Jinghao (???? <jhshi at cs.hku.hk>
>>>> Subject: [Barrelfish-users] Problems when booting Barrelfish on SCC
>>>> To: barrelfish-users at lists.inf.ethz.ch
>>>> Message-ID:
>>>>        <
>>>> CAKdW-HFRKv6HWqAxwsL5MMJRqot6BSPkHXPx9ecXg3eaONRHZw at mail.gmail.com>
>>>> Content-Type: text/plain; charset="iso-8859-1"
>>>>
>>>> Hi,
>>>>
>>>> I'm trying to boot barrelfish on SCC. I've managed to compile the
>>>> source,
>>>> get barrelfish0.obj and barrelfish48.mt.
>>>> Then I use the bootscc.sh to boot it. For test, I just want to boot
>>>> core 0
>>>> and core 1, but a weird problem
>>>> happens: core 1 is trying to boot core 0. Here is the output after
>>>> system
>>>> start.
>>>>
>>>> ----------------------OUTPUT START ------------------------------------
>>>> Kernel starting at address 0x80100000
>>>> hku at ubuntu:~/fish/hg.barrelfish.org/build$ My APIC ID: 0
>>>> Barrelfish CPU driver starting on scc core 0
>>>> init: invoked as: init 2097152
>>>> Spawning memory server (scc/sbin/mem_serv)...
>>>> Spawning monitor (scc/sbin/monitor)...
>>>> starting monitor as 'scc/sbin/monitor 327680 '
>>>> monitor: invoked as: scc/sbin/monitor 327680
>>>> RAM allocator initialised, 1612 MB (of 1628 MB) available
>>>> Spawning chips on core 0
>>>> Spawning /scc/sbin/ramfsd on core 0
>>>> Spawning /scc/sbin/spawnd on core 0
>>>> Spawning /scc/sbin/startd on core 0
>>>> 0 chips: client waiting for ramfs
>>>> ramfsd.0: pre-populating from boot image...
>>>> 0 chips: client waiting for ramfs
>>>> ramfsd.0: ready
>>>> 0 chips: notifying client about ramfs
>>>> 0 chips: notifying client about ramfs
>>>> kernel 0: Allocating RAM at 0x80000000 uninitialized
>>>> kernel 0: Allocating RAM at 0x80010000 uninitialized
>>>> spawnd.0: coreid 0 is arch id 0
>>>> spawnd.0: coreid 1 is arch id 1
>>>> 0 chips: client waiting for all_spawnds_up
>>>> Monitor 0: booting scc core 1 as '/scc/sbin/cpu'
>>>> kernel 0: Allocating RAM at 0x80020000 uninitialized
>>>> Kernel starting at address 0x80100000
>>>> My APIC ID: 1
>>>> Barrelfish CPU driver starting on scc core 1
>>>> init: invoked as: init 2097152
>>>> Spawning memory server (scc/sbin/mem_serv)...
>>>> Spawning monitor (scc/sbin/monitor)...
>>>> starting monitor as 'scc/sbin/monitor 327680 '
>>>> monitor: invoked as: scc/sbin/monitor 327680
>>>> RAM allocator initialised, 1612 MB (of 1628 MB) available
>>>> Spawning chips on core 1
>>>> Spawning /scc/sbin/ramfsd on core 1
>>>> Spawning /scc/sbin/spawnd on core 1
>>>> Spawning /scc/sbin/startd on core 1
>>>> 0 chips: client waiting for ramfs
>>>> ramfsd.1: pre-populating from boot image...
>>>> 0 chips: client waiting for ramfs
>>>> ramfsd.1: ready
>>>> 0 chips: notifying client about ramfs
>>>> 0 chips: notifying client about ramfs
>>>> kernel 1: Allocating RAM at 0x84000000 uninitialized
>>>> kernel 1: Allocating RAM at 0x84010000 uninitialized
>>>> spawnd.1: coreid 0 is arch id 0
>>>> spawnd.1: coreid 1 is arch id 1
>>>> 0 chips: client waiting for all_spawnds_up
>>>> Monitor 1: booting scc core 0 as '/scc/sbin/cpu'
>>>> ********* Why would core 1 want to boot core 0 ? **************
>>>> kernel 1: Allocating RAM at 0x84020000 uninitialized
>>>> kernel 1 PANIC! kernel assertion "rck_get_coreid() == 0" failed at
>>>> ../kernel/arch/scc/rck.c:876
>>>> kernel 1: exception 3 (error code 0x0): breakpoint
>>>> On behalf of: monitor
>>>> Faulting instruction pointer (or following instruction): 0x8010a7bf (0x
>>>> 10a7bf in binary)
>>>> EAX 0x80118000 EBX 0x80116e88 ECX 0x0 EDX 0x805202c0 ESP 0x80920a08
>>>> Top o' stack:
>>>> 0x8010a7bf 0x2 0x8 0x10 0x3 0x0 0x8010a7bf 0x8 0x2 0x80520180 0x80116e88
>>>> 0x80920a44 0x8010c612 0x80116e88 0x210d6000 0x80920a64 0x8010c64b
>>>> 0x801164a0 0x80114c10 0x80114b55
>>>> No GDB backend
>>>> --------------- OUTPUT END ------------------------------
>>>>
>>>> As I see it, core 1 seems thought that it's the bsp core (while it's
>>>> not)
>>>> so it's responsible to boot other cores. But I fail to see why core 1
>>>> would
>>>> think like that.
>>>>
>>>> Any ideas on this? Thanks in advance.
>>>>
>>>> Regards,
>>>> Jinghao
>>>>
>>>> FYI, this is my menu.lst.scc
>>>>
>>>>  1 timeout 0
>>>>  2
>>>>  3 # spawnd is used to control which cpus are booted
>>>>  4 #
>>>>  5 # "spawnd boot" will use the skb and pci to figure out and
>>>>  6 #  boot all cores in the machine
>>>>  7 #
>>>>  8 # "spawnd boot bootscc=1-6" will not use the skb and
>>>>  9 # boot the list of cores passed as argument.
>>>>  10 # The hardware id of the cores to boot should be specified.
>>>>  11 # This list may not include the bsp core id.
>>>>  12
>>>>  13 title   Barrelfish
>>>>  14 root    (nd)
>>>>  15 kernel  /scc/sbin/cpu loglevel=4
>>>>  16 module  /scc/sbin/cpu
>>>>  17 module  /scc/sbin/init
>>>>  18
>>>>  19 # Domains spawned by init
>>>>  20 module  /scc/sbin/mem_serv
>>>>  21 module  /scc/sbin/monitor
>>>>  22
>>>>  23 module  /scc/sbin/chips boot
>>>>  24 module  /scc/sbin/ramfsd boot
>>>>  25 module  /scc/sbin/spawnd boot bootscc=0-1
>>>>  26 module  /scc/sbin/startd boot
>>>>  27
>>>>  28 #module /scc/sbin/examples/xmpl-hello
>>>>  29
>>>>  30 # modules needed to start the networking
>>>>  31 # module  /scc/sbin/eMAC core=0 device=2
>>>>  32 # module  /scc/sbin/netd core=0 cardname=eMAC2_0
>>>>  33 # module  /scc/sbin/eMAC core=1
>>>>  34 # module  /scc/sbin/netd core=1 cardname=eMAC2_1
>>>>  35
>>>>  36 # Test for network throughput
>>>>  37 # module  /scc/sbin/netthroughput core=1 /nfs
>>>> nfs://*MailScanner warning: numerical links are often malicious:*10.110.4.41/shared/nfs/pravin/testfile.txt<http://10.110.4.41/shared/nfs/pravin/testfile.txt>
>>>>  38
>>>>  39 # For webserver
>>>>  40 # module  /scc/sbin/webserver core=1 eMAC2_1 10.110.4.41
>>>> /shared/pravin/sw
>>>>  41
>>>>  42 # RCK memory map
>>>>  43 # Everything up til VGA is private RAM (maybe we want to throw it
>>>> away)
>>>>  44 mmap    map 0x0     0xa000      2
>>>>  45 # Everything after VGA is private RAM (we also live in this area)
>>>>  46 mmap    map 0xe800      0x26ff1800  1
>>>>  47 # Shared RAM (over all MCs) in the middle of address space
>>>>  48 #mmap   map 0x80000000  0x4000000   1
>>>>  49 mmap    map     0x80000000      0x40000000      1
>>>>  50 # At the very end we have some platform memory (bootup EEPROM)
>>>>  51 mmap    map 0xfffc0000  0x40000     2
>>>> -------------- next part --------------
>>>> An HTML attachment was scrubbed...
>>>> URL:
>>>> https://lists.inf.ethz.ch/pipermail/barrelfish-users/attachments/20120422/e2ff7982/attachment-0001.html
>>>>
>>>> ------------------------------
>>>>
>>>> Message: 2
>>>> Date: Sun, 22 Apr 2012 11:33:52 +0200
>>>> From: Stefan K?stle <stefan.kaestle at inf.ethz.ch>
>>>> Subject: Re: [Barrelfish-users] Problems when booting Barrelfish on
>>>>        SCC
>>>> To: <barrelfish-users at lists.inf.ethz.ch>
>>>> Message-ID: <4F93D080.6080905 at inf.ethz.ch>
>>>> Content-Type: text/plain; charset="iso-8859-1"
>>>>
>>>> Hi,
>>>>
>>>> can you try replacing
>>>> module  /scc/sbin/spawnd boot bootscc=0-1
>>>> with
>>>> module  /scc/sbin/spawnd boot bootscc=1
>>>> and try it again?
>>>>
>>>> The boot-up of core 0 is implicit - we do not specify it as a spwand
>>>> argument.
>>>>
>>>> Cheers,
>>>>  Stefan
>>>>
>>>> On 04/22/2012 11:12 AM, Shi Jinghao (???) wrote:
>>>> > Hi,
>>>> >
>>>> > I'm trying to boot barrelfish on SCC. I've managed to compile the
>>>> > source, get barrelfish0.obj and barrelfish48.mt <
>>>> http://barrelfish48.mt>.
>>>> > Then I use the bootscc.sh to boot it. For test, I just want to boot
>>>> > core 0 and core 1, but a weird problem
>>>> > happens: core 1 is trying to boot core 0. Here is the output after
>>>> > system start.
>>>> >
>>>> > ----------------------OUTPUT START
>>>> ------------------------------------
>>>> > Kernel starting at address 0x80100000
>>>> > hku at ubuntu:~/fish/hg.barrelfish.org/build$
>>>> > <http://hg.barrelfish.org/build$> My APIC ID: 0
>>>> > Barrelfish CPU driver starting on scc core 0
>>>> > init: invoked as: init 2097152
>>>> > Spawning memory server (scc/sbin/mem_serv)...
>>>> > Spawning monitor (scc/sbin/monitor)...
>>>> > starting monitor as 'scc/sbin/monitor 327680 '
>>>> > monitor: invoked as: scc/sbin/monitor 327680
>>>> > RAM allocator initialised, 1612 MB (of 1628 MB) available
>>>> > Spawning chips on core 0
>>>> > Spawning /scc/sbin/ramfsd on core 0
>>>> > Spawning /scc/sbin/spawnd on core 0
>>>> > Spawning /scc/sbin/startd on core 0
>>>> > 0 chips: client waiting for ramfs
>>>> > ramfsd.0: pre-populating from boot image...
>>>> > 0 chips: client waiting for ramfs
>>>> > ramfsd.0: ready
>>>> > 0 chips: notifying client about ramfs
>>>> > 0 chips: notifying client about ramfs
>>>> > kernel 0: Allocating RAM at 0x80000000 uninitialized
>>>> > kernel 0: Allocating RAM at 0x80010000 uninitialized
>>>> > spawnd.0: coreid 0 is arch id 0
>>>> > spawnd.0: coreid 1 is arch id 1
>>>> > 0 chips: client waiting for all_spawnds_up
>>>> > Monitor 0: booting scc core 1 as '/scc/sbin/cpu'
>>>> > kernel 0: Allocating RAM at 0x80020000 uninitialized
>>>> > Kernel starting at address 0x80100000
>>>> > My APIC ID: 1
>>>> > Barrelfish CPU driver starting on scc core 1
>>>> > init: invoked as: init 2097152
>>>> > Spawning memory server (scc/sbin/mem_serv)...
>>>> > Spawning monitor (scc/sbin/monitor)...
>>>> > starting monitor as 'scc/sbin/monitor 327680 '
>>>> > monitor: invoked as: scc/sbin/monitor 327680
>>>> > RAM allocator initialised, 1612 MB (of 1628 MB) available
>>>> > Spawning chips on core 1
>>>> > Spawning /scc/sbin/ramfsd on core 1
>>>> > Spawning /scc/sbin/spawnd on core 1
>>>> > Spawning /scc/sbin/startd on core 1
>>>> > 0 chips: client waiting for ramfs
>>>> > ramfsd.1: pre-populating from boot image...
>>>> > 0 chips: client waiting for ramfs
>>>> > ramfsd.1: ready
>>>> > 0 chips: notifying client about ramfs
>>>> > 0 chips: notifying client about ramfs
>>>> > kernel 1: Allocating RAM at 0x84000000 uninitialized
>>>> > kernel 1: Allocating RAM at 0x84010000 uninitialized
>>>> > spawnd.1: coreid 0 is arch id 0
>>>> > spawnd.1: coreid 1 is arch id 1
>>>> > 0 chips: client waiting for all_spawnds_up
>>>> > Monitor 1: booting scc core 0 as '/scc/sbin/cpu'
>>>> > ********* Why would core 1 want to boot core 0 ? **************
>>>> > kernel 1: Allocating RAM at 0x84020000 uninitialized
>>>> > kernel 1 PANIC! kernel assertion "rck_get_coreid() == 0" failed at
>>>> > ../kernel/arch/scc/rck.c:876
>>>> > kernel 1: exception 3 (error code 0x0): breakpoint
>>>> > On behalf of: monitor
>>>> > Faulting instruction pointer (or following instruction): 0x8010a7bf
>>>> > (0x 10a7bf in binary)
>>>> > EAX 0x80118000 EBX 0x80116e88 ECX 0x0 EDX 0x805202c0 ESP 0x80920a08
>>>> > Top o' stack:
>>>> > 0x8010a7bf 0x2 0x8 0x10 0x3 0x0 0x8010a7bf 0x8 0x2 0x80520180
>>>> > 0x80116e88 0x80920a44 0x8010c612 0x80116e88 0x210d6000 0x80920a64
>>>> > 0x8010c64b 0x801164a0 0x80114c10 0x80114b55
>>>> > No GDB backend
>>>> > --------------- OUTPUT END ------------------------------
>>>> >
>>>> > As I see it, core 1 seems thought that it's the bsp core (while it's
>>>> > not) so it's responsible to boot other cores. But I fail to see why
>>>> > core 1 would think like that.
>>>> >
>>>> > Any ideas on this? Thanks in advance.
>>>> >
>>>> > Regards,
>>>> > Jinghao
>>>> >
>>>> > FYI, this is my menu.lst.scc
>>>> >
>>>> >   1 timeout 0
>>>> >   2
>>>> >   3 # spawnd is used to control which cpus are booted
>>>> >   4 #
>>>> >   5 # "spawnd boot" will use the skb and pci to figure out and
>>>> >   6 #  boot all cores in the machine
>>>> >   7 #
>>>> >   8 # "spawnd boot bootscc=1-6" will not use the skb and
>>>> >   9 # boot the list of cores passed as argument.
>>>> >  10 # The hardware id of the cores to boot should be specified.
>>>> >  11 # This list may not include the bsp core id.
>>>> >  12
>>>> >  13 title   Barrelfish
>>>> >  14 root    (nd)
>>>> >  15 kernel  /scc/sbin/cpu loglevel=4
>>>> >  16 module  /scc/sbin/cpu
>>>> >  17 module  /scc/sbin/init
>>>> >  18
>>>> >  19 # Domains spawned by init
>>>> >  20 module  /scc/sbin/mem_serv
>>>> >  21 module  /scc/sbin/monitor
>>>> >  22
>>>> >  23 module  /scc/sbin/chips boot
>>>> >  24 module  /scc/sbin/ramfsd boot
>>>> >  25 module  /scc/sbin/spawnd boot bootscc=0-1
>>>> >  26 module  /scc/sbin/startd boot
>>>> >  27
>>>> >  28 #module /scc/sbin/examples/xmpl-hello
>>>> >  29
>>>> >  30 # modules needed to start the networking
>>>> >  31 # module  /scc/sbin/eMAC core=0 device=2
>>>> >  32 # module  /scc/sbin/netd core=0 cardname=eMAC2_0
>>>> >  33 # module  /scc/sbin/eMAC core=1
>>>> >  34 # module  /scc/sbin/netd core=1 cardname=eMAC2_1
>>>> >  35
>>>> >  36 # Test for network throughput
>>>> >  37 # module  /scc/sbin/netthroughput core=1 /nfs
>>>> > nfs://*MailScanner warning: numerical links are often malicious:*10.110.4.41/shared<http://10.110.4.41/shared><
>>>> *MailScanner warning: numerical links are often malicious:*http://10.110.4.41/shared<http://10.110.4.41/shared>
>>>> >
>>>> > /nfs/pravin/testfile.txt
>>>> >  38
>>>> >  39 # For webserver
>>>> >  40 # module  /scc/sbin/webserver core=1 eMAC2_1 10.110.4.41
>>>> > /shared/pravin/sw
>>>> >  41
>>>> >  42 # RCK memory map
>>>> >  43 # Everything up til VGA is private RAM (maybe we want to throw it
>>>> > away)
>>>> >  44 mmap    map 0x0     0xa000      2
>>>> >  45 # Everything after VGA is private RAM (we also live in this area)
>>>> >  46 mmap    map 0xe800      0x26ff1800  1
>>>> >  47 # Shared RAM (over all MCs) in the middle of address space
>>>> >  48 #mmap   map 0x80000000  0x4000000   1
>>>> >  49 mmap    map     0x80000000      0x40000000      1
>>>> >  50 # At the very end we have some platform memory (bootup EEPROM)
>>>> >  51 mmap    map 0xfffc0000  0x40000     2
>>>> >
>>>> >
>>>> >
>>>> > _______________________________________________
>>>> > Barrelfish-users mailing list
>>>> > Barrelfish-users at lists.inf.ethz.ch
>>>> > https://lists.inf.ethz.ch/mailman/listinfo/barrelfish-users
>>>> -------------- next part --------------
>>>> An HTML attachment was scrubbed...
>>>> URL:
>>>> https://lists.inf.ethz.ch/pipermail/barrelfish-users/attachments/20120422/ffc2681c/attachment.html
>>>>
>>>> ------------------------------
>>>>
>>>> _______________________________________________
>>>> Barrelfish-users mailing list
>>>> Barrelfish-users at lists.inf.ethz.ch
>>>> https://lists.inf.ethz.ch/mailman/listinfo/barrelfish-users
>>>>
>>>>
>>>> End of Barrelfish-users Digest, Vol 27, Issue 9
>>>> ***********************************************
>>>>
>>>>
>>>
>>
>
> --
> Stefan
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: https://lists.inf.ethz.ch/pipermail/barrelfish-users/attachments/20120428/0c4728de/attachment-0001.html 


More information about the Barrelfish-users mailing list