Adam Lackorzynski | 1 Feb 14:25
Picon
Favicon

Re: Sharing I/O Memory

Hi,

On Tue Jan 31, 2012 at 21:55:30 -0000, Wesley Miaw wrote:
> Everything seems to be working now that I've defined the RAM as a region
> in the Io server's configuration file. After requesting access via
> l4io_request_iomem_region() in both my tasks they can read/write the
> memory. Thanks.

Ok.

> > Generally multiple tasks can have access to the same memory, be it RAM
> > or device memory does not matter. Doing map/unmap operations for each
> > request also sounds expensive to do. I think io is the one to look into,
> > moe has no business with non-ram memory.
> 
> This confuses me. I thought part of sigma's job was to hand out memory as
> needed, and only to do so to one task. I remember seeing something in the
> sigma library code that checked who the owner of the memory was before
> returning it. Otherwise what prevents one task from clobbering another
> task? Or does that only apply to memory that is indirectly
> requested/allocated like via new/malloc?

sigma0's policy on handing out memory is a simple FCFS, so sharing is
typically implemented using a third component (e.g. moe). This
third component will allow for memory sharing given some configuration
and then it is up to the tasks to get that sharing right.
In sigma0 there's no way to remove a connection between a client and a
page once it is made, i.e. this is up to other components.

Adam
(Continue reading)

Riccardo Cecolin | 6 Feb 18:29
Picon

L4Linux direct access

I'm trying to make a l4linux system access the vga directly without mag, l4con or fbdrv. I compiled it using the default configuration with virtual pci bus enabled, x86-mp_vPCI_defconfig.
I'm currently trying on qemu, i see that l4linux recognizes the pci devices and is able to mount the root fs from /dev/hda (i also tried with a ramdisk with same results) and loads the driver of the vga (vgaarb: device added: PCI:0000:00:01.0,decodes=io+mem,owns=io+mem,locks=none).
But then i get a kernel panic because init (/bin/bash) exited (or didn't execute):

l4linux | EX: 0: pc = 0041176a sp = 07829fac trapno = 0xd err/pfa = 0x402
Kernel panic - not syncing: Attempted to kill init!
Pid: 1, comm: bash Not tainted 3.0.0-l4-svn23 #35

Looking at the binary at 0x41176a i see that the kernel is trying to execute execve but fails with trap 13.

... /src/l4linux/arch/l4/kernel/arch-x86/../../../x86/kernel/sys_i386_32.c:36
  411765:    b8 0b 00 00 00           mov    $0xb,%eax
  41176a:    cd 80                    int    $0x80

My config files are the following ones and i also attached a full log, where is my setup wrong?

------ linux-x2.cfg ------
loader = L4.default_loader;
local lxname = "vmlinuz";
vbus_l4linux = loader:new_channel();

loader:start({
  caps = {
    sigma0  = L4.cast(L4.Proto.Factory, L4.Env.sigma0):create(L4.Proto.Sigma0);
    icu = L4.Env.icu;
    l4linux = vbus_l4linux:svr();
  },
  log = { "io", "red" },
}, "rom/io rom/x86-legacy.devs rom/l4lx-x86-x2.io");
   
loader:start({
  caps = {
    log = L4.Env.log:m("rws");
    vbus = vbus_l4linux;
  },   
  l4re_dbg = L4.Dbg.Info,
  log = { "l4linux", "blue" },
}, "rom/" .. lxname .. " mem=120M earlyprintk=yes initcall_debug=1 showpfexc=1 root=/dev/hda init=/bin/bash", "allow_cli","all_sects_writable","allow_vga");

------ l4lx-x86-x2.io ------
l4linux => new System_bus()
{
  PCI0 => new PCI_bus()
  {
    host_bridge_dummy => new PCI_dummy_device();

    pci_gfx[] => wrap(hw-root.match("PCI/CC_03"));
    pci_l4x[] => wrap(hw-root.match("PCI/CC_02,PCI/CC_01,PCI/CC_04"));
  }

  vgadev => wrap(hw-root.VGA);
  ps2dev => wrap(hw-root.PS2);
}

L4 Bootstrapper
  Build: #1 Fri Feb  3 12:59:44 CET 2012, x86-32, 4.4.5
  RAM: 0000000000000000 - 000000000009f3ff: 637kB
  RAM: 0000000000100000 - 0000000012bfcfff: 306164kB
  Total RAM: 299MB
  Moving 11 modules to 1100000 with offset dee000
  moving module 11 { 15bd000-25bd000 } -> { 23ab000-33ab000 }
  moving module 10 { 10d7000-15bcc8a } -> { 1ec5000-23aac8a }
  moving module 09 { 10d6000-10d612b } -> { 1ec4000-1ec412b }
  moving module 08 { 10d5000-10d53b7 } -> { 1ec3000-1ec33b7 }
  moving module 07 { 86a000-10d4428 } -> { 1658000-1ec2428 }
  moving module 06 { 869000-869278 } -> { 1657000-1657278 }
  moving module 05 { 66d000-868154 } -> { 145b000-1656154 }
  moving module 04 { 57e000-66cd17 } -> { 136c000-145ad17 }
  moving module 03 { 3ba000-57d9ee } -> { 11a8000-136b9ee }
  moving module 02 { 379000-3b9995 } -> { 1167000-11a7995 }
  moving module 01 { 312000-378a40 } -> { 1100000-1166a40 }
  Scanning /fiasco -serial_esc
  Scanning /sigma0
  Scanning /moe rom/linux-x2.cfg
  Bootloader MMAP:
    [        0,     9f400) RAM (1)
    [    9f400,     a0000) reserved (2)
    [    f0000,    100000) reserved (2)
    [   100000,  12bfd000) RAM (1)
    [ 12bfd000,  12c00000) reserved (2)
    [ fffbc000, 100000000) reserved (2)
  Relocated mbi to [0x2dd000-0x2dd18e]
  Loading /fiasco
  Loading /sigma0
  Loading /moe
  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,    10a1b3] {     a1b4} Sigma0 /sigma0
    [   140000,    18b0df] {    4b0e0} Root   /moe
    [   2d0000,    2e13e7] {    113e8} Boot   bootstrap
    [   2dd000,    2dd28b] {      28c} Root   Multiboot info
    [   300000,    38ffff] {    90000} Kern   /fiasco
    [   400000,    46bfff] {    6c000} Kern   /fiasco
    [  136c000,   33aafff] {  203f000} Root   Modules Memory
    [ 12bfd000,  12bfffff] {     3000} Arch   BIOS
    [ fffbc000,  ffffffff] {    44000} Arch   BIOS
  API Version: (87) experimental
  Sigma0 config    ip:001001dc sp:002dca38
  Roottask config  ip:001401c4 sp:00000000
  Starting kernel /fiasco at 00300824

Welcome to Fiasco.OC (ia32)!
L4/Fiasco.OC ia32 microkernel (C) 1998-2011 TU Dresden
Rev: r38 compiled with gcc 4.4.5 for Intel Pentium Pro    []
Build: #5 Mon Feb  6 17:25:11 CET 2012

Performance-critical config option(s) detected:
  CONFIG_NDEBUG is off
  CONFIG_FINE_GRAINED_CPUTIME is on

Superpages: yes
Kmem:: cpu page at 11406000 (4096Bytes)
ACPI-Init
ACPI: RSDP[0xf8850]    r00 OEM:BOCHS.
ACPI: RSDT[0x203fdd90]    r01 OEM:BOCHS. OEMTID:BXPCRSDT
ACPI: FACP[0x203ffe70]    r01 OEM:BOCHS. OEMTID:BXPCFACP
ACPI: SSDT[0x203fdef0]    r01 OEM:BOCHS. OEMTID:BXPCSSDT
ACPI: APIC[0x203fde10]    r01 OEM:BOCHS. OEMTID:BXPCAPIC
ACPI: HPET[0x203fddd0]    r01 OEM:BOCHS. OEMTID:BXPCHPET
IO-APIC: MADT = 0x203fde10
IO-APIC[ 0]: struct: 0x203fde44 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 <at> 0xfdbfa000
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.

KERNEL: Warning: Buddy::alloc: Size mismatch: 1c000 v 20000
Absolute KIP Syscalls using: int 0x30
CPU[0:0]: GenuineIntel (6:2:3:0)[00000623] Model: QEMU Virtual CPU version 0.12.5 at 3309 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 <at> 400000
  Found Fiasco: KIP syscalls: yes
  allocated 4KB for maintenance structures
SIGMA0: Dump of all resource maps
RAM:------------------------
[0:1000;9efff]
[0:10b000;13ffff]
[4:140000;18bfff]
[0:18c000;2dcfff]
[4:2dd000;2ddfff]
[0:2de000;3fffff]
[0:465000;136bfff]
[4:136c000;33aafff]
[0:33ab000;11404fff]
IOMEM:----------------------
[0:0;fff]
[0:9f000;fffff]
[0:12bfd000;febfffff]
[0:fec01000;fedfffff]
[0:fee01000;ffffffff]
IO PORTS--------------------------
[0:0;fffffff]
MOE: Hello world
MOE: found 248476 KByte free memory
MOE: found RAM from 1000 to 11405000
MOE: allocated 276 KByte for the page array <at> 0x1000
MOE: virtual user address space [0-bfffffff]
MOE: rom name space cap -> [C:501000]
  BOOTFS: [136c000-145ad17] [C:503000] l4re
  BOOTFS: [145b000-1656154] [C:504000] ned
  BOOTFS: [1657000-1657278] [C:505000] linux-x2.cfg
  BOOTFS: [1658000-1ec2428] [C:506000] io
  BOOTFS: [1ec3000-1ec33b7] [C:507000] x86-legacy.devs
  BOOTFS: [1ec4000-1ec412b] [C:508000] l4lx-x86-x2.io
  BOOTFS: [1ec5000-23aac8a] [C:509000] vmlinuz
  BOOTFS: [23ab000-33ab000] [C:50a000] drops-rd.rd
MOE: cmdline: /moe rom/linux-x2.cfg
MOE: Starting: rom/ned rom/linux-x2.cfg
MOE: loading 'rom/ned'
Ned says: Hi World!
Ned: loading file: 'rom/linux-x2.cfg'
io      | Io service
io      | Find root Pointer
io      | Find root Pointer: f8850
io      | ACPI: RSDP 0xf8850 00014 (v00 BOCHS )
io      | ACPI: RSDT 0x12bfdd90 00034 (v01 BOCHS  BXPCRSDT 00000001 BXPC 00000001)
io      | ACPI: FACP 0x12bffe70 00074 (v01 BOCHS  BXPCFACP 00000001 BXPC 00000001)
io      | ACPI: DSDT 0x12bfdf30 01EC4 (v01   BXPC   BXDSDT 00000001 INTL 20100528)
io      | ACPI: FACS 0x12bffe00 00040
io      | ACPI: SSDT 0x12bfdef0 00037 (v01 BOCHS  BXPCSSDT 00000001 BXPC 00000001)
io      | ACPI: APIC 0x12bfde10 00072 (v01 BOCHS  BXPCAPIC 00000001 BXPC 00000001)
io      | ACPI: HPET 0x12bfddd0 00038 (v01 BOCHS  BXPCHPET 00000001 BXPC 00000001)
io      | Parsing all Control Methods:
io      | Table [DSDT](id 0001) - 254 Objects with 48 Devices 82 Methods 5 Regions
io      | Parsing all Control Methods:
io      | Table [SSDT](id 0002) - 1 Objects with 0 Devices 0 Methods 0 Regions
io      |  tbxface-0601 [02] TbLoadNamespace       : ACPI Tables successfully acquired
io      | evxfevnt-0184 [02] Enable                : Transition to ACPI mode successful
io      | evgpeblk-1129 [04] EvCreateGpeBlock      : GPE 00 to 0F [_GPE] 2 regs on int 0x9
io      | /home/rkj/L4/fiasco-2012/src/l4/pkg/acpica/lib-acpi/src/osl-basic.cc:57:AcpiOsInstallInterruptHandler: UNINPLEMENTED
io      | Completing Region/Field/Buffer/Package initialization:.................
io      | Initialized 5/5 Regions 0/0 Fields 8/8 Buffers 4/4 Packages (264 nodes)
io      | Initializing Device/Processor/Thermal objects by executing _INI methods:
io      | Executed 0 _INI methods requiring 0 _STA executions (examined 51 objects)
io      | evgpeblk-1234 [03] EvInitializeGpeBlock  : Found 0 Wake, Enabled 16 Runtime GPEs in this block
io      | ACPICA-Version:20091214, System in ACPI MODE, 32bit timer
io      | WARNING: device 'S2__' already assigned to an other virtual bus.
io      | WARNING: device 'PS2' already assigned to an other virtual bus.
io      | Ready. Waiting for request.
l4linux | PH  0 (t:        1) offs=00001000 vaddr=00400000 vend=007ba000
l4linux |                     phys=00400000 ephys=007ba000
l4linux |                     f_sz=003ba000 memsz=003ba000 flgs=r-x
l4linux | PH  1 (t:        1) offs=003bb000 vaddr=007ba000 vend=0091b000
l4linux |                     phys=007ba000 ephys=0091b000
l4linux |                     f_sz=0006e000 memsz=00161000 flgs=rw-
l4linux | PH  2 (t:        4) offs=002e8b0c vaddr=006e7b0c vend=006e7b30
l4linux |                     phys=006e7b0c ephys=006e7b30
l4linux |                     f_sz=00000024 memsz=00000024 flgs=---
l4linux | Starting binary at 0x400000, argc=8 argv=0x80007f88 *argv=0xb1007ff4 argv0=rom/vmlinuz
l4linux | External resolver is at 0xa80006e0
l4linux | ======> L4Linux 2.6 starting... <========
l4linux | Linux version 3.0.0-l4-svn23 (rkj <at> harpoon) (gcc version 4.4.5 (Debian 4.4.5-8) ) #35 SMP Mon Feb 6 17:50:12 CET 2012
l4linux | Binary name: rom/vmlinuz
l4linux | Linux kernel command line (7 args): mem=120M earlyprintk=keep initcall_debug=1 showpfexc=1 root=/dev/hda init=/bin/bash allow_cli
l4linux | vcpu 0 gets tamer 0
l4linux | CPU mapping (l:p)[1]: 0:0
l4linux | Image: 00400000 - 0091b000 [5228 KiB].
l4linux | Areas: Text:     00400000 - 007ba000 [3816kB] (a bit longer)
l4linux |        Data:     007ba000 - 007eb2a0 [196kB]
l4linux |        Initdata: 007ec000 - 00822000 [216kB]
l4linux |        BSS:      00828000 - 0090b000 [908kB]
l4linux | gs=43   fs=43
l4linux | l4lx_thread_create: Created thread 415 (tamer0) (u:b3000400, sp:00849034)
l4linux | Tamer0 is 415
l4linux | Using tamed mode.
l4linux | l4lx_thread_create: Created thread 416 (nop) (u:b3000600, sp:00830418)
l4linux | Device scan:
l4linux |   Device:
l4linux |     MEM: f0000000 - f1ffffff
l4linux |     MEM: f2000000 - f2000fff
l4linux |   Device:
l4linux |     PORT: 000001f0 - 000001f7
l4linux |     PORT: 000003f6 - 000003f6
l4linux |     IRQ: 0000000e - 0000000e
l4linux |     PORT: 00000170 - 00000177
l4linux |     PORT: 00000376 - 00000376
l4linux |     IRQ: 0000000f - 0000000f
l4linux |     PORT: 0000c000 - 0000c00f
l4linux |   Device:
l4linux |     IRQ: 0000000b - 0000000b
l4linux |     PORT: 0000c100 - 0000c1ff
l4linux |     MEM: f2020000 - f20200ff
l4linux |   Device: PNP0900
l4linux |     PORT: 000003b0 - 000003bf
l4linux |     PORT: 000003c0 - 000003df
l4linux |     MEM: 000a0000 - 000bffff
l4linux |   Device: PNP0303
l4linux |     PORT: 00000060 - 00000060
l4linux |     PORT: 00000064 - 00000064
l4linux |     IRQ: 00000001 - 00000001
l4linux |     IRQ: 0000000c - 0000000c
l4linux | l4x_fiasco_gdt_entry_offset = 9
l4linux | rtc not found
l4linux | WARNING: RTC server does not seem there!
l4linux | l4lx_thread_create: Created thread 418 (cpu0) (u:b3000800, sp:007bbff4)
l4linux | main thread will be 418
l4linux | l4x_register_pointer_section: addr = 007ba000 size = 1445888
l4linux | section-with-init: virt: 0x7ba000 to 0x91afff [1412 KiB]
l4linux | section-with-init: Phys: 0x0081f000 to 0x00980000, Size:  1445888
l4linux | l4x_linux_startup: thread 418.
l4linux | Main thread running, waiting...
l4linux | main thread: received startup message.
l4linux | l4x_setup_memory: Forcing superpages for main memory
l4linux | l4re_global_env: 0xb1007ef4
l4linux | Main memory size: 120MB
l4linux |     Main memory: virt: 0xc00000 to 0x83fffff [122880 KiB]
l4linux |     Main memory: Phys: 0x03400000 to 0x0ac00000, Size: 125829120
l4linux | Filling lower ptabs...
l4linux | Page fault: addr = 00002002 pc = 007eee2a (rw)
l4linux | Page fault: addr = 009fa002 pc = 007eee2a (rw)
l4linux | Done (1532 entries).
l4linux | l4x_register_pointer_section: addr = 007ba000 size = 1445888
l4linux |             end: virt: 0x7ba000 to 0x91afff [1412 KiB]
l4linux |             end: Phys: 0x0081f000 to 0x00980000, Size:  1445888
l4linux | l4lx_thread_create: Created thread 41d (l4lx.ipi0) (u:b3000a00, sp:0089fff4)
Linux version 3.0.0-l4-svn23 (rkj <at> harpoon) (gcc version 4.4.5 (Debian 4.4.5-8) ) #35 SMP Mon Feb 6 17:50:12 CET 2012
BIOS-provided physical RAM map:
 L4Lx-Memory: 0000000000000000 - 0000000000400000 (reserved)
 L4Lx-Memory: 0000000000400000 - 000000000091b000 (usable)
 L4Lx-Memory: 000000000091b000 - 0000000000c00000 (unusable)
 L4Lx-Memory: 0000000000c00000 - 0000000008400000 (usable)
Notice: NX (Execute Disable) protection cannot be enabled: non-PAE kernel!
last_pfn = 0x8400 max_arch_pfn = 0x100000
init_memory_mapping: 0000000000000000-0000000008400000
132MB LOWMEM available.
  mapped low ram: 0 - 08400000
  low ram: 0 - 08400000
Zone PFN ranges:
  DMA      0x00000400 -> 0x00000000
  Normal   0x00000000 -> 0x00008400
Movable zone start PFN for each node
early_node_map[2] active PFN ranges
    0: 0x00000400 -> 0x0000091b
    0: 0x00000c00 -> 0x00008400
Using APIC driver default
Intel MultiProcessor Specification v1.0
    Virtual Wire compatibility mode.
Processors: 1
SMP: Allowing 1 CPUs, 0 hotplug CPUs
Allocating PCI resources starting at 8400000 (gap: 8400000:f7c00000)
setup_percpu: NR_CPUS:8 nr_cpumask_bits:8 nr_cpu_ids:1 nr_node_ids:1
PERCPU: Embedded 11 pages/cpu <at> 07c00000 s20928 r0 d24128 u4194304
Built 1 zonelists in Zone order, mobility grouping on.  Total pages: 31771
Kernel command line: mem=120M earlyprintk=keep initcall_debug=1 showpfexc=1 root=/dev/hda init=/bin/bash allow_cli
console [earlykdb0] enabled
PID hash table entries: 512 (order: -1, 2048 bytes)
Dentry cache hash table entries: 16384 (order: 4, 65536 bytes)
Inode-cache hash table entries: 8192 (order: 3, 32768 bytes)
Initializing CPU#0
Memory: 121760k/135168k available (2973k kernel code, 6348k reserved, 1039k data, 216k init, 0k highmem)
virtual kernel memory layout:
    fixmap  : 0x00100000 - 0x001e7000   ( 924 kB)
    vmalloc : 0x08400000 - 0x10400000   ( 128 MB)
    lowmem  : 0x00000000 - 0x08400000   ( 132 MB)
      .init : 0x007ec000 - 0x00822000   ( 216 kB)
      .data : 0x006e7548 - 0x007eb2a0   (1039 kB)
      .text : 0x00400000 - 0x006e7548   (2973 kB)
Hierarchical RCU implementation.
NR_IRQS:512
l4lx_irq_init: l4lx_irq_max = 512
l4linux | rtc not found
Console: colour dummy device 80x25
console [tty0] enabled
l4lx_irq_timer_startup(0)
l4linux | l4lx_thread_create: Created thread 41f (timer.i0) (u:b3000c00, sp:008a1ff4)
Detected 3309.724 MHz processor.
Calibrating delay loop (skipped), value calculated using timer frequency.. 6619.44 BogoMIPS (lpj=33097240)
pid_max: default: 32768 minimum: 301
Mount-cache hash table entries: 512
SMP alternatives: switching to UP code
timer_irq_thread: Starting timer IRQ thread.
Freeing SMP alternatives: 24k freed
CPU0: Intel QEMU Virtual CPU version 0.12.5 stepping 03
Performance Events: unsupported p6 CPU model 2 no PMU driver, software events only.
Brought up 1 CPUs
Total of 1 processors activated (6619.44 BogoMIPS).
NET: Registered protocol family 16
bio: create slab <bio-0> at 0
vgaarb: loaded
SCSI subsystem initialized
PCI: L4 root bridge is device 17dd0
vgaarb: device added: PCI:0000:00:01.0,decodes=io+mem,owns=io+mem,locks=none
PCI: Using L4-IO for IRQ routing
pci 0000:00:00.0: No interrupt pin configured for device 0000:00:00.0
pci 0000:00:01.0: No interrupt pin configured for device 0000:00:01.0
pci 0000:00:02.0: No interrupt pin configured for device 0000:00:02.0
L4IRQ: set irq type of 11 to 4
pci 0000:00:03.0: PCI INT A -> GSI 11 (level, high) -> IRQ 11
Switching to clocksource l4kipclk
NET: Registered protocol family 2
IP route cache hash table entries: 1024 (order: 0, 4096 bytes)
TCP established hash table entries: 4096 (order: 3, 32768 bytes)
TCP bind hash table entries: 4096 (order: 3, 32768 bytes)
TCP: Hash tables configured (established 4096 bind 4096)
TCP reno registered
UDP hash table entries: 128 (order: 0, 4096 bytes)
UDP-Lite hash table entries: 128 (order: 0, 4096 bytes)
NET: Registered protocol family 1
RPC: Registered named UNIX socket transport module.
RPC: Registered udp transport module.
RPC: Registered tcp transport module.
RPC: Registered tcp NFSv4.1 backchannel transport module.
platform rtc_cmos: registered platform RTC device (no PNP device found)
msgmni has been set to 237
io scheduler noop registered
io scheduler deadline registered
io scheduler cfq registered (default)
l4fb l4fb.0: look for capability 'fb' as goos session
l4fb l4fb.0: init failed err=-2
initcall l4fb_init+0x0/0x17b returned with error code -2
L4 shared mem serial driver
brd: module loaded
l4bdds: No name given, not starting.
Uniform Multi-Platform E-IDE driver
piix 0000:00:02.0: IDE controller (0x8086:0x7010 rev 0x00)
pci 0000:00:02.0: No interrupt pin configured for device 0000:00:02.0
piix 0000:00:02.0: not 100% native mode: will probe irqs later
    ide0: BM-DMA at 0xc000-0xc007
    ide1: BM-DMA at 0xc008-0xc00f
l4linux | cpu0: utcb=0xb3000800 418
l4linux | l4lx_thread_create: Created thread 420 (idler0) (u:b3000e00, sp:008a3ff8)
hda: QEMU HARDDISK, ATA DISK drive
Switching to clocksource tsc
hda: MWDMA2 mode selected
hdc: QEMU DVD-ROM, ATAPI CD/DVD-ROM drive
hdc: MWDMA2 mode selected
l4lx_irq_dev_startup: creating IRQ thread for 14 (IRQ-cap 421000)
l4linux | l4lx_thread_create: Created thread 422 (IRQ14) (u:10400000, sp:008a5ff4)
l4linux | irq_thread: Started IRQ thread for IRQ 14
ide0 at 0x1f0-0x1f7,0x3f6 on irq 14
l4lx_irq_dev_startup: creating IRQ thread for 15 (IRQ-cap 423000)
l4linux | l4lx_thread_create: Created thread 424 (IRQ15) (u:10400200, sp:008a7ff4)
l4linux | irq_thread: Started IRQ thread for IRQ 15
ide1 at 0x170-0x177,0x376 on irq 15
ide_generic: please use "probe_mask=0x3f" module parameter for probing all legacy ISA IDE ports
ide-gd driver 1.18
hda: max request size: 512KiB
hda: 32768 sectors (16 MB) w/256KiB Cache, CHS=32/255/63
hda: cache flushes supported
 hda: unknown partition table
ide-cd driver 5.00
ide-cd: hdc: ATAPI 4X CD-ROM drive, 512kB Cache
cdrom: Uniform CD-ROM driver Revision: 3.20
e1000: Intel(R) PRO/1000 Network Driver - version 7.3.21-k8-NAPI
e1000: Copyright (c) 1999-2006 Intel Corporation.
pcnet32: pcnet32.c:v1.35 21.Apr.2008 tsbogend <at> alpha.franken.de
mousedev: PS/2 mouse device common for all mice
TCP cubic registered
NET: Registered protocol family 17
Registering the dns_resolver key type
initcall lapic_insert_resource+0x0/0x35 returned with error code -1
Using IPI No-Shortcut mode
async_waiting <at> 1
async_continuing <at> 1 after 0 usec
EXT2-fs (hda): warning: mounting unchecked fs, running e2fsck is recommended
VFS: Mounted root (ext2 filesystem) on device 3:0.
async_waiting <at> 1
async_continuing <at> 1 after 0 usec
Freeing unused kernel memory: 216k freed
l4linux | EX: 0: pc = 0041176a sp = 07829fac trapno = 0xd err/pfa = 0x402
Kernel panic - not syncing: Attempted to kill init!
Pid: 1, comm: bash Not tainted 3.0.0-l4-svn23 #35
Call Trace:
 [<006e4a29>] panic+0x57/0x14b
 [<0042ddd1>] do_exit+0x601/0x6c0
 [<004839e2>] ? do_munmap+0x202/0x290
 [<0042df60>] ? sys_exit_group+0x20/0x20
 [<0042df73>] sys_exit+0x13/0x20
 [<00406b13>] l4x_user_dispatcher+0xdd3/0x22c0
 [<00409702>] l4_kernelinternal_execve+0x52/0xe0
 [<00400569>] in_kernel_int80_helper+0x9/0x20
 [<0041176c>] ? kernel_execve+0x1c/0x30
 [<004001b7>] run_init_process+0x17/0x20
 [<00400251>] init_post+0x91/0xb0
 [<007ec1d5>] kernel_init+0x10e/0x116
 [<007ec0c7>] ? parse_early_options+0x25/0x25
 [<00409a99>] kernel_thread_start+0x29/0x30
panic: going to sleep forever, bye
l4linux | panic: going to sleep forever, bye

_______________________________________________
l4-hackers mailing list
l4-hackers <at> os.inf.tu-dresden.de
http://os.inf.tu-dresden.de/mailman/listinfo/l4-hackers
Adam Lackorzynski | 6 Feb 23:32
Picon
Favicon

Re: L4Linux direct access

Hi,

On Mon Feb 06, 2012 at 18:29:37 +0100, Riccardo Cecolin wrote:
> I'm trying to make a l4linux system access the vga directly without mag,
> l4con or fbdrv. I compiled it using the default configuration with virtual
> pci bus enabled, x86-mp_vPCI_defconfig.
> I'm currently trying on qemu, i see that l4linux recognizes the pci devices
> and is able to mount the root fs from /dev/hda (i also tried with a ramdisk
> with same results) and loads the driver of the vga (vgaarb: device added:
> PCI:0000:00:01.0,decodes=io+mem,owns=io+mem,locks=none).
> But then i get a kernel panic because init (/bin/bash) exited (or didn't
> execute):
> 
> l4linux | EX: 0: pc = 0041176a sp = 07829fac trapno = 0xd err/pfa = 0x402
> Kernel panic - not syncing: Attempted to kill init!
> Pid: 1, comm: bash Not tainted 3.0.0-l4-svn23 #35
> Call Trace:
>  [<006e4a29>] panic+0x57/0x14b
>  [<0042ddd1>] do_exit+0x601/0x6c0
>  [<004839e2>] ? do_munmap+0x202/0x290
>  [<0042df60>] ? sys_exit_group+0x20/0x20
>  [<0042df73>] sys_exit+0x13/0x20
>  [<00406b13>] l4x_user_dispatcher+0xdd3/0x22c0
>  [<00409702>] l4_kernelinternal_execve+0x52/0xe0
>  [<00400569>] in_kernel_int80_helper+0x9/0x20
>  [<0041176c>] ? kernel_execve+0x1c/0x30
>  [<004001b7>] run_init_process+0x17/0x20
>  [<00400251>] init_post+0x91/0xb0
>  [<007ec1d5>] kernel_init+0x10e/0x116
>  [<007ec0c7>] ? parse_early_options+0x25/0x25
>  [<00409a99>] kernel_thread_start+0x29/0x30

The excepion is completely normal, should be the exec for init/bash.
Looks like bash is exiting itself and as it's init, Linux stops. What's
on your 16MB disk? Is the bash statically linked? Or all shared libs
there? /dev/console there? Everything 32bits?

Adam
--

-- 
Adam                 adam <at> os.inf.tu-dresden.de
  Lackorzynski         http://os.inf.tu-dresden.de/~adam/
Riccardo Cecolin | 7 Feb 11:28
Picon

Re: L4Linux direct access

Hi,

I tried with the drops-rd.rd filesystem image found here: http://os.inf.tu-dresden.de/L4/LinuxOnL4/download/drops-rd.rd and with a debootstrap generated one of debian stable and they both hang there. The same images work fine if I boot l4linux with fbdrv and mag.  Everything 32 bit, bash is dynamically linked on the drops image as well as on the one i created. Libraries are in their place and /dev/console is there.
If instead of /bin/bash i let the default init process start I get a segfault at 405f24 (dispatch.c) and then repeated segfaults in 4109d5 (where i suppose it is trying to dump the stack).
I have been able to see this output poking with the VCPU option in the l4linux advanced configuration.

Riccardo

...
Freeing unused kernel memory: 220k freed
l4linux | EX: 0: pc = 0041173a sp = 07829fac trapno = 0xd err/pfa = 0x402
l4linux | EX: 0: pc = 0041173a sp = 079f9fc8 trapno = 0xd err/pfa = 0x402
l4linux | EX: 0: pc = 0041173a sp = 06e13fc8 trapno = 0xd err/pfa = 0x402
l4linux | EX: 0: pc = 0041173a sp = 06e17fc8 trapno = 0xd err/pfa = 0x402
l4linux | EX: 0: pc = 0041173a sp = 06e1bfc8 trapno = 0xd err/pfa = 0x402
l4linux | EX: 0: pc = 0041173a sp = 06e13fc8 trapno = 0xd err/pfa = 0x402
l4linux | EX: 0: pc = 0041173a sp = 06e17fc8 trapno = 0xd err/pfa = 0x402
l4linux | EX: 0: pc = 0041173a sp = 06e1bfc8 trapno = 0xd err/pfa = 0x402
l4linux | EX: 0: pc = 0041173a sp = 06dd9fc8 trapno = 0xd err/pfa = 0x402
l4linux | EX: 0: pc = 0041173a sp = 06e1dfc8 trapno = 0xd err/pfa = 0x402
l4linux | EX: 0: pc = 0041173a sp = 06e1ffc8 trapno = 0xd err/pfa = 0x402
l4linux | EX: 0: pc = 0041173a sp = 06dd9fc8 trapno = 0xd err/pfa = 0x402
l4linux | EX: 0: pc = 0041173a sp = 06e1dfc8 trapno = 0xd err/pfa = 0x402
l4linux | EX: 0: pc = 0041173a sp = 06e1ffc8 trapno = 0xd err/pfa = 0x402
l4linux | EX: 0: pc = 0041173a sp = 06e05fc8 trapno = 0xd err/pfa = 0x402
l4linux | EX: 0: pc = 0041173a sp = 06e13fc8 trapno = 0xd err/pfa = 0x402
l4linux | EX: 0: pc = 0041173a sp = 06dfdfc8 trapno = 0xd err/pfa = 0x402
l4linux | EX: 0: pc = 0041173a sp = 06e05fc8 trapno = 0xd err/pfa = 0x402
l4linux | EX: 0: pc = 0041173a sp = 06e11fc8 trapno = 0xd err/pfa = 0x402
l4linux | EX: 0: pc = 0041173a sp = 06dfdfc8 trapno = 0xd err/pfa = 0x402
l4linux | EX: 0: pc = 0041173a sp = 06dfffc8 trapno = 0xd err/pfa = 0x402
l4linux | EX: 0: pc = 0041173a sp = 06df9fc8 trapno = 0xd err/pfa = 0x402
l4linux | EX: 0: pc = 0041173a sp = 06e19fc8 trapno = 0xd err/pfa = 0x402
l4linux | EX: 0: pc = 0041173a sp = 06dfffc8 trapno = 0xd err/pfa = 0x402
l4linux | EX: 0: pc = 0041173a sp = 06df9fc8 trapno = 0xd err/pfa = 0x402
l4linux | EX: 0: pc = 0041173a sp = 06e19fc8 trapno = 0xd err/pfa = 0x402
l4linux | Page fault: addr = b69e097c pc = 00405f24 (ro)
l4linux | Non-resolvable page fault at b69e097c, ip 405f24.
l4linux | Page fault (non-resolved): pfa=b69e097c pc=405f24
l4linux | EX: 0: pc = 00405f24 sp = 06e1df58 trapno = 0xe err/pfa = 0xb69e097c r
l4linux | Non-resolvable page fault at b69e097c, ip 405f24.
Die message: Trap: 14
l4linux | Page fault: addr = b69e097c pc = 004109d5 (ro)
l4linux | Non-resolvable page fault at b69e097c, ip 4109d5.
l4linux | Page fault (non-resolved): pfa=b69e097c pc=4109d5
l4linux | EX: 0: pc = 004109d5 sp = 06e1def0 trapno = 0xe err/pfa = 0xb69e097c r
l4linux | Non-resolvable page fault at b69e097c, ip 4109d5.

src/l4linux/arch/l4/kernel/arch-x86/dispatch.c:395
  405f21:    8b 4d 98                 mov    -0x68(%ebp),%ecx
  405f24:    64 a1 0c 0e 82 00        mov    %fs:0x820e0c,%eax
  405f2a:    8b 04 85 40 bf 7e 00     mov    0x7ebf40(,%eax,4),%eax
  405f31:    c7 04 08 10 00 00 00     movl   $0x10,(%eax,%ecx,1)

src/l4linux/arch/l4/kernel/arch-x86/../../../x86/kernel/dumpstack.c:210
  4109d5:    64 8b 15 0c 0e 82 00     mov    %fs:0x820e0c,%edx


bash: ELF 32-bit LSB executable, Intel 80386, version 1 (SYSV), dynamically linked (uses shared libs), for GNU/Linux 2.0.30, stripped
bash: ELF 32-bit LSB executable, Intel 80386, version 1 (SYSV), dynamically linked (uses shared libs), for GNU/Linux 2.6.18, stripped

ldd bash:
    linux-gate.so.1 =>  (0xb783c000)
    libncurses.so.5 => /lib/libncurses.so.5 (0xb77eb000)
    libdl.so.2 => /lib/i686/cmov/libdl.so.2 (0xb77e7000)
    libc.so.6 => /lib/i686/cmov/libc.so.6 (0xb76a0000)
    /lib/ld-linux.so.2 (0xb783d000)



On Mon, Feb 6, 2012 at 11:32 PM, Adam Lackorzynski <adam <at> os.inf.tu-dresden.de> wrote:
Hi,

On Mon Feb 06, 2012 at 18:29:37 +0100, Riccardo Cecolin wrote:
> I'm trying to make a l4linux system access the vga directly without mag,
> l4con or fbdrv. I compiled it using the default configuration with virtual
> pci bus enabled, x86-mp_vPCI_defconfig.
> I'm currently trying on qemu, i see that l4linux recognizes the pci devices
> and is able to mount the root fs from /dev/hda (i also tried with a ramdisk
> with same results) and loads the driver of the vga (vgaarb: device added:
> PCI:0000:00:01.0,decodes=io+mem,owns=io+mem,locks=none).
> But then i get a kernel panic because init (/bin/bash) exited (or didn't
> execute):
>
> l4linux | EX: 0: pc = 0041176a sp = 07829fac trapno = 0xd err/pfa = 0x402
> Kernel panic - not syncing: Attempted to kill init!
> Pid: 1, comm: bash Not tainted 3.0.0-l4-svn23 #35
> Call Trace:
>  [<006e4a29>] panic+0x57/0x14b
>  [<0042ddd1>] do_exit+0x601/0x6c0
>  [<004839e2>] ? do_munmap+0x202/0x290
>  [<0042df60>] ? sys_exit_group+0x20/0x20
>  [<0042df73>] sys_exit+0x13/0x20
>  [<00406b13>] l4x_user_dispatcher+0xdd3/0x22c0
>  [<00409702>] l4_kernelinternal_execve+0x52/0xe0
>  [<00400569>] in_kernel_int80_helper+0x9/0x20
>  [<0041176c>] ? kernel_execve+0x1c/0x30
>  [<004001b7>] run_init_process+0x17/0x20
>  [<00400251>] init_post+0x91/0xb0
>  [<007ec1d5>] kernel_init+0x10e/0x116
>  [<007ec0c7>] ? parse_early_options+0x25/0x25
>  [<00409a99>] kernel_thread_start+0x29/0x30

The excepion is completely normal, should be the exec for init/bash.
Looks like bash is exiting itself and as it's init, Linux stops. What's
on your 16MB disk? Is the bash statically linked? Or all shared libs
there? /dev/console there? Everything 32bits?



Adam
--
Adam                 adam <at> os.inf.tu-dresden.de
 Lackorzynski         http://os.inf.tu-dresden.de/~adam/

_______________________________________________
l4-hackers mailing list
l4-hackers <at> os.inf.tu-dresden.de
http://os.inf.tu-dresden.de/mailman/listinfo/l4-hackers

_______________________________________________
l4-hackers mailing list
l4-hackers <at> os.inf.tu-dresden.de
http://os.inf.tu-dresden.de/mailman/listinfo/l4-hackers
Stefan Fritsch | 7 Feb 12:15
Picon
Favicon

Serial console with qemu/realview-eb

Hi,

I have some problems getting the serial console to work under qemu with 
ARM/realview-eb. I see the output from L4Linux but it does not get any input 
and also pressing escape does not enter jdb. I have tried qemu 1.0 and 
0.12.5. I call it with

qemu-system-arm -M realview-eb -nographic -m 
256 -kernel .../l4re/obj/l4/arm-rv/images/bootstrap_L4Linux_ARM.elf

Are there any options one need to pass with "-append"? "-append -serial_esc" 
does not make any difference. Any other ideas?

L4 version is from l4re-snapshot-2011081207.tar.xz

Output from qemu is below.

Cheers,
Stefan

L4 Bootstrapper
  Build: #12 Thu Jan 26 11:26:11 CET 2012, 4.4.1
  Scanning up to 256 MB RAM
  Memory size is 256MB (00000000 - 10000000)
  RAM: 0000000000000000 - 000000000fffffff: 262144kB
  Total RAM: 256MB
  mod09: 014bc000-017bc000: ramdisk-arm.rd
  mod08: 01201000-014bb524: vmlinuz.arm
  mod07: 01200000-012000bd: arm-rv.io
  mod06: 0111a000-011ff124: io
  mod05: 01119000-01119189: l4lx.cfg
  mod04: 010c3000-011186dc: ned
  mod03: 010a8000-010c23c8: l4re
  mod02: 0106d000-010a7ba0: moe
  mod01: 01063000-0106c6f4: sigma0
  mod00: 01015000-01062954: fiasco
  Moving 10 modules to 1100000 with offset eb000
  moving module 10 { 14bc000-17bc000 } -> { 15a7000-18a7000 }
  moving module 09 { 1201000-14bb524 } -> { 12ec000-15a6524 }
  moving module 08 { 1200000-12000bd } -> { 12eb000-12eb0bd }
  moving module 07 { 111a000-11ff124 } -> { 1205000-12ea124 }
  moving module 06 { 1119000-1119189 } -> { 1204000-1204189 }
  moving module 05 { 10c3000-11186dc } -> { 11ae000-12036dc }
  moving module 04 { 10a8000-10c23c8 } -> { 1193000-11ad3c8 }
  moving module 03 { 106d000-10a7ba0 } -> { 1158000-1192ba0 }
  moving module 02 { 1063000-106c6f4 } -> { 114e000-11576f4 }
  moving module 01 { 1015000-1062954 } -> { 1100000-114d954 }
  Scanning fiasco
  Scanning sigma0
  Scanning moe rom/l4lx.cfg
  Relocated mbi to [0x100f000-0x100f151]
  Loading fiasco
  Loading sigma0
  Loading moe
  find kernel info page...
  found kernel info page at 0x2000
Regions of list regions
    [     1000,      193f] {      940} Kern   fiasco
    [     2000,     5cfff] {    5b000} Kern   fiasco
    [    90000,     968f3] {     68f4} Sigma0 sigma0
    [    98000,     9e17b] {     617c} Sigma0 sigma0
    [   140000,    175d1f] {    35d20} Root   moe
    [   178000,    18ecf7] {    16cf8} Root   moe
    [  1000000,   10143eb] {    143ec} Boot   bootstrap
    [  100f000,   100f24e] {      24f} Root   Multiboot info
    [  1193000,   18a6fff] {   714000} Root   Modules Memory
  API Version: (87) experimental
  Sigma0 config    ip:000900e0 sp:01013704
  Roottask config  ip:00140178 sp:00000000
  Starting kernel fiasco at 00001000
Realview System ID: Rev=c HBI=140 Build=0 Arch=4 FPGA=00
Hello from Startup::stage2
Initialize page table
Number of IRQs available at this GIC: 96
Vmem_alloc::init()
Cache config: ON
Welcome to Fiasco.OC (arm)!
L4/Fiasco.OC arm microkernel (C) 1998-2011 TU Dresden
Rev: rUNKNOWN compiled with gcc 4.4.1 for Realview    []
Build: #3 Thu Jan 26 11:21:50 CET 2012

Calibrating timer loop... done.
SIGMA0: Hello!
  KIP @ 2000
  allocated 4KB for maintenance structures
SIGMA0: Dump of all resource maps
RAM:------------------------
[0:0;fff]
[0:5d000;8ffff]
[0:97000;97fff]
[0:9f000;13ffff]
[4:140000;175fff]
[0:176000;177fff]
[4:178000;18efff]
[0:18f000;100efff]
[4:100f000;100ffff]
[0:1010000;1192fff]
[4:1193000;18a6fff]
[0:18a7000;effffff]
IOMEM:----------------------
[0:10000000;ffffffff]
MOE: Hello world
MOE: found 237772 KByte free memory
MOE: found RAM from 5d000 to f000000
MOE: allocated 239 KByte for the page array @0x9f000
MOE: virtual user address space [0-bfffffff]
MOE: rom name space cap -> [C:501000]
  BOOTFS: [1193000-11ad3c8] [C:503000] l4re
  BOOTFS: [11ae000-12036dc] [C:504000] ned
  BOOTFS: [1204000-1204189] [C:505000] l4lx.cfg
  BOOTFS: [1205000-12ea124] [C:506000] io
  BOOTFS: [12eb000-12eb0bd] [C:507000] arm-rv.io
  BOOTFS: [12ec000-15a6524] [C:508000] vmlinuz.arm
  BOOTFS: [15a7000-18a7000] [C:509000] ramdisk-arm.rd
MOE: cmdline: moe rom/l4lx.cfg
MOE: Starting: rom/ned rom/l4lx.cfg
MOE: loading 'rom/ned'
Ned says: Hi World!
Ned: loading file: 'rom/l4lx.cfg'
l4linux | libio: Warning: Query of 'vbus' failed!
l4linux | PH  0 (t:        1) offs=00008000 vaddr=00100000 vend=0041d8f4
l4linux |                     phys=00100000 ephys=0041d8f4
l4linux |                     f_sz=0029e39c memsz=0031d8f4 flgs=rwx
l4linux | PH  1 (t:        4) offs=002a6378 vaddr=0039e378 vend=0039e39c
l4linux |                     phys=0039e378 ephys=0039e39c
l4linux |                     f_sz=00000024 memsz=00000024 flgs=r-x
l4linux | PH  2 (t: 1685382481) offs=00000000 vaddr=00000000 vend=00000000
l4linux |                     phys=00000000 ephys=00000000
l4linux |                     f_sz=00000000 memsz=00000000 flgs=rwx
l4linux | Starting binary at 0x11c2f0, argc=7 argv=0x80007f8c *argv=0xb1007ff0 
argv0=rom/vmlinuz.arm
l4linux | External resolver is at 0xa80006a0
l4linux | ======> L4Linux 2.6 starting... <========
l4linux | Linux version 3.0.0-l4 (fritsch <at> dev) (gcc version 4.4.1 (Sourcery 
G++ Lite 2010q1-202) ) #2 Thu Jan 26 11:25:33 CET 2012
l4linux | Binary name: rom/vmlinuz.arm
l4linux |    This is an AEABI build.
l4linux | Linux kernel command line (6 args): mem=64M console=ttyLv0 
l4x_rd=rom/ramdisk-arm.rd root=1:0 ramdisk_size=4000 init=/bin/sh
l4linux | CPU mapping (l:p)[1]: 0:0
l4linux | Image: 00100000 - 00500000 [4096 KiB].
l4linux | Areas: Text:     00100000 - 00382000 [2568kB] (a bit longer)
l4linux |        Data:     00382000 - 00399460 [93kB]
l4linux |        Initdata: 00100000 - 0011b000 [108kB]
l4linux |        BSS:      0039e39c - 0041d8f4 [509kB]
l4linux | Device scan:
l4linux | l4lx_thread_create: Created thread 413 (cpu0) (u:b3000400, 
v:b3000600, sp:00383ff0)
l4linux | main thread will be 413
l4linux | l4x_register_pointer_section: addr = 00100000 size = 3268608
l4linux | section-with-init: virt: 0x100000 to 0x41d8f3 [3190 KiB]
l4linux | section-with-init: Phys: 0x00255000 to 0x005728f4, Size:  3266804
l4linux | l4x_linux_startup: thread 413.
l4linux | Main thread running, waiting...
l4linux | main thread: received startup message.
l4linux | l4x_setup_memory: Forcing superpages for main memory
l4linux | l4re_global_env: 0xb1007f0c
l4linux | Main memory size: 64MB
l4linux |     Main memory: virt: 0x500000 to 0x44fffff [65536 KiB]
l4linux |     Main memory: Phys: 0x01900000 to 0x05900000, Size: 67108864
l4linux | Filling lower ptabs...
l4linux | Done (480 entries).
l4linux | l4x_register_pointer_section: addr = 004ff000 size = 4096
l4linux |             end: virt: 0x4ff000 to 0x4fffff [4 KiB]
l4linux |             end: Phys: 0x00574000 to 0x00575000, Size:     4096
l4linux | l4x_rd_path: rom/ramdisk-arm.rd
l4linux | Loading: rom/ramdisk-arm.rd
l4linux | INITRD: Size of RAMdisk is 3072KiB
l4linux | RAMdisk from 0c600000 to 0c900000 [3072KiB]
l4linux | l4lx_thread_create: Created thread 419 (timer.i0) (u:b3000800, 
v:00000000, sp:003b7ff4)
Linux version 3.0.0-l4 (fritsch <at> dev) (gcc version 4.4.1 (Sourcery G++ Lite 
2010q1-202) ) #2 Thu Jan 26 11:25:33 CET 2012
CPU: Fiasco [860f0001] revision 1 (ARMvundefined/unknown), cr=00000000
CPU: VIPT nonaliasing data cache, VIPT nonaliasing instruction cache
l4linux | timer_irq_thread: Starting timer IRQ thread.
cpu_arm926_proc_init
Machine: L4
Memory policy: ECC disabled, Data cache writeback
arm926_flush_kern_cache_all()
INITRD: 0c600000 - 0c900000
Built 1 zonelists in Zone order, mobility grouping on.  Total pages: 17271
Kernel command line: mem=64M console=ttyLv0 l4x_rd=rom/ramdisk-arm.rd root=1:0 
ramdisk_size=4000 init=/bin/sh
PID hash table entries: 512 (order: -1, 2048 bytes)
Dentry cache hash table entries: 16384 (order: 4, 65536 bytes)
Inode-cache hash table entries: 8192 (order: 3, 32768 bytes)
Memory: 0MB 68MB = 68MB total
Memory: 64808k/64808k available, 4828k reserved, 0K highmem
Virtual kernel memory layout:
    vector  : 0xbffff000 - 0xc0000000   (   4 kB)
    fixmap  : 0xfff00000 - 0xfffe0000   ( 896 kB)
    DMA     : 0xffc00000 - 0xffe00000   (   2 MB)
    vmalloc : 0x04600000 - 0x0c600000   ( 128 MB)
    lowmem  : 0x00000000 - 0x04500000   (  69 MB)
    modules : 0xff100000 - 0x00100000   (  16 MB)
      .init : 0x00100000 - 0x0011b000   ( 108 kB)
      .text : 0x0011c000 - 0x003819e8   (2455 kB)
      .data : 0x00382000 - 0x00399460   (  94 kB)
       .bss : 0x0039e39c - 0x0041d8f4   ( 510 kB)
NR_IRQS:220
l4lx_irq_init: l4lx_irq_max = 220
l4lx_irq_dev_startup_timer(0)
Console: colour dummy device 80x30
console [ttyLv0] enabled
Calibrating delay loop... 315.80 BogoMIPS (lpj=1579008)
pid_max: default: 32768 minimum: 301
Mount-cache hash table entries: 512
CPU: Testing write buffer coherency: ok
NET: Registered protocol family 16
bio: create slab <bio-0> at 0
Failed to create "l4x" debugfs directory: 1
Switching to clocksource kip
NET: Registered protocol family 2
IP route cache hash table entries: 1024 (order: 0, 4096 bytes)
TCP established hash table entries: 4096 (order: 3, 32768 bytes)
TCP bind hash table entries: 4096 (order: 2, 16384 bytes)
TCP: Hash tables configured (established 4096 bind 4096)
TCP reno registered
UDP hash table entries: 256 (order: 0, 4096 bytes)
UDP-Lite hash table entries: 256 (order: 0, 4096 bytes)
NET: Registered protocol family 1
Trying to unpack rootfs image as initramfs...
rootfs image is not initramfs (junk in compressed archive); looks like an 
initrd
INITRD: Freeing memory.
NetWinder Floating Point Emulator V0.97 (double precision)
msgmni has been set to 126
io scheduler noop registered
io scheduler deadline registered
io scheduler cfq registered (default)
L4 serial driver
ttyLv0 at MMIO 0x1 (irq = 210) is a L4
L4 shared mem serial driver
l4cdds: No name given, not starting.
brd: module loaded
l4bdds: No name given, not starting.
mousedev: PS/2 mouse device common for all mice
TCP cubic registered
NET: Registered protocol family 17
RAMDISK: ext2 filesystem found at block 0
RAMDISK: Loading 3072KiB [1 disk] into ram disk... done.
VFS: Mounted root (ext2 filesystem) readonly on device 1:0.
Freeing init memory: 108K
/bin/sh: can't access tty; job control turned off
# 
Julian Vetter | 7 Feb 14:50
Picon

Re: Serial console with qemu/realview-eb


Hi Stefan,
when I start Qemu I add the command line option "-serial stdio". Maybe
that helps. And my 'modules.list' entry contains 'kernel fiasco
-serial_esc'.

Cheers,
Julian

On 02/07/2012 12:15 PM, Stefan Fritsch wrote:
> Hi,
> 
> I have some problems getting the serial console to work under qemu
> with ARM/realview-eb. I see the output from L4Linux but it does not
> get any input and also pressing escape does not enter jdb. I have
> tried qemu 1.0 and 0.12.5. I call it with
> 
> qemu-system-arm -M realview-eb -nographic -m 256 -kernel
> .../l4re/obj/l4/arm-rv/images/bootstrap_L4Linux_ARM.elf
> 
> Are there any options one need to pass with "-append"? "-append
> -serial_esc" does not make any difference. Any other ideas?
> 
> L4 version is from l4re-snapshot-2011081207.tar.xz
> 
> Output from qemu is below.
> 
> Cheers, Stefan
> 
> L4 Bootstrapper Build: #12 Thu Jan 26 11:26:11 CET 2012, 4.4.1 
> Scanning up to 256 MB RAM Memory size is 256MB (00000000 -
> 10000000) RAM: 0000000000000000 - 000000000fffffff: 262144kB Total
> RAM: 256MB mod09: 014bc000-017bc000: ramdisk-arm.rd mod08:
> 01201000-014bb524: vmlinuz.arm mod07: 01200000-012000bd: arm-rv.io 
> mod06: 0111a000-011ff124: io mod05: 01119000-01119189: l4lx.cfg 
> mod04: 010c3000-011186dc: ned mod03: 010a8000-010c23c8: l4re mod02:
> 0106d000-010a7ba0: moe mod01: 01063000-0106c6f4: sigma0 mod00:
> 01015000-01062954: fiasco Moving 10 modules to 1100000 with offset
> eb000 moving module 10 { 14bc000-17bc000 } -> { 15a7000-18a7000 } 
> moving module 09 { 1201000-14bb524 } -> { 12ec000-15a6524 } moving
> module 08 { 1200000-12000bd } -> { 12eb000-12eb0bd } moving module
> 07 { 111a000-11ff124 } -> { 1205000-12ea124 } moving module 06 {
> 1119000-1119189 } -> { 1204000-1204189 } moving module 05 {
> 10c3000-11186dc } -> { 11ae000-12036dc } moving module 04 {
> 10a8000-10c23c8 } -> { 1193000-11ad3c8 } moving module 03 {
> 106d000-10a7ba0 } -> { 1158000-1192ba0 } moving module 02 {
> 1063000-106c6f4 } -> { 114e000-11576f4 } moving module 01 {
> 1015000-1062954 } -> { 1100000-114d954 } Scanning fiasco Scanning
> sigma0 Scanning moe rom/l4lx.cfg Relocated mbi to
> [0x100f000-0x100f151] Loading fiasco Loading sigma0 Loading moe 
> find kernel info page... found kernel info page at 0x2000 Regions
> of list regions [     1000,      193f] {      940} Kern   fiasco [
> 2000,     5cfff] {    5b000} Kern   fiasco [    90000,     968f3] {
> 68f4} Sigma0 sigma0 [    98000,     9e17b] {     617c} Sigma0
> sigma0 [   140000,    175d1f] {    35d20} Root   moe [   178000,
> 18ecf7] {    16cf8} Root   moe [  1000000,   10143eb] {    143ec}
> Boot   bootstrap [  100f000,   100f24e] {      24f} Root
> Multiboot info [  1193000,   18a6fff] {   714000} Root   Modules
> Memory API Version: (87) experimental Sigma0 config    ip:000900e0
> sp:01013704 Roottask config  ip:00140178 sp:00000000 Starting
> kernel fiasco at 00001000 Realview System ID: Rev=c HBI=140 Build=0
> Arch=4 FPGA=00 Hello from Startup::stage2 Initialize page table 
> Number of IRQs available at this GIC: 96 Vmem_alloc::init() Cache
> config: ON Welcome to Fiasco.OC (arm)! L4/Fiasco.OC arm microkernel
> (C) 1998-2011 TU Dresden Rev: rUNKNOWN compiled with gcc 4.4.1 for
> Realview    [] Build: #3 Thu Jan 26 11:21:50 CET 2012
> 
> Calibrating timer loop... done. SIGMA0: Hello! KIP @ 2000 allocated
> 4KB for maintenance structures SIGMA0: Dump of all resource maps 
> RAM:------------------------ [0:0;fff] [0:5d000;8ffff] 
> [0:97000;97fff] [0:9f000;13ffff] [4:140000;175fff] 
> [0:176000;177fff] [4:178000;18efff] [0:18f000;100efff] 
> [4:100f000;100ffff] [0:1010000;1192fff] [4:1193000;18a6fff] 
> [0:18a7000;effffff] IOMEM:---------------------- 
> [0:10000000;ffffffff] MOE: Hello world MOE: found 237772 KByte free
> memory MOE: found RAM from 5d000 to f000000 MOE: allocated 239
> KByte for the page array @0x9f000 MOE: virtual user address space
> [0-bfffffff] MOE: rom name space cap -> [C:501000] BOOTFS:
> [1193000-11ad3c8] [C:503000] l4re BOOTFS: [11ae000-12036dc]
> [C:504000] ned BOOTFS: [1204000-1204189] [C:505000] l4lx.cfg 
> BOOTFS: [1205000-12ea124] [C:506000] io BOOTFS: [12eb000-12eb0bd]
> [C:507000] arm-rv.io BOOTFS: [12ec000-15a6524] [C:508000]
> vmlinuz.arm BOOTFS: [15a7000-18a7000] [C:509000] ramdisk-arm.rd 
> MOE: cmdline: moe rom/l4lx.cfg MOE: Starting: rom/ned rom/l4lx.cfg 
> MOE: loading 'rom/ned' Ned says: Hi World! Ned: loading file:
> 'rom/l4lx.cfg' l4linux | libio: Warning: Query of 'vbus' failed! 
> l4linux | PH  0 (t:        1) offs=00008000 vaddr=00100000
> vend=0041d8f4 l4linux |                     phys=00100000
> ephys=0041d8f4 l4linux |                     f_sz=0029e39c
> memsz=0031d8f4 flgs=rwx l4linux | PH  1 (t:        4) offs=002a6378
> vaddr=0039e378 vend=0039e39c l4linux |
> phys=0039e378 ephys=0039e39c l4linux |
> f_sz=00000024 memsz=00000024 flgs=r-x l4linux | PH  2 (t:
> 1685382481) offs=00000000 vaddr=00000000 vend=00000000 l4linux |
> phys=00000000 ephys=00000000 l4linux |
> f_sz=00000000 memsz=00000000 flgs=rwx l4linux | Starting binary at
> 0x11c2f0, argc=7 argv=0x80007f8c *argv=0xb1007ff0 
> argv0=rom/vmlinuz.arm l4linux | External resolver is at 0xa80006a0 
> l4linux | ======> L4Linux 2.6 starting... <======== l4linux | Linux
> version 3.0.0-l4 (fritsch <at> dev) (gcc version 4.4.1 (Sourcery G++
> Lite 2010q1-202) ) #2 Thu Jan 26 11:25:33 CET 2012 l4linux | Binary
> name: rom/vmlinuz.arm l4linux |    This is an AEABI build. l4linux
> | Linux kernel command line (6 args): mem=64M console=ttyLv0 
> l4x_rd=rom/ramdisk-arm.rd root=1:0 ramdisk_size=4000 init=/bin/sh 
> l4linux | CPU mapping (l:p)[1]: 0:0 l4linux | Image: 00100000 -
> 00500000 [4096 KiB]. l4linux | Areas: Text:     00100000 - 00382000
> [2568kB] (a bit longer) l4linux |        Data:     00382000 -
> 00399460 [93kB] l4linux |        Initdata: 00100000 - 0011b000
> [108kB] l4linux |        BSS:      0039e39c - 0041d8f4 [509kB] 
> l4linux | Device scan: l4linux | l4lx_thread_create: Created thread
> 413 (cpu0) (u:b3000400, v:b3000600, sp:00383ff0) l4linux | main
> thread will be 413 l4linux | l4x_register_pointer_section: addr =
> 00100000 size = 3268608 l4linux | section-with-init: virt: 0x100000
> to 0x41d8f3 [3190 KiB] l4linux | section-with-init: Phys:
> 0x00255000 to 0x005728f4, Size:  3266804 l4linux |
> l4x_linux_startup: thread 413. l4linux | Main thread running,
> waiting... l4linux | main thread: received startup message. l4linux
> | l4x_setup_memory: Forcing superpages for main memory l4linux |
> l4re_global_env: 0xb1007f0c l4linux | Main memory size: 64MB 
> l4linux |     Main memory: virt: 0x500000 to 0x44fffff [65536 KiB] 
> l4linux |     Main memory: Phys: 0x01900000 to 0x05900000, Size:
> 67108864 l4linux | Filling lower ptabs... l4linux | Done (480
> entries). l4linux | l4x_register_pointer_section: addr = 004ff000
> size = 4096 l4linux |             end: virt: 0x4ff000 to 0x4fffff
> [4 KiB] l4linux |             end: Phys: 0x00574000 to 0x00575000,
> Size:     4096 l4linux | l4x_rd_path: rom/ramdisk-arm.rd l4linux |
> Loading: rom/ramdisk-arm.rd l4linux | INITRD: Size of RAMdisk is
> 3072KiB l4linux | RAMdisk from 0c600000 to 0c900000 [3072KiB] 
> l4linux | l4lx_thread_create: Created thread 419 (timer.i0)
> (u:b3000800, v:00000000, sp:003b7ff4) Linux version 3.0.0-l4
> (fritsch <at> dev) (gcc version 4.4.1 (Sourcery G++ Lite 2010q1-202) )
> #2 Thu Jan 26 11:25:33 CET 2012 CPU: Fiasco [860f0001] revision 1
> (ARMvundefined/unknown), cr=00000000 CPU: VIPT nonaliasing data
> cache, VIPT nonaliasing instruction cache l4linux |
> timer_irq_thread: Starting timer IRQ thread. cpu_arm926_proc_init 
> Machine: L4 Memory policy: ECC disabled, Data cache writeback 
> arm926_flush_kern_cache_all() INITRD: 0c600000 - 0c900000 Built 1
> zonelists in Zone order, mobility grouping on.  Total pages: 17271 
> Kernel command line: mem=64M console=ttyLv0
> l4x_rd=rom/ramdisk-arm.rd root=1:0 ramdisk_size=4000 init=/bin/sh 
> PID hash table entries: 512 (order: -1, 2048 bytes) Dentry cache
> hash table entries: 16384 (order: 4, 65536 bytes) Inode-cache hash
> table entries: 8192 (order: 3, 32768 bytes) Memory: 0MB 68MB = 68MB
> total Memory: 64808k/64808k available, 4828k reserved, 0K highmem 
> Virtual kernel memory layout: vector  : 0xbffff000 - 0xc0000000   (
> 4 kB) fixmap  : 0xfff00000 - 0xfffe0000   ( 896 kB) DMA     :
> 0xffc00000 - 0xffe00000   (   2 MB) vmalloc : 0x04600000 -
> 0x0c600000   ( 128 MB) lowmem  : 0x00000000 - 0x04500000   (  69
> MB) modules : 0xff100000 - 0x00100000   (  16 MB) .init :
> 0x00100000 - 0x0011b000   ( 108 kB) .text : 0x0011c000 - 0x003819e8
> (2455 kB) .data : 0x00382000 - 0x00399460   (  94 kB) .bss :
> 0x0039e39c - 0x0041d8f4   ( 510 kB) NR_IRQS:220 l4lx_irq_init:
> l4lx_irq_max = 220 l4lx_irq_dev_startup_timer(0) Console: colour
> dummy device 80x30 console [ttyLv0] enabled Calibrating delay
> loop... 315.80 BogoMIPS (lpj=1579008) pid_max: default: 32768
> minimum: 301 Mount-cache hash table entries: 512 CPU: Testing write
> buffer coherency: ok NET: Registered protocol family 16 bio: create
> slab <bio-0> at 0 Failed to create "l4x" debugfs directory: 1 
> Switching to clocksource kip NET: Registered protocol family 2 IP
> route cache hash table entries: 1024 (order: 0, 4096 bytes) TCP
> established hash table entries: 4096 (order: 3, 32768 bytes) TCP
> bind hash table entries: 4096 (order: 2, 16384 bytes) TCP: Hash
> tables configured (established 4096 bind 4096) TCP reno registered 
> UDP hash table entries: 256 (order: 0, 4096 bytes) UDP-Lite hash
> table entries: 256 (order: 0, 4096 bytes) NET: Registered protocol
> family 1 Trying to unpack rootfs image as initramfs... rootfs image
> is not initramfs (junk in compressed archive); looks like an 
> initrd INITRD: Freeing memory. NetWinder Floating Point Emulator
> V0.97 (double precision) msgmni has been set to 126 io scheduler
> noop registered io scheduler deadline registered io scheduler cfq
> registered (default) L4 serial driver ttyLv0 at MMIO 0x1 (irq =
> 210) is a L4 L4 shared mem serial driver l4cdds: No name given, not
> starting. brd: module loaded l4bdds: No name given, not starting. 
> mousedev: PS/2 mouse device common for all mice TCP cubic
> registered NET: Registered protocol family 17 RAMDISK: ext2
> filesystem found at block 0 RAMDISK: Loading 3072KiB [1 disk] into
> ram disk... done. VFS: Mounted root (ext2 filesystem) readonly on
> device 1:0. Freeing init memory: 108K /bin/sh: can't access tty;
> job control turned off #
> 
> _______________________________________________ l4-hackers mailing
> list l4-hackers <at> os.inf.tu-dresden.de 
> http://os.inf.tu-dresden.de/mailman/listinfo/l4-hackers
> 

Stefan Fritsch | 7 Feb 16:04
Picon
Favicon

Re: Serial console with qemu/realview-eb

Hi Julian,

On Tuesday 07 February 2012 14:50:39 Julian Vetter wrote:
> when I start Qemu I add the command line option "-serial stdio". Maybe
> that helps. And my 'modules.list' entry contains 'kernel fiasco
> -serial_esc'.

"-nographic" implies "-serial stdio". But the problem was actually the 
missing  "kernel fiasco -serial_esc" line in modules.list. I somehow thought 
that the command line options would have to be provided externally, like they 
are with grub, but they are included in the built elf file. Thanks in any 
case.

Cheers,
Stefan
Adam Lackorzynski | 8 Feb 13:40
Picon
Favicon

Re: L4Linux direct access

Hi,

On Tue Feb 07, 2012 at 11:28:12 +0100, Riccardo Cecolin wrote:
> I tried with the drops-rd.rd filesystem image found here:
> http://os.inf.tu-dresden.de/L4/LinuxOnL4/download/drops-rd.rd and with a
> debootstrap generated one of debian stable and they both hang there. The
> same images work fine if I boot l4linux with fbdrv and mag.  Everything 32
> bit, bash is dynamically linked on the drops image as well as on the one i
> created. Libraries are in their place and /dev/console is there.
> If instead of /bin/bash i let the default init process start I get a
> segfault at 405f24 (dispatch.c) and then repeated segfaults in 4109d5
> (where i suppose it is trying to dump the stack).

The way the output works should not make a difference here in this
regard, so hmm. Could you add console=ttyLv0 to Linux cmdline to get
more output on the serial?

> I have been able to see this output poking with the VCPU option in the
> l4linux advanced configuration.

With it on or off?

Adam
--

-- 
Adam                 adam <at> os.inf.tu-dresden.de
  Lackorzynski         http://os.inf.tu-dresden.de/~adam/
Riccardo Cecolin | 9 Feb 11:23
Picon

Re: L4Linux direct access

I had to disable the "use vCPU execution model" to get that output. I added console=ttyLv0 and enabled support for it into the l4linux config, then with bash as init i could see  "allow_cli: allow_cli: No such file or directory" in the log.
So i removed it from the command line and now i get a working bash! After mounting /proc lspci works fine too.

When trying with the default init i never get the login prompt, it freezes after "No user config loaded!", so something is still wrong (this with drops-rd.rd).
If i load the other root image with an rc.local which executes "startx" i get the following error: xf86EnableIOPorts: failed to set IOPL for I/O (Operation not permitted). A previous mail in this list states that this is solved with that "allow_cli" parameter, but I need now some advice about where to put it, assuming that it is still a valid solution.

Thank you for your help.
Riccardo

On Wed, Feb 8, 2012 at 1:40 PM, Adam Lackorzynski <adam <at> os.inf.tu-dresden.de> wrote:
Hi,

On Tue Feb 07, 2012 at 11:28:12 +0100, Riccardo Cecolin wrote:
> I tried with the drops-rd.rd filesystem image found here:
> http://os.inf.tu-dresden.de/L4/LinuxOnL4/download/drops-rd.rd and with a
> debootstrap generated one of debian stable and they both hang there. The
> same images work fine if I boot l4linux with fbdrv and mag.  Everything 32
> bit, bash is dynamically linked on the drops image as well as on the one i
> created. Libraries are in their place and /dev/console is there.
> If instead of /bin/bash i let the default init process start I get a
> segfault at 405f24 (dispatch.c) and then repeated segfaults in 4109d5
> (where i suppose it is trying to dump the stack).

The way the output works should not make a difference here in this
regard, so hmm. Could you add console=ttyLv0 to Linux cmdline to get
more output on the serial?

> I have been able to see this output poking with the VCPU option in the
> l4linux advanced configuration.

With it on or off?



Adam
--
Adam                 adam <at> os.inf.tu-dresden.de
 Lackorzynski         http://os.inf.tu-dresden.de/~adam/

_______________________________________________
l4-hackers mailing list
l4-hackers <at> os.inf.tu-dresden.de
http://os.inf.tu-dresden.de/mailman/listinfo/l4-hackers

_______________________________________________
l4-hackers mailing list
l4-hackers <at> os.inf.tu-dresden.de
http://os.inf.tu-dresden.de/mailman/listinfo/l4-hackers
Adam Lackorzynski | 9 Feb 19:37
Picon
Favicon

Re: L4Linux direct access


On Thu Feb 09, 2012 at 11:23:27 +0100, Riccardo Cecolin wrote:
> I had to disable the "use vCPU execution model" to get that output. I added
> console=ttyLv0 and enabled support for it into the l4linux config, then
> with bash as init i could see  "allow_cli: allow_cli: No such file or
> directory" in the log.
> So i removed it from the command line and now i get a working bash! After
> mounting /proc lspci works fine too.
> 
> When trying with the default init i never get the login prompt, it freezes
> after "No user config loaded!", so something is still wrong (this with
> drops-rd.rd).

The issue is that this ramdisk's inittab is not configured to show a
prompt on ttyLv0, that's why no more output there. The login-prompt will
only be on tty0 (e.g. the framebuffer).

> If i load the other root image with an rc.local which executes "startx" i
> get the following error: xf86EnableIOPorts: failed to set IOPL for I/O
> (Operation not permitted). A previous mail in this list states that this is
> solved with that "allow_cli" parameter, but I need now some advice about
> where to put it, assuming that it is still a valid solution.

allow_cli is not valid anymore with any recent version.
The easiest way to use X is to configure X for the fbdev driver so it
uses the framebuffer.

Adam
--

-- 
Adam                 adam <at> os.inf.tu-dresden.de
  Lackorzynski         http://os.inf.tu-dresden.de/~adam/

Gmane