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/ba9ef7fdee07c42bc772c8b515bc9d80...
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/0d1be4abe2294155e36bc0eb0c1cd614...
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