Skip to content

Instantly share code, notes, and snippets.

@iloskutov
Created May 16, 2012 07:46
Show Gist options
  • Save iloskutov/2708419 to your computer and use it in GitHub Desktop.
Save iloskutov/2708419 to your computer and use it in GitHub Desktop.
L4 Bootstrapper
Build: #1 Сб. мая 12 18:09:33 MSK 2012, x86-32, 4.6.1
RAM: 0000000000000000 - 000000000009f3ff: 637kB
RAM: 0000000000100000 - 000000001fffcfff: 523252kB
Total RAM: 511MB
Moving 16 modules to 1100000 with offset dec000
moving module 16 { ad5000-b38128 } -> { 18c1000-1924128 }
moving module 15 { a96000-ad4df8 } -> { 1882000-18c0df8 }
moving module 14 { a58000-a9551c } -> { 1844000-188151c }
moving module 13 { a05000-a5780c } -> { 17f1000-184380c }
moving module 12 { 98d000-a046cc } -> { 1779000-17f06cc }
moving module 11 { 8f8000-98c200 } -> { 16e4000-1778200 }
moving module 10 { 598000-8f72f8 } -> { 1384000-16e32f8 }
moving module 09 { 553000-597b74 } -> { 133f000-1383b74 }
moving module 08 { 512000-5525f4 } -> { 12fe000-133e5f4 }
moving module 07 { 4c1000-511a00 } -> { 12ad000-12fda00 }
moving module 06 { 489000-4c03b8 } -> { 1275000-12ac3b8 }
moving module 05 { 444000-4886ac } -> { 1230000-12746ac }
moving module 04 { 443000-443997 } -> { 122f000-122f997 }
moving module 03 { 3cf000-442358 } -> { 11bb000-122e358 }
moving module 02 { 37b000-3cebba } -> { 1167000-11babba }
moving module 01 { 314000-37a360 } -> { 1100000-1166360 }
Scanning /fiasco/fiasco -serial_esc
Scanning /fiasco/sigma0
Scanning /genode/core
Bootloader MMAP:
[ 0, 9f400) RAM (1)
[ 9f400, a0000) reserved (2)
[ f0000, 100000) reserved (2)
[ 100000, 1fffd000) RAM (1)
[ 1fffd000, 20000000) reserved (2)
[ feffc000, ff000000) reserved (2)
[ fffc0000, 100000000) reserved (2)
Relocated mbi to [0x2dd000-0x2dd567]
Loading /fiasco/fiasco
Loading /fiasco/sigma0
Loading /genode/core
find kernel info page...
found kernel info page at 0x400000
Regions of list regions
[ 0, fff] { 1000} Arch BIOS
[ 9f400, 9ffff] { c00} Arch BIOS
[ f0000, fffff] { 10000} Arch BIOS
[ 100000, 10b197] { b198} Sigma0 /fiasco/sigma0
[ 2d0000, 2e13e7] { 113e8} Boot bootstrap
[ 2dd000, 2dd664] { 665} Root Multiboot info
[ 300000, 38ffff] { 90000} Kern /fiasco/fiasco
[ 400000, 46bfff] { 6c000} Kern /fiasco/fiasco
[ 490000, 5eb94f] { 15b950} Root /genode/core
[ 122f000, 1924127] { 6f5128} Root Modules Memory
[ 1fffd000, 1fffffff] { 3000} Arch BIOS
[ feffc000, feffffff] { 4000} Arch BIOS
[ fffc0000, ffffffff] { 40000} Arch BIOS
API Version: (87) experimental
Sigma0 config ip:0010020c sp:002dca50
Roottask config ip:004e1fe8 sp:00000000
Starting kernel /fiasco/fiasco at 00300824
Welcome to Fiasco.OC (ia32)!
L4/Fiasco.OC ia32 microkernel (C) 1998-2011 TU Dresden
Rev: r38 compiled with gcc 4.6.1 for Intel Pentium []
Build: #1 Сб. мая 12 18:09:57 MSK 2012
Performance-critical config option(s) detected:
CONFIG_NDEBUG is off
CONFIG_NO_FRAME_PTR is off
Superpages: yes
Kmem:: cpu page at 1fff8000 (4096Bytes)
ACPI-Init
ACPI: RSDP[0xfd4d0] r00 OEM:BOCHS.
ACPI: RSDT[0x203fd7b0] r01 OEM:BOCHS. OEMTID:BXPCRSDT
ACPI: FACP[0x203fff80] r01 OEM:BOCHS. OEMTID:BXPCFACP
ACPI: SSDT[0x203fd910] r01 OEM:BOCHS. OEMTID:BXPCSSDT
ACPI: APIC[0x203fd830] r01 OEM:BOCHS. OEMTID:BXPCAPIC
ACPI: HPET[0x203fd7f0] r01 OEM:BOCHS. OEMTID:BXPCHPET
IO-APIC: MADT = 0x203fd830
IO-APIC[ 0]: struct: 0x203fd864 adr=fec00000
IO-APIC[ 0]: pins 24
PIN[ 0m]: vector=20, del=0, dm=physical, dest=0 (high, edge)
PIN[ 1m]: vector=21, del=0, dm=physical, dest=0 (high, edge)
PIN[ 2m]: vector=22, del=0, dm=physical, dest=0 (high, edge)
PIN[ 3m]: vector=23, del=0, dm=physical, dest=0 (high, edge)
PIN[ 4m]: vector=24, del=0, dm=physical, dest=0 (high, edge)
PIN[ 5m]: vector=25, del=0, dm=physical, dest=0 (high, edge)
PIN[ 6m]: vector=26, del=0, dm=physical, dest=0 (high, edge)
PIN[ 7m]: vector=27, del=0, dm=physical, dest=0 (high, edge)
PIN[ 8m]: vector=28, del=0, dm=physical, dest=0 (high, edge)
PIN[ 9m]: vector=29, del=0, dm=physical, dest=0 (high, edge)
PIN[10m]: vector=2a, del=0, dm=physical, dest=0 (high, edge)
PIN[11m]: vector=2b, del=0, dm=physical, dest=0 (high, edge)
PIN[12m]: vector=2c, del=0, dm=physical, dest=0 (high, edge)
PIN[13m]: vector=2d, del=0, dm=physical, dest=0 (high, edge)
PIN[14m]: vector=2e, del=0, dm=physical, dest=0 (high, edge)
PIN[15m]: vector=2f, del=0, dm=physical, dest=0 (high, edge)
PIN[16m]: vector=30, del=0, dm=physical, dest=0 (high, edge)
PIN[17m]: vector=31, del=0, dm=physical, dest=0 (high, edge)
PIN[18m]: vector=32, del=0, dm=physical, dest=0 (high, edge)
PIN[19m]: vector=33, del=0, dm=physical, dest=0 (high, edge)
PIN[20m]: vector=34, del=0, dm=physical, dest=0 (high, edge)
PIN[21m]: vector=35, del=0, dm=physical, dest=0 (high, edge)
PIN[22m]: vector=36, del=0, dm=physical, dest=0 (high, edge)
PIN[23m]: vector=37, del=0, dm=physical, dest=0 (high, edge)
IO-APIC: dual 8259: yes
IO-APIC: ovr[ 0] 00 -> 2
IO-APIC: ovr[ 1] 05 -> 5
IO-APIC: ovr[ 2] 09 -> 9
IO-APIC: ovr[ 3] 0a -> a
IO-APIC: ovr[ 4] 0b -> b
Allocate cpu_mem @ 0xfeffb000
Local APIC[00]: version=14 max_lvt=5
APIC ESR value before/after enabling: 00000000/00000000
Using the PIT (i8254) on IRQ 2 for scheduling
SERIAL ESC: allocated IRQ 4 for serial uart
SERIAL ESC: allocated IRQ 4 for serial uart
Not using serial hack in slow timer handler.
Absolute KIP Syscalls using: Sysenter
CPU[0:0]: GenuineIntel (6:3:3:0)[00000633] Model: QEMU Virtual CPU version 1.0,1 at 2660 MHz
32 KB L1 I Cache (8-way associative, 64 bytes per line)
32 KB L1 D Cache (8-way associative, 64 bytes per line)
2048 KB L2 U Cache (8-way associative, 64 bytes per line)
Freeing init code/data: 28672 bytes (7 pages)
Calibrating timer loop... done.
SIGMA0: Hello!
KIP @ 400000
Found Fiasco: KIP syscalls: yes
allocated 4KB for maintenance structures
SIGMA0: Dump of all resource maps
RAM:------------------------
[0:1000;9efff]
[0:10c000;2dcfff]
[4:2dd000;2ddfff]
[0:2de000;3fffff]
[0:465000;48ffff]
[4:490000;5ebfff]
[0:5ec000;122efff]
[4:122f000;1924fff]
[0:1925000;1d70efff]
IOMEM:----------------------
[0:0;fff]
[0:9f000;fffff]
[0:1fffd000;febfffff]
[0:fec01000;fedfffff]
[0:fee01000;ffffffff]
IO PORTS--------------------------
[0:0;fffffff]
KIP @ 400000
magic: 4be6344c
version: 87004444
sigma0 esp: 002dca50 eip: 0010020c
sigma1 esp: 00000000 eip: 00000000
root esp: 00000000 eip: 004e1fe8
MBI @ 2dd000
mod[3] [122f000,122f997) config
mod[4] [1230000,12746ac) init
mod[5] [1275000,12ac3b8) timer
mod[6] [12ad000,12fda00) nitpicker
mod[7] [12fe000,133e5f4) nit_fb
mod[8] [133f000,1383b74) uart_drv
mod[9] [1384000,16e32f8) l4android
mod[10] [16e4000,1778200) root-ginger.gz
mod[11] [1779000,17f06cc) nic_drv
mod[12] [17f1000,184380c) atapi_drv
mod[13] [1844000,188151c) pci_drv
mod[14] [1882000,18c0df8) ps2_drv
mod[15] [18c1000,1924128) vesa_drv
:ram_alloc: Allocator 5d5564 dump:
Block: [00001000,0000101c) size=0000001c avail=00000000 max_avail=00000000
Block: [0000101c,00001038) size=0000001c avail=00000000 max_avail=00000000
Block: [00001038,00001054) size=0000001c avail=00000000 max_avail=00000000
Block: [00001054,00001070) size=0000001c avail=00000000 max_avail=00000000
Block: [00001070,0000108c) size=0000001c avail=00000000 max_avail=00000000
Block: [0000108c,000010a8) size=0000001c avail=00000000 max_avail=00000000
Block: [000010a8,000010c4) size=0000001c avail=00000000 max_avail=00000000
Block: [000010c4,000010e0) size=0000001c avail=00000000 max_avail=00000000
Block: [000010e0,000010fc) size=0000001c avail=00000000 max_avail=1bdea000
Block: [000010fc,00001118) size=0000001c avail=00000000 max_avail=00000000
Block: [00001118,0009f000) size=0009dee8 avail=0009dee8 max_avail=0009dee8
Block: [0010c000,0010c01c) size=0000001c avail=00000000 max_avail=001d0fe4
Block: [0010c01c,002dd000) size=001d0fe4 avail=001d0fe4 max_avail=001d0fe4
Block: [002de000,002de01c) size=0000001c avail=00000000 max_avail=1bdea000
Block: [002de01c,002de038) size=0000001c avail=00000000 max_avail=00000000
Block: [002de038,00400000) size=00121fc8 avail=00121fc8 max_avail=00121fc8
Block: [00465000,0046501c) size=0000001c avail=00000000 max_avail=1bdea000
Block: [0046501c,00490000) size=0002afe4 avail=0002afe4 max_avail=0002afe4
Block: [005ec000,0122f000) size=00c43000 avail=00c43000 max_avail=1bdea000
Block: [01925000,1d70f000) size=1bdea000 avail=1bdea000 max_avail=1bdea000
=> mem_size=484347904 (461 MB) / mem_avail=484347512 (461 MB)
:region_alloc: Allocator 5d66d4 dump:
Block: [0009f000,0010c000) size=0006d000 avail=0006d000 max_avail=0006d000
Block: [00401000,00465000) size=00064000 avail=00064000 max_avail=0006d000
Block: [1d70f000,40000000) size=228f1000 avail=228f1000 max_avail=6ff00000
Block: [50000000,bff00000) size=6ff00000 avail=6ff00000 max_avail=6ff00000
Block: [bff01000,c0000000) size=000ff000 avail=000ff000 max_avail=000ff000
=> mem_size=2459701248 (2345 MB) / mem_avail=2459701248 (2345 MB)
:io_mem: Allocator 5d59c0 dump:
Block: [00000000,00001000) size=00001000 avail=00001000 max_avail=00001000
Block: [0009f000,0010c000) size=0006d000 avail=0006d000 max_avail=0006d000
Block: [00401000,00465000) size=00064000 avail=00064000 max_avail=e28f0fff
Block: [1d70f000,ffffffff) size=e28f0fff avail=e28f0fff max_avail=e28f0fff
=> mem_size=3801886719 (3625 MB) / mem_avail=3801886719 (3625 MB)
:io_port: Allocator 5d5e1c dump:
Block: [00000000,00010000) size=00010000 avail=00010000 max_avail=00010000
=> mem_size=65536 (0 MB) / mem_avail=65536 (0 MB)
:irq: Allocator 5d6278 dump:
Block: [00000000,00000100) size=00000100 avail=00000100 max_avail=00000100
=> mem_size=256 (0 MB) / mem_avail=256 (0 MB)
:rom_fs: Rom_fs 5d6f88 dump:
Rom: [00400000,00401000) l4v2_kip
Rom: [01230000,012746ac) init
Rom: [0122f000,0122f997) config
Rom: [017f1000,0184380c) atapi_drv
Rom: [01384000,016e32f8) l4android
Rom: [00400000,00401000) kip
Rom: [012ad000,012fda00) nitpicker
Rom: [012fe000,0133e5f4) nit_fb
Rom: [01779000,017f06cc) nic_drv
Rom: [01275000,012ac3b8) timer
Rom: [01882000,018c0df8) ps2_drv
Rom: [01844000,0188151c) pci_drv
Rom: [016e4000,01778200) root-ginger.gz
Rom: [0133f000,01383b74) uart_drv
Rom: [018c1000,01924128) vesa_drv
:core ranges: Allocator 5d993c dump:
Block: [00001000,0009f000) size=0009e000 avail=0009e000 max_avail=0009e000
Block: [0010c000,002dd000) size=001d1000 avail=001d1000 max_avail=001d1000
Block: [002de000,00400000) size=00122000 avail=00122000 max_avail=1d2aa000
Block: [00465000,1d70f000) size=1d2aa000 avail=1d2aa000 max_avail=1d2aa000
=> mem_size=493072384 (470 MB) / mem_avail=493072384 (470 MB)
int main(): --- create local services ---
int main(): --- start init ---
int main(): transferred 461 MB to init
int main(): --- init created, waiting for exit condition ---
[init] Could not open file "ld.lib.so"
[init -> l4android] Booting L4Linux ...
[init -> l4android] ======> L4Linux 2.6 starting... <========
[init -> l4android] Linux version 3.0.0-l4-g90ca43b-dirty (ivan@ivan) (gcc version 4.6.1 (GCC) ) #1 Tue May 15 18:25:55 MSK 2012
[init -> l4android] Binary name: vmlinux
[init -> l4android] Linux kernel command line (3 args): mem=128M console=ttyS0 l4x_rd=root-ginger.gz
[init -> l4android] CPU mapping (l:p)[1]: 0:0
[init -> l4android] Image: 00401000 - 008cc000 [4908 KiB].
[init -> l4android] Areas: Text: 00401000 - 00701000 [3072kB] (a bit longer)
[init -> l4android] Data: 00701000 - 00725174 [144kB]
[init -> l4android] Initdata: 00737000 - 0075e000 [156kB]
[init -> l4android] BSS: 0075e000 - 008bc000 [1400kB]
[init -> l4android] l4util_cpu_capabilities: Not implemented yet!
[init -> l4android] gs=43 fs=43
[init -> l4android] l4io_get_root_device: Not implemented yet!
[init -> l4android] Device scan:
[init -> l4android] l4io_iterate_devices: Not implemented yet!
[init -> l4android] l4x_fiasco_gdt_entry_offset = 9
[init -> l4android] int l4re_rm_attach(void**, long unsigned int, long unsigned int, Fiasco::l4re_ds_t, Fiasco::l4_addr_t, unsigned char): start=bffff000 size=1000 flags=20 mem=203000 offs=0 align=c
[init -> l4android] int l4re_rm_attach(void**, long unsigned int, long unsigned int, Fiasco::l4re_ds_t, Fiasco::l4_addr_t, unsigned char): attached at bffff000
[init -> l4android] l4lx_thread_name_set: Not implemented yet!
[init -> pci_drv] PCI driver started
[init -> uart_drv] --- i8250 UART driver started ---
[init -> nic_drv] --- iPXE NIC driver started ---
[init -> l4android] L4lx::Region* L4lx::Region_manager::reserve_range(Genode::size_t, int, Genode::addr_t): attach done addr=3000!
[init -> input_drv] Detected ExPS/2 mouse - activating scroll-wheel and 5-button support.
[init -> input_drv] Using keyboard with scan code set 1 (xlate).
[init -> l4android] main thread will be c
[init -> l4android] l4x_register_pointer_section: addr = 00400000 size = 5029888
[init -> l4android] section-with-init: virt: 400000 to 8cbfff [4912 KiB]
[init -> l4android] Cannot determine physical address for dataspace Binary!
[init -> l4android] error: failed to get physical address for 400000.
[init -> l4android] l4x_linux_startup: thread c.
[init -> l4android] Main thread running, waiting...
[init -> l4android] main thread: received startup message.
[init -> l4android] thread=c000 cpu=0
[init -> l4android] l4x_setup_memory: Forcing superpages for main memory
[init -> l4android] l4re_global_env: 0
[init -> l4android] Main memory size: 128MB
[init -> l4android] int l4re_rm_reserve_area(Fiasco::l4_addr_t*, long unsigned int, unsigned int, unsigned char): *start=0 size=8000000 align=16 flags=20
[init -> l4android] L4lx::Region* L4lx::Region_manager::reserve_range(Genode::size_t, int, Genode::addr_t): attach done addr=8000000!
[init -> l4android] int l4re_rm_reserve_area(Fiasco::l4_addr_t*, long unsigned int, unsigned int, unsigned char): return 8000000
[init -> l4android] int l4re_rm_attach(void**, long unsigned int, long unsigned int, Fiasco::l4re_ds_t, Fiasco::l4_addr_t, unsigned char): start=8000000 size=8000000 flags=c0 mem=20e000 offs=0 align=17
unmapping of managed dataspaces not yet supported
[init -> l4android] int l4re_rm_attach(void**, long unsigned int, long unsigned int, Fiasco::l4re_ds_t, Fiasco::l4_addr_t, unsigned char): attached at 8000000
[init -> l4android] int l4re_rm_free_area(Fiasco::l4_addr_t): 8000000
[init -> l4android] Main memory: virt: 8000000 to fffffff [131072 KiB]
[init -> l4android] Main memory: Phys: 0x08000000 to 0x10000000, Size: 134217728
[init -> l4android] int l4re_rm_reserve_area(Fiasco::l4_addr_t*, long unsigned int, unsigned int, unsigned char): *start=10000000 size=8000000 align=16 flags=20
[init -> l4android] L4lx::Region* L4lx::Region_manager::reserve_range(Genode::size_t, int, Genode::addr_t): attach done addr=10000000!
[init -> l4android] int l4re_rm_reserve_area(Fiasco::l4_addr_t*, long unsigned int, unsigned int, unsigned char): return 10000000
[init -> l4android] int l4re_rm_reserve_area(Fiasco::l4_addr_t*, long unsigned int, unsigned int, unsigned char): *start=100000 size=1a000 align=c flags=20
[init -> l4android] L4lx::Region* L4lx::Region_manager::reserve_range(Genode::size_t, int, Genode::addr_t): attach done addr=100000!
[init -> l4android] int l4re_rm_reserve_area(Fiasco::l4_addr_t*, long unsigned int, unsigned int, unsigned char): return 100000
[init -> l4android] Filling lower ptabs...
[init -> l4android] Done (0 entries).
[init -> l4android] l4x_register_pointer_section: addr = 00400000 size = 5029888
[init -> l4android] end: virt: 400000 to 8cbfff [4912 KiB]
[init -> l4android] Cannot determine physical address for dataspace Binary!
[init -> l4android] error: failed to get physical address for 400000.
[init -> l4android] l4x_rd_path: root-ginger.gz
[init -> l4android] Loading: root-ginger.gz
[init -> l4android] const l4re_env_cap_entry_t* l4re_get_env_cap_l(const char*, unsigned int, const l4re_env_t*): name=root-ginger.gz l=e
[init -> fb_drv] Found: VESA BIOS version 2.0
[init -> fb_drv] OEM: VGABIOS Cirrus extension
[init -> l4android] int l4re_rm_attach(void**, long unsigned int, long unsigned int, Fiasco::l4re_ds_t, Fiasco::l4_addr_t, unsigned char): start=0 size=95000 flags=a1 mem=215000 offs=0 align=c
[init -> l4android] int l4re_rm_attach(void**, long unsigned int, long unsigned int, Fiasco::l4re_ds_t, Fiasco::l4_addr_t, unsigned char): attached at 280000
[init -> l4android] INITRD: Size of RAMdisk is 596KiB
[init -> l4android] RAMdisk from 00280000 to 00315000 [596KiB]
[init -> l4android] WARNING: Unknown rdmsr: 00000186 at 73e03c
[init -> l4android] WARNING: Unknown rdmsr: 00000187 at 73e03c
[init -> l4android] WARNING: Unknown wrmsr: 000000c1 at 73e0ba
[init -> l4android] WARNING: Unknown rdmsr: 000000c1 at 73e0cc
[init -> l4android] int l4re_rm_detach(void*): addr=280000
[init -> fb_drv] Found: physical frame buffer at 0xfc000000 size: 0x00400000
[init -> fb_drv] Framebuffer::Session_component::Session_component(unsigned int, unsigned int, unsigned int, Genode::Dataspace_capability, bool): use buf size 614400
[init -> fb_drv] using buffered output
[init -> nitpicker] framebuffer is 640x480@1
[init -> nitpicker] Could not open file "config"
[init -> nitpicker] Could not obtain config file
[init -> nitpicker] create session with args: fb_width=640, fb_height=480, fb_format=1, label="Android", ram_quota=622592
[init -> Android] using xywh=(0,0,640,480) refresh_rate=25
[init -> atapi_drv] IDE 0 Device 0: ATA IRQ: 14
[init -> atapi_drv] Found IDE Bus Master (Vendor ID: 8086 Device ID: 7010 Class: 00010180)
[init -> atapi_drv] Bus master interface base addr: 0000c040 (I/O) secondary (no) (supported)
[init -> atapi_drv] UDMA Modes supported:
[init -> atapi_drv] 0 and below: yes enabled: no
[init -> atapi_drv] 1 and below: yes enabled: no
[init -> atapi_drv] 2 and below: yes enabled: no
[init -> atapi_drv] 3 and below: yes enabled: no
[init -> atapi_drv] 4 and below: yes enabled: no
[init -> atapi_drv] 5 and below: yes enabled: yes
[init -> atapi_drv] PRD base at 007af000 (physical) at 00002000 (virtual)
[init -> atapi_drv] Device initialized! Enabling interrupts ...
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment