Using Genode 17.05 with Fiasco.OC

Jörg-Christian Böhme joerg at ...518...
Tue Jul 25 23:45:01 CEST 2017


Hi Norman,

Am Dienstag, 25. Juli 2017 13:45:45 CEST schrieb Norman Feske:
>
>> But first, I think about to
>> start with a small server. The host provider that I use, use a QEMU with
>> KVM enable as virtual server. So it is not possilbe to use NOVA on it
>> because of the KVM enabled featuer (I think) but
>> Fiasco.OC works.
>
> We added the -no-kvm option in '<build-dir>/etc/build.conf' by default a
> few years ago when Qemu/KVM did not implement all the features required
> by NOVA. There should be a good chance that NOVA works with recent Qemu
> versions. Could you give NOVA on Qemu/KVM another spin and report the
> specific problem you encountered?
>
Ok, I build (after I update to latest master. See below) lighttp with 
the NOVA kernel. With 64bit, the vServer reboots every time,
with 32bit the vServer hangs. But with Fiasco.OC it works!
Unfortunately I cannot add any output, it is in a special remote console 
from the host provider.
But I added a part of the dmesg output from the Linux rescue system [2].
Maybe somebody can "see" the problem. 
>
> In general, I warmly recommend using NOVA over Fiasco.OC as NOVA is the
> most commonly used (and thoroughly tested) Genode base platform on x86.
>
Ok. May I ask the recommended kernel for the following embedded 
board Rpi/pandaboard/wand quad ? It looks like there is only 
Fiasco.OC, because Fiasco.OC has ARM support, or?
>
>> The problem:
>> So I try to build/create a image from the lighttpd example with Fiasco.OC
>> kernel. The image started but the lighttpd does not work. Also the
>> hello tutorial with Fiasco.OC does not work anymore.
>> 
>> I checked the issue tracker on github but I didn't find any 
>> issue about ...
>
> I think that this issue is fixed in the current master branch,
> specifically by commit [1]. Prior this change, Genode's core consumed
> one additional (dataspace) capability per RPC object when running on
> Fiasco.OC, which remained undetected until we added the capability
> accounting in 17.05.
>
> [1]
> https://github.com/genodelabs/genode/commit/ba9ef7fdee07c42bc772c8b515bc9d808c401112
>
Ok, I checked out the lastet master [1]. Now it works. Great. Thank you 
for the hint.
This means, master is always stable ? I was expected that the tagged 
version is a stable release version.

[1]
https://github.com/genodelabs/genode/commit/0d1be4abe2294155e36bc0eb0c1cd61499f08d93

>
>>  With Fiasco.OC I get
>>  following error:
>>  Error: nic_drv -> : environment ROM session denied (label="device_pd",
>> ram_quota=6144, cap_quota=3, diag=0)
>>  I try to add "device_pd" in the boot modules because it is missing in the
>>  rom fs but device_pd is not compile for the Fiasco.OC, only for NOVA.
>>  I found out following in:
>>  genode-src/repos/os/src/drivers/platform/spec/x86/device_pd/target.mk
>>  It looks like device_pd is only build for NOVA.
>
> Admittedly, the log messages look a bit scary but this output is normal
> on Fiasco.OC where the platform driver does not support device PDs
> (IOMMU). We should probably dim the noise a bit. ;-)
>
Ok, no problem, I understand :-).

Cheers
Jörg

[2]
CPU1: Intel(R) Xeon(R) CPU E5-26xx (Sandy Bridge)
Intel(R) PRO/1000 Network Driver
[    0.000000] x86/fpu: Supporting XSAVE feature 0x001: 'x87 floating point 
registers'
[    0.000000] x86/fpu: Supporting XSAVE feature 0x002: 'SSE registers'
[    0.000000] x86/fpu: Supporting XSAVE feature 0x004: 'AVX registers'
[    0.000000] x86/fpu: xstate_offset[2]:  576, xstate_sizes[2]:  256
[    0.000000] x86/fpu: Enabled xstate features 0x7, context size is 832 
bytes, using 'standard' format.
[    0.000000] e820: BIOS-provided physical RAM map:
[    0.000000] BIOS-e820: [mem 0x0000000000000000-0x000000000009fbff] 
usable
[    0.000000] BIOS-e820: [mem 0x000000000009fc00-0x000000000009ffff] 
reserved
[    0.000000] BIOS-e820: [mem 0x00000000000f0000-0x00000000000fffff] 
reserved
[    0.000000] BIOS-e820: [mem 0x0000000000100000-0x000000003ffdffff] 
usable
[    0.000000] BIOS-e820: [mem 0x000000003ffe0000-0x000000003fffffff] 
reserved
[    0.000000] BIOS-e820: [mem 0x00000000feffc000-0x00000000feffffff] 
reserved
[    0.000000] BIOS-e820: [mem 0x00000000fffc0000-0x00000000ffffffff] 
reserved
[    0.000000] NX (Execute Disable) protection: active
[    0.000000] SMBIOS 2.8 present.
[    0.000000] DMI: Hetzner vServer, BIOS 1.8.2 04/01/2014
[    0.000000] Hypervisor detected: KVM
[    0.000000] e820: update [mem 0x00000000-0x00000fff] usable ==> reserved
[    0.000000] e820: remove [mem 0x000a0000-0x000fffff] usable
[    0.000000] e820: last_pfn = 0x3ffe0 max_arch_pfn = 0x400000000
[    0.000000] MTRR default type: write-back
[    0.000000] MTRR fixed ranges enabled:
[    0.000000]   00000-9FFFF write-back
[    0.000000]   A0000-BFFFF uncachable
[    0.000000]   C0000-FFFFF write-protect
[    0.000000] MTRR variable ranges enabled:
[    0.000000]   0 base 0080000000 mask FF80000000 uncachable
[    0.000000]   1 disabled
[    0.000000]   2 disabled
[    0.000000]   3 disabled
[    0.000000]   4 disabled
[    0.000000]   5 disabled
[    0.000000]   6 disabled
[    0.000000]   7 disabled
[    0.000000] x86/PAT: Configuration [0-7]: WB  WC  UC- UC  WB  WC  UC- WT 
 
[    0.000000] Base memory trampoline at [ffff880000099000] 99000 size 
24576
[    0.000000] BRK [0x01a44000, 0x01a44fff] PGTABLE
[    0.000000] BRK [0x01a45000, 0x01a45fff] PGTABLE
[    0.000000] BRK [0x01a46000, 0x01a46fff] PGTABLE
[    0.000000] BRK [0x01a47000, 0x01a47fff] PGTABLE
[    0.000000] RAMDISK: [mem 0x3fbcd000-0x3feadfff]
[    0.000000] ACPI: Early table checksum verification disabled
[    0.000000] ACPI: RSDP 0x00000000000F62F0 000014 (v00 BOCHS )
[    0.000000] ACPI: RSDT 0x000000003FFE16EA 000030 (v01 BOCHS  BXPCRSDT 
00000001 BXPC 00000001)
[    0.000000] ACPI: FACP 0x000000003FFE15C6 000074 (v01 BOCHS  BXPCFACP 
00000001 BXPC 00000001)
[    0.000000] ACPI: DSDT 0x000000003FFE0040 001586 (v01 BOCHS  BXPCDSDT 
00000001 BXPC 00000001)
[    0.000000] ACPI: FACS 0x000000003FFE0000 000040
[    0.000000] ACPI: APIC 0x000000003FFE163A 000078 (v01 BOCHS  BXPCAPIC 
00000001 BXPC 00000001)
[    0.000000] ACPI: HPET 0x000000003FFE16B2 000038 (v01 BOCHS  BXPCHPET 
00000001 BXPC 00000001)
[    0.000000] ACPI: Local APIC address 0xfee00000
[    0.000000] No NUMA configuration found
[    0.000000] Faking a node at [mem 0x0000000000000000-0x000000003ffdffff]
[    0.000000] NODE_DATA(0) allocated [mem 0x3ffdc000-0x3ffdffff]
[    0.000000] kvm-clock: Using msrs 4b564d01 and 4b564d00
[    0.000000] kvm-clock: cpu 0, msr 0:3ffda001, primary cpu clock
[    0.000000] kvm-clock: using sched offset of 19910977039 cycles
[    0.000000] clocksource: kvm-clock: mask: 0xffffffffffffffff max_cycles: 
0x1cd42e4dffb, max_idle_ns: 881590591483 ns
[    0.000000] Zone ranges:
[    0.000000]   DMA      [mem 0x0000000000001000-0x0000000000ffffff]
[    0.000000]   DMA32    [mem 0x0000000001000000-0x000000003ffdffff]
[    0.000000]   Normal   empty
[    0.000000] Movable zone start for each node
[    0.000000] Early memory node ranges
[    0.000000]   node   0: [mem 0x0000000000001000-0x000000000009efff]
[    0.000000]   node   0: [mem 0x0000000000100000-0x000000003ffdffff]
[    0.000000] Initmem setup node 0 [mem 
0x0000000000001000-0x000000003ffdffff]
[    0.000000] On node 0 totalpages: 262014
[    0.000000]   DMA zone: 64 pages used for memmap
[    0.000000]   DMA zone: 21 pages reserved
[    0.000000]   DMA zone: 3998 pages, LIFO batch:0
[    0.000000]   DMA32 zone: 4032 pages used for memmap
[    0.000000]   DMA32 zone: 258016 pages, LIFO batch:31
[    0.000000] ACPI: PM-Timer IO Port: 0x608
[    0.000000] ACPI: Local APIC address 0xfee00000
[    0.000000] ACPI: LAPIC_NMI (acpi_id[0xff] dfl dfl lint[0x1])
[    0.000000] IOAPIC[0]: apic_id 0, version 17, address 0xfec00000, GSI 
0-23
[    0.000000] ACPI: INT_SRC_OVR (bus 0 bus_irq 0 global_irq 2 dfl dfl)
[    0.000000] ACPI: INT_SRC_OVR (bus 0 bus_irq 5 global_irq 5 high level)
[    0.000000] ACPI: INT_SRC_OVR (bus 0 bus_irq 9 global_irq 9 high level)
[    0.000000] ACPI: INT_SRC_OVR (bus 0 bus_irq 10 global_irq 10 high 
level)
[    0.000000] ACPI: INT_SRC_OVR (bus 0 bus_irq 11 global_irq 11 high 
level)
[    0.000000] ACPI: IRQ0 used by override.
[    0.000000] ACPI: IRQ5 used by override.
[    0.000000] ACPI: IRQ9 used by override.
[    0.000000] ACPI: IRQ10 used by override.
[    0.000000] ACPI: IRQ11 used by override.
[    0.000000] Using ACPI (MADT) for SMP configuration information
[    0.000000] ACPI: HPET id: 0x8086a201 base: 0xfed00000
[    0.000000] smpboot: Allowing 1 CPUs, 0 hotplug CPUs
[    0.000000] e820: [mem 0x40000000-0xfeffbfff] available for PCI devices
[    0.000000] Booting paravirtualized kernel on KVM
[    0.000000] clocksource: refined-jiffies: mask: 0xffffffff max_cycles: 
0xffffffff, max_idle_ns: 7645519600211568 ns
[    0.000000] setup_percpu: NR_CPUS:128 nr_cpumask_bits:128 nr_cpu_ids:1 
nr_node_ids:1
[    0.000000] percpu: Embedded 34 pages/cpu @ffff88003f800000 s102296 
r8192 d28776 u2097152
[    0.000000] pcpu-alloc: s102296 r8192 d28776 u2097152 alloc=1*2097152
[    0.000000] pcpu-alloc: [0] 0 
[    0.000000] KVM setup async PF for cpu 0
[    0.000000] Built 1 zonelists in Node order, mobility grouping on.  
Total pages: 257897
[    0.000000] Policy zone: DMA32





More information about the users mailing list