Hi Chris,
For the first issue - just making sure you initialised a new build directory for building ia32?
The second issue - our HPET driver is very bare and doesn't support the full gamut of features. If you want to continue with this platform you'll need to improve the driver.
Thanks,
Anna.
From: Chris Rothrock <cgrothrock@gmail.com>
Sent: Thursday, 23 August 2018 3:56 AM
To: Lyons, Anna (Data61, Kensington NSW)
Cc: devel@sel4.systems
Subject: Re: [seL4] Demo buildSo my initial problem is actually resolved - it turns out I had the package 'ninja' installed, not 'ninja-build' which threw everything into a fit when I tried to actually use ninja. That being resolved, I was able to get a clean build of the 64 bit kernel (for x86) and made a simulated run. All looked well during the simulation. I do have 2 problems following up from this, however. When trying to use this build for a hardware boot (not simulated boot) I get an error (listed below). Also, for lengthy reasons, I also need to build a 32 bit version but when I do, this build fails.
This is the build output from the ia32 build:
Desktop:~/sel4test/build-ia32$ ninja[5/32] Linking CXX executable projects/sel4test/apps/sel4test-tests/sel4test-testsFAILED: : && ccache /usr/bin/g++ --sysroot=/home/jennifer/sel4test/build-ia32 -m32 -march=nehalem -D__KERNEL_32__ -nostdinc++ -g -march=nehalem -D__KERNEL_32__ -Wl,-m -Wl,elf_i386 -static -nostdlib -z max-page-size=0x1000 -u __vsyscall_ptr /home/jennifer/sel4test/build-ia32/lib/crt1.o /home/jennifer/sel4test/build-ia32/lib/crti.o /usr/lib/gcc/x86_64-linux-gnu/5/crtbegin.o projects/sel4test/apps/sel4test-tests/CMakeFiles/sel4test-tests.dir/src/arch/x86/arch.c.obj projects/sel4test/apps/sel4test-tests/CMakeFiles/sel4test-tests.dir/src/arch/x86/tests/alignment.c.obj projects/sel4test/apps/sel4test-tests/CMakeFiles/sel4test-tests.dir/src/arch/x86/tests/alignment_asm.S.obj projects/sel4test/apps/sel4test-tests/CMakeFiles/sel4test-tests.dir/src/arch/x86/tests/breakpoints.c.obj projects/sel4test/apps/sel4test-tests/CMakeFiles/sel4test-tests.dir/src/helpers.c.obj projects/sel4test/apps/sel4test-tests/CMakeFiles/sel4test-tests.dir/src/main.c.obj projects/sel4test/apps/sel4test-tests/CMakeFiles/sel4test-tests.dir/src/tests/benchmark_api.c.obj projects/sel4test/apps/sel4test-tests/CMakeFiles/sel4test-tests.dir/src/tests/binding.c.obj projects/sel4test/apps/sel4test-tests/CMakeFiles/sel4test-tests.dir/src/tests/breakpoints.c.obj projects/sel4test/apps/sel4test-tests/CMakeFiles/sel4test-tests.dir/src/tests/cache.c.obj projects/sel4test/apps/sel4test-tests/CMakeFiles/sel4test-tests.dir/src/tests/cnodeops.c.obj projects/sel4test/apps/sel4test-tests/CMakeFiles/sel4test-tests.dir/src/tests/cspace.c.obj projects/sel4test/apps/sel4test-tests/CMakeFiles/sel4test-tests.dir/src/tests/domains.cxx.obj projects/sel4test/apps/sel4test-tests/CMakeFiles/sel4test-tests.dir/src/tests/endpoints.c.obj projects/sel4test/apps/sel4test-tests/CMakeFiles/sel4test-tests.dir/src/tests/ept.c.obj projects/sel4test/apps/sel4test-tests/CMakeFiles/sel4test-tests.dir/src/tests/faults.c.obj projects/sel4test/apps/sel4test-tests/CMakeFiles/sel4test-tests.dir/src/tests/fpu.c.obj projects/sel4test/apps/sel4test-tests/CMakeFiles/sel4test-tests.dir/src/tests/frames.c.obj projects/sel4test/apps/sel4test-tests/CMakeFiles/sel4test-tests.dir/src/tests/inc_untyped.c.obj projects/sel4test/apps/sel4test-tests/CMakeFiles/sel4test-tests.dir/src/tests/interrupt.c.obj projects/sel4test/apps/sel4test-tests/CMakeFiles/sel4test-tests.dir/src/tests/ioports.c.obj projects/sel4test/apps/sel4test-tests/CMakeFiles/sel4test-tests.dir/src/tests/iopt.c.obj projects/sel4test/apps/sel4test-tests/CMakeFiles/sel4test-tests.dir/src/tests/ipc.c.obj projects/sel4test/apps/sel4test-tests/CMakeFiles/sel4test-tests.dir/src/tests/multicore.c.obj projects/sel4test/apps/sel4test-tests/CMakeFiles/sel4test-tests.dir/src/tests/nbwait.c.obj projects/sel4test/apps/sel4test-tests/CMakeFiles/sel4test-tests.dir/src/tests/pagetables.c.obj projects/sel4test/apps/sel4test-tests/CMakeFiles/sel4test-tests.dir/src/tests/preempt.c.obj projects/sel4test/apps/sel4test-tests/CMakeFiles/sel4test-tests.dir/src/tests/regressions.c.obj projects/sel4test/apps/sel4test-tests/CMakeFiles/sel4test-tests.dir/src/tests/schedcontext.c.obj projects/sel4test/apps/sel4test-tests/CMakeFiles/sel4test-tests.dir/src/tests/scheduler.c.obj projects/sel4test/apps/sel4test-tests/CMakeFiles/sel4test-tests.dir/src/tests/serial_server.c.obj projects/sel4test/apps/sel4test-tests/CMakeFiles/sel4test-tests.dir/src/tests/sync.c.obj projects/sel4test/apps/sel4test-tests/CMakeFiles/sel4test-tests.dir/src/tests/threads.c.obj projects/sel4test/apps/sel4test-tests/CMakeFiles/sel4test-tests.dir/src/tests/trivial.c.obj projects/sel4test/apps/sel4test-tests/CMakeFiles/sel4test-tests.dir/src/tests/vspace.c.obj -lgcc -lgcc_eh libsel4/libsel4.a projects/seL4_libs/libsel4allocman/libsel4allocman.a projects/seL4_libs/libsel4vka/libsel4vka.a projects/seL4_libs/libsel4utils/libsel4utils.a projects/seL4_libs/libsel4test/libsel4test.a projects/seL4_libs/libsel4sync/libsel4sync.a projects/seL4_libs/libsel4muslcsys/libsel4muslcsys.a projects/sel4test/libsel4testsupport/libsel4testsupport.a projects/seL4_libs/libsel4serialserver/libsel4serialserver.a projects/seL4_libs/libsel4test/libsel4test.a projects/seL4_libs/libsel4utils/libsel4utils.a projects/util_libs/libelf/libelf.a projects/util_libs/libcpio/libcpio.a projects/seL4_libs/libsel4sync/libsel4sync.a projects/seL4_libs/libsel4platsupport/libsel4platsupport.a projects/util_libs/libplatsupport/libplatsupport.a projects/seL4_libs/libsel4simple-default/libsel4simple-default.a projects/seL4_libs/libsel4vspace/libsel4vspace.a projects/seL4_libs/libsel4simple/libsel4simple.a projects/seL4_libs/libsel4vka/libsel4vka.a projects/seL4_libs/libsel4debug/libsel4debug.a libsel4/libsel4.a projects/util_libs/libutils/libutils.a projects/musllibc/build-temp/lib/libc.a -lgcc -lgcc_eh libsel4/libsel4.a projects/seL4_libs/libsel4allocman/libsel4allocman.a projects/seL4_libs/libsel4vka/libsel4vka.a projects/seL4_libs/libsel4utils/libsel4utils.a projects/seL4_libs/libsel4test/libsel4test.a projects/seL4_libs/libsel4sync/libsel4sync.a projects/seL4_libs/libsel4muslcsys/libsel4muslcsys.a projects/sel4test/libsel4testsupport/libsel4testsupport.a projects/seL4_libs/libsel4serialserver/libsel4serialserver.a projects/seL4_libs/libsel4test/libsel4test.a projects/seL4_libs/libsel4utils/libsel4utils.a projects/util_libs/libelf/libelf.a projects/util_libs/libcpio/libcpio.a projects/seL4_libs/libsel4sync/libsel4sync.a projects/seL4_libs/libsel4platsupport/libsel4platsupport.a projects/util_libs/libplatsupport/libplatsupport.a projects/seL4_libs/libsel4simple-default/libsel4simple-default.a projects/seL4_libs/libsel4vspace/libsel4vspace.a projects/seL4_libs/libsel4simple/libsel4simple.a projects/seL4_libs/libsel4vka/libsel4vka.a projects/seL4_libs/libsel4debug/libsel4debug.a libsel4/libsel4.a projects/util_libs/libutils/libutils.a projects/musllibc/build-temp/lib/libc.a /usr/lib/gcc/x86_64-linux-gnu/5/crtend.o /home/jennifer/sel4test/build-ia32/lib/crtn.o -o projects/sel4test/apps/sel4test-tests/sel4test-tests && :/usr/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-linux-gnu/5/libgcc.a when searching for -lgcc/usr/bin/ld: cannot find -lgcc/usr/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-linux-gnu/5/libgcc_eh.a when searching for -lgcc_eh/usr/bin/ld: cannot find -lgcc_eh/usr/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-linux-gnu/5/libgcc.a when searching for -lgcc/usr/bin/ld: cannot find -lgcc/usr/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-linux-gnu/5/libgcc_eh.a when searching for -lgcc_eh/usr/bin/ld: cannot find -lgcc_ehcollect2: error: ld returned 1 exit status[5/32] Generating from generated/plat_mode/machine/hardware.bf.pbfninja: build stopped: subcommand failed.
Here is the serial output of the x86_64 build boot:
Boot config: parsing cmdline ''Boot config: console_port = 0x3f8Boot config: debug_port = 0x3f8Boot config: disable_iommu = falseDetected 1 boot module(s):module #0: start=0xa11000 end=0xd054f0 size=0x2f44f0 name=''Parsing GRUB physical memory mapPhysical Memory Region from 0 size 9e800 type 1Physical Memory Region from 9e800 size 1800 type 2Physical Memory Region from e0000 size 20000 type 2Physical Memory Region from 100000 size ac722000 type 1Adding physical memory region 0x100000-0xac822000Physical Memory Region from ac822000 size a23000 type 2Physical Memory Region from ad245000 size 69000 type 3Physical Memory Region from ad2ae000 size 4b5000 type 4Physical Memory Region from ad763000 size 430000 type 2Physical Memory Region from adb93000 size 1000 type 1Adding physical memory region 0xadb93000-0xadb94000Physical Memory Region from adb94000 size 206000 type 4Physical Memory Region from add9a000 size 156000 type 1Adding physical memory region 0xadd9a000-0xadef0000Physical Memory Region from adef0000 size 935000 type 2Physical Memory Region from ae825000 size 4b000 type 1Adding physical memory region 0xae825000-0xae870000Physical Memory Region from ae870000 size 781000 type 2Physical Memory Region from aeff1000 size f000 type 1Adding physical memory region 0xaeff1000-0xaf000000Physical Memory Region from e0000000 size 10000000 type 2Physical Memory Region from feb80000 size 82000 type 2Physical Memory Region from fec10000 size 1000 type 2Physical Memory Region from fed00000 size 1000 type 2Physical Memory Region from fed40000 size 5000 type 2Physical Memory Region from fed80000 size 10000 type 2Physical Memory Region from ff000000 size 1000000 type 2Physical Memory Region from 100000000 size 40000000 type 1Adding physical memory region 0x100000000-0x140000000Got VBE info in multiboot. Current video mode is 3ACPI: RSDP paddr=0xf0490ACPI: RSDP vaddr=0xf0490ACPI: RSDT paddr=0xad269028ACPI: RSDT vaddr=0xad269028Warning: Your kernel was not compiled for the current microarchitecture.SKIM window for mitigating Meltdown (https://www.meltdownattack.com) not necessary for AMD and performance is being needlessly affected, consider disablingKernel loaded to: start=0x100000 end=0xa11000 size=0x911000 entry=0x10123eACPI: RSDT paddr=0xad269028ACPI: RSDT vaddr=0xad269028ACPI: FADT paddr=0xad269148ACPI: FADT vaddr=0xad269148ACPI: FADT flags=0x385a5ACPI: MADT paddr=0xad2764a8ACPI: MADT vaddr=0xad2764a8ACPI: MADT apic_addr=0xfee00000ACPI: MADT flags=0x1ACPI: MADT_APIC apic_id=0x10ACPI: MADT_APIC apic_id=0x11ACPI: Not recording this APIC, only support 1ACPI: MADT_APIC apic_id=0x12ACPI: Not recording this APIC, only support 1ACPI: MADT_APIC apic_id=0x13ACPI: Not recording this APIC, only support 1ACPI: MADT_IOAPIC ioapic_id=0 ioapic_addr=0xfec00000 gsib=0ACPI: MADT_IOAPIC ioapic_id=1 ioapic_addr=0xfec01000 gsib=24ACPI: Not recording this IOAPIC, only support 1ACPI: MADT_ISO bus=0 source=0 gsi=2 flags=0x0ACPI: MADT_ISO bus=0 source=9 gsi=9 flags=0xfACPI: 1 CPU(s) detectedELF-loading userland images from boot modules:size=0x35b000 v_entry=0x436000 v_start=0x400000 v_end=0x75b000 p_start=0xd06000 p_end=0x1061000Moving loaded userland images to final location: from=0xd06000 to=0xa11000 size=0x35b000Starting node #0 with APIC ID 16Mapping kernel window is doneBooting all finished, dropped to user spaceReceived reserved IRQ: 7Skipping table FPDTD, unknownSkipping table FIDT▒, unknownSkipping table TCPA2, unknownSkipping table MSDMU, unknownSkipping table UEFIB, unknownSkipping table IVRSx, unknownSkipping table BGRT8, unknownSkipping table CRAT(, unknownSkipping table LUFT▒), unknownWarning: skipping table ACPI XSDThpet_init@hpet.c:223 This driver expects hpet timer0 to be 64bitinit_timer@main.c:192 [Cond failed: error]Failed to initialise default timerseL4 root server abort()edDebug halt syscall from user thread 0xffffff80aeff5400 "sel4test-driver"halting...Kernel entry via Unknown syscall, word: 52
On Wed, Aug 15, 2018 at 8:30 PM <Anna.Lyons@data61.csiro.au> wrote:
Hi Chris,
That's strange, the build system definitely should not hang.
However I need more information to help at all. Which OS version are you using (host and seL4)? Which gcc version and cmake version? Is there any output from the init-build script at all? Also, have you used a clean build directory after the initial failure?
Cheers,
Anna.
From: Devel <devel-bounces@sel4.systems> on behalf of Chris Rothrock <cgrothrock@gmail.com>
Sent: Thursday, 16 August 2018 3:16 AM
To: devel@sel4.systems
Subject: [seL4] Demo buildMost of my experience with the seL5 microkernel has been through the Genode framework, but now I am attempting to build the demo test of seL4 without Genode using the instructions on the "Getting Started" page of seL4.systems but this seems to not be working for me. I have the latest version of repo, ninja and CMake (originally, I was given an error that I needed 3.9.x so I upgraded CMake manually). When I get to the instruction of "../init-build.sh -DPLATFORM=x86_64 -DSIMULATION=TRUE" demo build, the script only hangs. Nothing gets built and no demo is run. Is there something missing that I should be doing?
Thanks,Chris
--
Thank You,
Chris RothrockSenior System Administrator(315) 308-1637
--
Thank You,
Chris RothrockSenior System Administrator(315) 308-1637