CamkesVM CMA34CR_centos app
Hi all, I have a CM34CR CPU module https://wiki.sel4.systems/CMA34DBMC and I am trying to run the related camkes app on it. I choose the centos app: https://github.com/seL4/camkes-vm/blob/master/apps/vm/cma34cr_centos.camkes I am using default camkes vm manifest from https://github.com/seL4/camkes-vm-manifest. Compile with: *make clean* *make cma34cr_centos_defcondig* *make silentoldconfig* *make* And then I create a bootable USB following instructions here https://wiki.sel4.systems/Hardware/IA32. Then after I load the kernel and capdl image, I get the following output on serial: *Boot config: parsing cmdline 'sel4kernel'Boot config: console_port = 0x3f8Boot config: debug_port = 0x3f8Boot config: disable_iommu = falseDetected 1 boot module(s): module #0: start=0xd34000 end=0x3b387e8 size=0x2e047e8 name='rootserver'Parsing GRUB physical memory map Physical Memory Region from 0 size 9d400 type 1 Physical Memory Region from 9d400 size 2c00 type 2 Physical Memory Region from e0000 size 20000 type 2 Physical Memory Region from 100000 size 1ff00000 type 1Adding physical memory region 0x100000-0x20000000 Physical Memory Region from 20000000 size 200000 type 2 Physical Memory Region from 20200000 size 1fe04000 type 1Adding physical memory region 0x20200000-0x40004000 Physical Memory Region from 40004000 size 1000 type 2 Physical Memory Region from 40005000 size 64bab000 type 1Adding physical memory region 0x40005000-0xa4bb0000 Physical Memory Region from a4bb0000 size 1400000 type 2 Physical Memory Region from a5fb0000 size 4a0f000 type 1Adding physical memory region 0xa5fb0000-0xaa9bf000 Physical Memory Region from aa9bf000 size 500000 type 2 Physical Memory Region from aaebf000 size 100000 type 4 Physical Memory Region from aafbf000 size 40000 type 3 Physical Memory Region from aafff000 size 1000 type 1Adding physical memory region 0xaafff000-0xab000000 Physical Memory Region from ab000000 size 4a00000 type 2 Physical Memory Region from f0000000 size 4000000 type 2 Physical Memory Region from feb00000 size 4000 type 2 Physical Memory Region from fec00000 size 1000 type 2 Physical Memory Region from fed10000 size a000 type 2 Physical Memory Region from fed1c000 size 4000 type 2 Physical Memory Region from fee00000 size 1000 type 2 Physical Memory Region from ffc00000 size 400000 type 2 Physical Memory Region from 100000000 size 14f600000 type 1Adding physical memory region 0x100000000-0x24f600000Got VBE info in multiboot. Current video mode is 16767ACPI: RSDP paddr=0xfe020ACPI: RSDP vaddr=0xfe020ACPI: RSDT paddr=0xaafda0c4ACPI: RSDT vaddr=0xaafda0c4Kernel loaded to: start=0x100000 end=0xc17000 size=0xb17000 entry=0x101269ACPI: RSDT paddr=0xaafda0c4ACPI: RSDT vaddr=0xaafda0c4ACPI: FADT paddr=0xaaffb000ACPI: FADT vaddr=0xaaffb000ACPI: FADT flags=0x3c6a5ACPI: DMAR paddr=0xaafde000ACPI: DMAR vaddr=0xaafde000ACPI: IOMMU host address width: 36 ACPI: registering RMRR entry for region for device: bus=0x0 dev=0x1d fun=0x0 ACPI: registering RMRR entry for region for device: bus=0x0 dev=0x1a fun=0x0 ACPI: registering RMRR entry for region for device: bus=0x0 dev=0x14 fun=0x0 ACPI: registering RMRR entry for region for device: bus=0x0 dev=0x2 fun=0x0ACPI: 2 IOMMUs detectedACPI: MADT paddr=0xaaff9000ACPI: MADT vaddr=0xaaff9000ACPI: MADT apic_addr=0xfee00000ACPI: MADT flags=0x1ACPI: MADT_APIC apic_id=0x0ACPI: MADT_APIC apic_id=0x1ACPI: MADT_APIC apic_id=0x2ACPI: Not recording this APIC, only support 2ACPI: MADT_APIC apic_id=0x3ACPI: Not recording this APIC, only support 2ACPI: MADT_IOAPIC ioapic_id=0 ioapic_addr=0xfec00000 gsib=0ACPI: MADT_ISO bus=0 source=0 gsi=2 flags=0x0ACPI: MADT_ISO bus=0 source=9 gsi=9 flags=0xdACPI: 2 CPU(s) detectedELF-loading userland images from boot modules:size=0x41fc000 v_entry=0x409000 v_start=0x400000 v_end=0x45fc000 p_start=0x3b39000 p_end=0x7d35000Moving loaded userland images to final location: from=0x3b39000 to=0xc17000 size=0x41fc000Starting node #0 with APIC ID 0Mapping kernel window is done========== KERNEL EXCEPTION ==========Vector: 0xdErrCode: 0x0IP: 0xffffffff80115c04SP: 0xffffffff80a0bfa0FLAGS: 0x10046CR0: 0x80010013CR2: 0x0 (page-fault address)CR3: 0xa12000 (page-directory physical address)CR4: 0x110668Stack Dump:*0xffffffff80a0bfa0 == 0x0*0xffffffff80a0bfa8 == 0x0*0xffffffff80a0bfb0 == 0x3b39000*0xffffffff80a0bfb8 == 0xffffffff80116b80*0xffffffff80a0bfc0 == 0x0*0xffffffff80a0bfc8 == 0x22a8*0xffffffff80a0bfd0 == 0x0*0xffffffff80a0bfd8 == 0x0*0xffffffff80a0bfe0 == 0xffffffff80000000*0xffffffff80a0bfe8 == 0x7e000*0xffffffff80a0bff0 == 0xaa24c70c*0xffffffff80a0bff8 == 0x1f*0xffffffff80a0c000 == 0xfffffffff000ba86*0xffffffff80a0c008 == 0xffffffff8081f0c0*0xffffffff80a0c010 == 0x0*0xffffffff80a0c018 == 0x0*0xffffffff80a0c020 == 0x0*0xffffffff80a0c028 == 0x0*0xffffffff80a0c030 == 0x0*0xffffffff80a0c038 == 0x0Halting...halting...Kernel entry via Interrupt, irq 0* Any pointers at what is the cause of error here? The machien runs normally with vanilla CentOS so I don't think it is a hardware issue. Also, I am assuming the CMA34CR is identical to the one you have on your side (at least checking the lspci output against the camkes description the memory regions etc seem to match). Thanks in advance. M
Hi Michal,
Which revision of default.xml are you using? Adrian thinks it could be potentially related to, and fixed by, this commit[1] if you don't have it yet.
Kent
[1] https://github.com/seL4/seL4/commit/3d6f4f9bb7bfe42628dfa555601401fa4efcdf2d
________________________________
From: Devel
Hi Kent,
I did a fresh
*repo init -u https://github.com/seL4/camkes-vm-manifest
https://github.com/seL4/camkes-vm-manifest *
so I am using the latest default.xml
Now I can get a bit further - although still not all the way - here is the
full output:
*Boot config: parsing cmdline 'sel4kernel'Boot config: console_port =
0x3f8Boot config: debug_port = 0x3f8Boot config: disable_iommu =
falseDetected 1 boot module(s): module #0: start=0xd34000 end=0x3b387e8
size=0x2e047e8 name='rootserver'Parsing GRUB physical memory map
Physical Memory Region from 0 size 9d400 type 1 Physical Memory Region
from 9d400 size 2c00 type 2 Physical Memory Region from e0000 size 20000
type 2 Physical Memory Region from 100000 size 1ff00000 type 1Adding
physical memory region 0x100000-0x20000000 Physical Memory Region from
20000000 size 200000 type 2 Physical Memory Region from 20200000 size
1fe04000 type 1Adding physical memory region 0x20200000-0x40004000
Physical Memory Region from 40004000 size 1000 type 2 Physical Memory
Region from 40005000 size 64bab000 type 1Adding physical memory region
0x40005000-0xa4bb0000 Physical Memory Region from a4bb0000 size 1400000
type 2 Physical Memory Region from a5fb0000 size 4a0f000 type 1Adding
physical memory region 0xa5fb0000-0xaa9bf000 Physical Memory Region from
aa9bf000 size 500000 type 2 Physical Memory Region from aaebf000 size
100000 type 4 Physical Memory Region from aafbf000 size 40000 type 3
Physical Memory Region from aafff000 size 1000 type 1Adding physical memory
region 0xaafff000-0xab000000 Physical Memory Region from ab000000 size
4a00000 type 2 Physical Memory Region from f0000000 size 4000000 type
2 Physical Memory Region from feb00000 size 4000 type 2 Physical
Memory Region from fec00000 size 1000 type 2 Physical Memory Region from
fed10000 size a000 type 2 Physical Memory Region from fed1c000 size 4000
type 2 Physical Memory Region from fee00000 size 1000 type 2 Physical
Memory Region from ffc00000 size 400000 type 2 Physical Memory Region
from 100000000 size 14f600000 type 1Adding physical memory region
0x100000000-0x24f600000Got VBE info in multiboot. Current video mode is
16767ACPI: RSDP paddr=0xfe020ACPI: RSDP vaddr=0xfe020ACPI: RSDT
paddr=0xaafda0c4ACPI: RSDT vaddr=0xaafda0c4Kernel loaded to: start=0x100000
end=0xc17000 size=0xb17000 entry=0x101269ACPI: RSDT paddr=0xaafda0c4ACPI:
RSDT vaddr=0xaafda0c4ACPI: FADT paddr=0xaaffb000ACPI: FADT
vaddr=0xaaffb000ACPI: FADT flags=0x3c6a5ACPI: DMAR paddr=0xaafde000ACPI:
DMAR vaddr=0xaafde000ACPI: IOMMU host address width: 36 ACPI:
registering RMRR entry for region for device: bus=0x0 dev=0x1d fun=0x0
ACPI: registering RMRR entry for region for device: bus=0x0 dev=0x1a
fun=0x0 ACPI: registering RMRR entry for region for device: bus=0x0
dev=0x14 fun=0x0 ACPI: registering RMRR entry for region for device:
bus=0x0 dev=0x2 fun=0x0ACPI: 2 IOMMUs detectedACPI: MADT
paddr=0xaaff9000ACPI: MADT vaddr=0xaaff9000ACPI: MADT
apic_addr=0xfee00000ACPI: MADT flags=0x1ACPI: MADT_APIC apic_id=0x0ACPI:
MADT_APIC apic_id=0x1ACPI: MADT_APIC apic_id=0x2ACPI: Not recording this
APIC, only support 2ACPI: MADT_APIC apic_id=0x3ACPI: Not recording this
APIC, only support 2ACPI: MADT_IOAPIC ioapic_id=0 ioapic_addr=0xfec00000
gsib=0ACPI: MADT_ISO bus=0 source=0 gsi=2 flags=0x0ACPI: MADT_ISO bus=0
source=9 gsi=9 flags=0xdACPI: 2 CPU(s) detectedELF-loading userland images
from boot modules:size=0x41fc000 v_entry=0x409000 v_start=0x400000
v_end=0x45fc000 p_start=0x3b39000 p_end=0x7d35000Moving loaded userland
images to final location: from=0x3b39000 to=0xc17000 size=0x41fc000Starting
node #0 with APIC ID 0Mapping kernel window is doneIOMMU 0x0: 8-bit domain
IDs supportedIOMMU 0x1: 8-bit domain IDs supportedIOMMU: Using 3 page-table
levels (max. supported: 3)IOMMU: Create VTD context table for PCI bus 0x0
(pptr=0xffffff80a5fb3000)IOMMU: Create VTD context table for PCI bus 0x1
(pptr=0xffffff80a5fe0000)IOMMU: Create VTD context table for PCI bus 0x2
(pptr=0xffffff80a5fe1000)IOMMU: Create VTD context table for PCI bus 0x3
(pptr=0xffffff80a5fe2000)IOMMU: Create VTD context table for PCI bus 0x4
(pptr=0xffffff80a5fe3000)IOMMU: Create VTD context table for PCI bus 0x5
(pptr=0xffffff80a5fe4000)IOMMU: Create VTD context table for PCI bus 0x6
(pptr=0xffffff80a5fe5000)IOMMU: Create VTD context table for PCI bus 0x7
(pptr=0xffffff80a5fe6000)IOMMU: Create VTD context table for PCI bus 0x8
(pptr=0xffffff80a5fe7000)IOMMU: Create VTD context table for PCI bus 0x9
(pptr=0xffffff80a5fe8000)IOMMU: Create VTD context table for PCI bus 0xa
(pptr=0xffffff80a5fe9000)IOMMU: Create VTD context table for PCI bus 0xb
(pptr=0xffffff80a5fea000)IOMMU: Create VTD context table for PCI bus 0xc
(pptr=0xffffff80a5feb000)IOMMU: Create VTD context table for PCI bus 0xd
(pptr=0xffffff80a5fec000)IOMMU: Create VTD context table for PCI bus 0xe
(pptr=0xffffff80a5fed000)IOMMU: Create VTD context table for PCI bus 0xf
(pptr=0xffffff80a5fee000)IOMMU: Create VTD context table for PCI bus 0x10
(pptr=0xffffff80a5fef000)IOMMU: Create VTD context table for PCI bus 0x11
(pptr=0xffffff80a5ff0000)IOMMU: Create VTD context table for PCI bus 0x12
(pptr=0xffffff80a5ff1000)IOMMU: Create VTD context table for PCI bus 0x13
(pptr=0xffffff80a5ff2000)IOMMU: Create VTD context table for PCI bus 0x14
(pptr=0xffffff80a5ff3000)IOMMU: Create VTD context table for PCI bus 0x15
(pptr=0xffffff80a5ff4000)IOMMU: Create VTD context table for PCI bus 0x16
(pptr=0xffffff80a5ff5000)IOMMU: Create VTD context table for PCI bus 0x17
(pptr=0xffffff80a5ff6000)IOMMU: Create VTD context table for PCI bus 0x18
(pptr=0xffffff80a5ff7000)IOMMU: Create VTD context table for PCI bus 0x19
(pptr=0xffffff80a5ff8000)IOMMU: Create VTD context table for PCI bus 0x1a
(pptr=0xffffff80a5ff9000)IOMMU: Create VTD context table for PCI bus 0x1b
(pptr=0xffffff80a5ffa000)IOMMU: Create VTD context table for PCI bus 0x1c
(pptr=0xffffff80a5ffb000)IOMMU: Create VTD context table for PCI bus 0x1d
(pptr=0xffffff80a5ffc000)IOMMU: Create VTD context table for PCI bus 0x1e
(pptr=0xffffff80a5ffd000)IOMMU: Create VTD context table for PCI bus 0x1f
(pptr=0xffffff80a5ffe000)IOMMU: Create VTD context table for PCI bus 0x20
(pptr=0xffffff80a5fff000)IOMMU: Create VTD context table for PCI bus 0x21
(pptr=0xffffff80a6000000)IOMMU: Create VTD context table for PCI bus 0x22
(pptr=0xffffff80a6001000)IOMMU: Create VTD context table for PCI bus 0x23
(pptr=0xffffff80a6002000)IOMMU: Create VTD context table for PCI bus 0x24
(pptr=0xffffff80a6003000)IOMMU: Create VTD context table for PCI bus 0x25
(pptr=0xffffff80a6004000)IOMMU: Create VTD context table for PCI bus 0x26
(pptr=0xffffff80a6005000)IOMMU: Create VTD context table for PCI bus 0x27
(pptr=0xffffff80a6006000)IOMMU: Create VTD context table for PCI bus 0x28
(pptr=0xffffff80a6007000)IOMMU: Create VTD context table for PCI bus 0x29
(pptr=0xffffff80a6008000)IOMMU: Create VTD context table for PCI bus 0x2a
(pptr=0xffffff80a6009000)IOMMU: Create VTD context table for PCI bus 0x2b
(pptr=0xffffff80a600a000)IOMMU: Create VTD context table for PCI bus 0x2c
(pptr=0xffffff80a600b000)IOMMU: Create VTD context table for PCI bus 0x2d
(pptr=0xffffff80a600c000)IOMMU: Create VTD context table for PCI bus 0x2e
(pptr=0xffffff80a600d000)IOMMU: Create VTD context table for PCI bus 0x2f
(pptr=0xffffff80a600e000)IOMMU: Create VTD context table for PCI bus 0x30
(pptr=0xffffff80a600f000)IOMMU: Create VTD context table for PCI bus 0x31
(pptr=0xffffff80a6010000)IOMMU: Create VTD context table for PCI bus 0x32
(pptr=0xffffff80a6011000)IOMMU: Create VTD context table for PCI bus 0x33
(pptr=0xffffff80a6012000)IOMMU: Create VTD context table for PCI bus 0x34
(pptr=0xffffff80a6013000)IOMMU: Create VTD context table for PCI bus 0x35
(pptr=0xffffff80a6014000)IOMMU: Create VTD context table for PCI bus 0x36
(pptr=0xffffff80a6015000)IOMMU: Create VTD context table for PCI bus 0x37
(pptr=0xffffff80a6016000)IOMMU: Create VTD context table for PCI bus 0x38
(pptr=0xffffff80a6017000)IOMMU: Create VTD context table for PCI bus 0x39
(pptr=0xffffff80a6018000)IOMMU: Create VTD context table for PCI bus 0x3a
(pptr=0xffffff80a6019000)IOMMU: Create VTD context table for PCI bus 0x3b
(pptr=0xffffff80a601a000)IOMMU: Create VTD context table for PCI bus 0x3c
(pptr=0xffffff80a601b000)IOMMU: Create VTD context table for PCI bus 0x3d
(pptr=0xffffff80a601c000)IOMMU: Create VTD context table for PCI bus 0x3e
(pptr=0xffffff80a601d000)IOMMU: Create VTD context table for PCI bus 0x3f
(pptr=0xffffff80a601e000)IOMMU: Create VTD context table for PCI bus 0x40
(pptr=0xffffff80a601f000)IOMMU: Create VTD context table for PCI bus 0x41
(pptr=0xffffff80a6020000)IOMMU: Create VTD context table for PCI bus 0x42
(pptr=0xffffff80a6021000)IOMMU: Create VTD context table for PCI bus 0x43
(pptr=0xffffff80a6022000)IOMMU: Create VTD context table for PCI bus 0x44
(pptr=0xffffff80a6023000)IOMMU: Create VTD context table for PCI bus 0x45
(pptr=0xffffff80a6024000)IOMMU: Create VTD context table for PCI bus 0x46
(pptr=0xffffff80a6025000)IOMMU: Create VTD context table for PCI bus 0x47
(pptr=0xffffff80a6026000)IOMMU: Create VTD context table for PCI bus 0x48
(pptr=0xffffff80a6027000)IOMMU: Create VTD context table for PCI bus 0x49
(pptr=0xffffff80a6028000)IOMMU: Create VTD context table for PCI bus 0x4a
(pptr=0xffffff80a6029000)IOMMU: Create VTD context table for PCI bus 0x4b
(pptr=0xffffff80a602a000)IOMMU: Create VTD context table for PCI bus 0x4c
(pptr=0xffffff80a602b000)IOMMU: Create VTD context table for PCI bus 0x4d
(pptr=0xffffff80a602c000)IOMMU: Create VTD context table for PCI bus 0x4e
(pptr=0xffffff80a602d000)IOMMU: Create VTD context table for PCI bus 0x4f
(pptr=0xffffff80a602e000)IOMMU: Create VTD context table for PCI bus 0x50
(pptr=0xffffff80a602f000)IOMMU: Create VTD context table for PCI bus 0x51
(pptr=0xffffff80a6030000)IOMMU: Create VTD context table for PCI bus 0x52
(pptr=0xffffff80a6031000)IOMMU: Create VTD context table for PCI bus 0x53
(pptr=0xffffff80a6032000)IOMMU: Create VTD context table for PCI bus 0x54
(pptr=0xffffff80a6033000)IOMMU: Create VTD context table for PCI bus 0x55
(pptr=0xffffff80a6034000)IOMMU: Create VTD context table for PCI bus 0x56
(pptr=0xffffff80a6035000)IOMMU: Create VTD context table for PCI bus 0x57
(pptr=0xffffff80a6036000)IOMMU: Create VTD context table for PCI bus 0x58
(pptr=0xffffff80a6037000)IOMMU: Create VTD context table for PCI bus 0x59
(pptr=0xffffff80a6038000)IOMMU: Create VTD context table for PCI bus 0x5a
(pptr=0xffffff80a6039000)IOMMU: Create VTD context table for PCI bus 0x5b
(pptr=0xffffff80a603a000)IOMMU: Create VTD context table for PCI bus 0x5c
(pptr=0xffffff80a603b000)IOMMU: Create VTD context table for PCI bus 0x5d
(pptr=0xffffff80a603c000)IOMMU: Create VTD context table for PCI bus 0x5e
(pptr=0xffffff80a603d000)IOMMU: Create VTD context table for PCI bus 0x5f
(pptr=0xffffff80a603e000)IOMMU: Create VTD context table for PCI bus 0x60
(pptr=0xffffff80a603f000)IOMMU: Create VTD context table for PCI bus 0x61
(pptr=0xffffff80a6040000)IOMMU: Create VTD context table for PCI bus 0x62
(pptr=0xffffff80a6041000)IOMMU: Create VTD context table for PCI bus 0x63
(pptr=0xffffff80a6042000)IOMMU: Create VTD context table for PCI bus 0x64
(pptr=0xffffff80a6043000)IOMMU: Create VTD context table for PCI bus 0x65
(pptr=0xffffff80a6044000)IOMMU: Create VTD context table for PCI bus 0x66
(pptr=0xffffff80a6045000)IOMMU: Create VTD context table for PCI bus 0x67
(pptr=0xffffff80a6046000)IOMMU: Create VTD context table for PCI bus 0x68
(pptr=0xffffff80a6047000)IOMMU: Create VTD context table for PCI bus 0x69
(pptr=0xffffff80a6048000)IOMMU: Create VTD context table for PCI bus 0x6a
(pptr=0xffffff80a6049000)IOMMU: Create VTD context table for PCI bus 0x6b
(pptr=0xffffff80a604a000)IOMMU: Create VTD context table for PCI bus 0x6c
(pptr=0xffffff80a604b000)IOMMU: Create VTD context table for PCI bus 0x6d
(pptr=0xffffff80a604c000)IOMMU: Create VTD context table for PCI bus 0x6e
(pptr=0xffffff80a604d000)IOMMU: Create VTD context table for PCI bus 0x6f
(pptr=0xffffff80a604e000)IOMMU: Create VTD context table for PCI bus 0x70
(pptr=0xffffff80a604f000)IOMMU: Create VTD context table for PCI bus 0x71
(pptr=0xffffff80a6050000)IOMMU: Create VTD context table for PCI bus 0x72
(pptr=0xffffff80a6051000)IOMMU: Create VTD context table for PCI bus 0x73
(pptr=0xffffff80a6052000)IOMMU: Create VTD context table for PCI bus 0x74
(pptr=0xffffff80a6053000)IOMMU: Create VTD context table for PCI bus 0x75
(pptr=0xffffff80a6054000)IOMMU: Create VTD context table for PCI bus 0x76
(pptr=0xffffff80a6055000)IOMMU: Create VTD context table for PCI bus 0x77
(pptr=0xffffff80a6056000)IOMMU: Create VTD context table for PCI bus 0x78
(pptr=0xffffff80a6057000)IOMMU: Create VTD context table for PCI bus 0x79
(pptr=0xffffff80a6058000)IOMMU: Create VTD context table for PCI bus 0x7a
(pptr=0xffffff80a6059000)IOMMU: Create VTD context table for PCI bus 0x7b
(pptr=0xffffff80a605a000)IOMMU: Create VTD context table for PCI bus 0x7c
(pptr=0xffffff80a605b000)IOMMU: Create VTD context table for PCI bus 0x7d
(pptr=0xffffff80a605c000)IOMMU: Create VTD context table for PCI bus 0x7e
(pptr=0xffffff80a605d000)IOMMU: Create VTD context table for PCI bus 0x7f
(pptr=0xffffff80a605e000)IOMMU: Create VTD context table for PCI bus 0x80
(pptr=0xffffff80a605f000)IOMMU: Create VTD context table for PCI bus 0x81
(pptr=0xffffff80a6060000)IOMMU: Create VTD context table for PCI bus 0x82
(pptr=0xffffff80a6061000)IOMMU: Create VTD context table for PCI bus 0x83
(pptr=0xffffff80a6062000)IOMMU: Create VTD context table for PCI bus 0x84
(pptr=0xffffff80a6063000)IOMMU: Create VTD context table for PCI bus 0x85
(pptr=0xffffff80a6064000)IOMMU: Create VTD context table for PCI bus 0x86
(pptr=0xffffff80a6065000)IOMMU: Create VTD context table for PCI bus 0x87
(pptr=0xffffff80a6066000)IOMMU: Create VTD context table for PCI bus 0x88
(pptr=0xffffff80a6067000)IOMMU: Create VTD context table for PCI bus 0x89
(pptr=0xffffff80a6068000)IOMMU: Create VTD context table for PCI bus 0x8a
(pptr=0xffffff80a6069000)IOMMU: Create VTD context table for PCI bus 0x8b
(pptr=0xffffff80a606a000)IOMMU: Create VTD context table for PCI bus 0x8c
(pptr=0xffffff80a606b000)IOMMU: Create VTD context table for PCI bus 0x8d
(pptr=0xffffff80a606c000)IOMMU: Create VTD context table for PCI bus 0x8e
(pptr=0xffffff80a606d000)IOMMU: Create VTD context table for PCI bus 0x8f
(pptr=0xffffff80a606e000)IOMMU: Create VTD context table for PCI bus 0x90
(pptr=0xffffff80a606f000)IOMMU: Create VTD context table for PCI bus 0x91
(pptr=0xffffff80a6070000)IOMMU: Create VTD context table for PCI bus 0x92
(pptr=0xffffff80a6071000)IOMMU: Create VTD context table for PCI bus 0x93
(pptr=0xffffff80a6072000)IOMMU: Create VTD context table for PCI bus 0x94
(pptr=0xffffff80a6073000)IOMMU: Create VTD context table for PCI bus 0x95
(pptr=0xffffff80a6074000)IOMMU: Create VTD context table for PCI bus 0x96
(pptr=0xffffff80a6075000)IOMMU: Create VTD context table for PCI bus 0x97
(pptr=0xffffff80a6076000)IOMMU: Create VTD context table for PCI bus 0x98
(pptr=0xffffff80a6077000)IOMMU: Create VTD context table for PCI bus 0x99
(pptr=0xffffff80a6078000)IOMMU: Create VTD context table for PCI bus 0x9a
(pptr=0xffffff80a6079000)IOMMU: Create VTD context table for PCI bus 0x9b
(pptr=0xffffff80a607a000)IOMMU: Create VTD context table for PCI bus 0x9c
(pptr=0xffffff80a607b000)IOMMU: Create VTD context table for PCI bus 0x9d
(pptr=0xffffff80a607c000)IOMMU: Create VTD context table for PCI bus 0x9e
(pptr=0xffffff80a607d000)IOMMU: Create VTD context table for PCI bus 0x9f
(pptr=0xffffff80a607e000)IOMMU: Create VTD context table for PCI bus 0xa0
(pptr=0xffffff80a607f000)IOMMU: Create VTD context table for PCI bus 0xa1
(pptr=0xffffff80a6080000)IOMMU: Create VTD context table for PCI bus 0xa2
(pptr=0xffffff80a6081000)IOMMU: Create VTD context table for PCI bus 0xa3
(pptr=0xffffff80a6082000)IOMMU: Create VTD context table for PCI bus 0xa4
(pptr=0xffffff80a6083000)IOMMU: Create VTD context table for PCI bus 0xa5
(pptr=0xffffff80a6084000)IOMMU: Create VTD context table for PCI bus 0xa6
(pptr=0xffffff80a6085000)IOMMU: Create VTD context table for PCI bus 0xa7
(pptr=0xffffff80a6086000)IOMMU: Create VTD context table for PCI bus 0xa8
(pptr=0xffffff80a6087000)IOMMU: Create VTD context table for PCI bus 0xa9
(pptr=0xffffff80a6088000)IOMMU: Create VTD context table for PCI bus 0xaa
(pptr=0xffffff80a6089000)IOMMU: Create VTD context table for PCI bus 0xab
(pptr=0xffffff80a608a000)IOMMU: Create VTD context table for PCI bus 0xac
(pptr=0xffffff80a608b000)IOMMU: Create VTD context table for PCI bus 0xad
(pptr=0xffffff80a608c000)IOMMU: Create VTD context table for PCI bus 0xae
(pptr=0xffffff80a608d000)IOMMU: Create VTD context table for PCI bus 0xaf
(pptr=0xffffff80a608e000)IOMMU: Create VTD context table for PCI bus 0xb0
(pptr=0xffffff80a608f000)IOMMU: Create VTD context table for PCI bus 0xb1
(pptr=0xffffff80a6090000)IOMMU: Create VTD context table for PCI bus 0xb2
(pptr=0xffffff80a6091000)IOMMU: Create VTD context table for PCI bus 0xb3
(pptr=0xffffff80a6092000)IOMMU: Create VTD context table for PCI bus 0xb4
(pptr=0xffffff80a6093000)IOMMU: Create VTD context table for PCI bus 0xb5
(pptr=0xffffff80a6094000)IOMMU: Create VTD context table for PCI bus 0xb6
(pptr=0xffffff80a6095000)IOMMU: Create VTD context table for PCI bus 0xb7
(pptr=0xffffff80a6096000)IOMMU: Create VTD context table for PCI bus 0xb8
(pptr=0xffffff80a6097000)IOMMU: Create VTD context table for PCI bus 0xb9
(pptr=0xffffff80a6098000)IOMMU: Create VTD context table for PCI bus 0xba
(pptr=0xffffff80a6099000)IOMMU: Create VTD context table for PCI bus 0xbb
(pptr=0xffffff80a609a000)IOMMU: Create VTD context table for PCI bus 0xbc
(pptr=0xffffff80a609b000)IOMMU: Create VTD context table for PCI bus 0xbd
(pptr=0xffffff80a609c000)IOMMU: Create VTD context table for PCI bus 0xbe
(pptr=0xffffff80a609d000)IOMMU: Create VTD context table for PCI bus 0xbf
(pptr=0xffffff80a609e000)IOMMU: Create VTD context table for PCI bus 0xc0
(pptr=0xffffff80a609f000)IOMMU: Create VTD context table for PCI bus 0xc1
(pptr=0xffffff80a60a0000)IOMMU: Create VTD context table for PCI bus 0xc2
(pptr=0xffffff80a60a1000)IOMMU: Create VTD context table for PCI bus 0xc3
(pptr=0xffffff80a60a2000)IOMMU: Create VTD context table for PCI bus 0xc4
(pptr=0xffffff80a60a3000)IOMMU: Create VTD context table for PCI bus 0xc5
(pptr=0xffffff80a60a4000)IOMMU: Create VTD context table for PCI bus 0xc6
(pptr=0xffffff80a60a5000)IOMMU: Create VTD context table for PCI bus 0xc7
(pptr=0xffffff80a60a6000)IOMMU: Create VTD context table for PCI bus 0xc8
(pptr=0xffffff80a60a7000)IOMMU: Create VTD context table for PCI bus 0xc9
(pptr=0xffffff80a60a8000)IOMMU: Create VTD context table for PCI bus 0xca
(pptr=0xffffff80a60a9000)IOMMU: Create VTD context table for PCI bus 0xcb
(pptr=0xffffff80a60aa000)IOMMU: Create VTD context table for PCI bus 0xcc
(pptr=0xffffff80a60ab000)IOMMU: Create VTD context table for PCI bus 0xcd
(pptr=0xffffff80a60ac000)IOMMU: Create VTD context table for PCI bus 0xce
(pptr=0xffffff80a60ad000)IOMMU: Create VTD context table for PCI bus 0xcf
(pptr=0xffffff80a60ae000)IOMMU: Create VTD context table for PCI bus 0xd0
(pptr=0xffffff80a60af000)IOMMU: Create VTD context table for PCI bus 0xd1
(pptr=0xffffff80a60b0000)IOMMU: Create VTD context table for PCI bus 0xd2
(pptr=0xffffff80a60b1000)IOMMU: Create VTD context table for PCI bus 0xd3
(pptr=0xffffff80a60b2000)IOMMU: Create VTD context table for PCI bus 0xd4
(pptr=0xffffff80a60b3000)IOMMU: Create VTD context table for PCI bus 0xd5
(pptr=0xffffff80a60b4000)IOMMU: Create VTD context table for PCI bus 0xd6
(pptr=0xffffff80a60b5000)IOMMU: Create VTD context table for PCI bus 0xd7
(pptr=0xffffff80a60b6000)IOMMU: Create VTD context table for PCI bus 0xd8
(pptr=0xffffff80a60b7000)IOMMU: Create VTD context table for PCI bus 0xd9
(pptr=0xffffff80a60b8000)IOMMU: Create VTD context table for PCI bus 0xda
(pptr=0xffffff80a60b9000)IOMMU: Create VTD context table for PCI bus 0xdb
(pptr=0xffffff80a60ba000)IOMMU: Create VTD context table for PCI bus 0xdc
(pptr=0xffffff80a60bb000)IOMMU: Create VTD context table for PCI bus 0xdd
(pptr=0xffffff80a60bc000)IOMMU: Create VTD context table for PCI bus 0xde
(pptr=0xffffff80a60bd000)IOMMU: Create VTD context table for PCI bus 0xdf
(pptr=0xffffff80a60be000)IOMMU: Create VTD context table for PCI bus 0xe0
(pptr=0xffffff80a60bf000)IOMMU: Create VTD context table for PCI bus 0xe1
(pptr=0xffffff80a60c0000)IOMMU: Create VTD context table for PCI bus 0xe2
(pptr=0xffffff80a60c1000)IOMMU: Create VTD context table for PCI bus 0xe3
(pptr=0xffffff80a60c2000)IOMMU: Create VTD context table for PCI bus 0xe4
(pptr=0xffffff80a60c3000)IOMMU: Create VTD context table for PCI bus 0xe5
(pptr=0xffffff80a60c4000)IOMMU: Create VTD context table for PCI bus 0xe6
(pptr=0xffffff80a60c5000)IOMMU: Create VTD context table for PCI bus 0xe7
(pptr=0xffffff80a60c6000)IOMMU: Create VTD context table for PCI bus 0xe8
(pptr=0xffffff80a60c7000)IOMMU: Create VTD context table for PCI bus 0xe9
(pptr=0xffffff80a60c8000)IOMMU: Create VTD context table for PCI bus 0xea
(pptr=0xffffff80a60c9000)IOMMU: Create VTD context table for PCI bus 0xeb
(pptr=0xffffff80a60ca000)IOMMU: Create VTD context table for PCI bus 0xec
(pptr=0xffffff80a60cb000)IOMMU: Create VTD context table for PCI bus 0xed
(pptr=0xffffff80a60cc000)IOMMU: Create VTD context table for PCI bus 0xee
(pptr=0xffffff80a60cd000)IOMMU: Create VTD context table for PCI bus 0xef
(pptr=0xffffff80a60ce000)IOMMU: Create VTD context table for PCI bus 0xf0
(pptr=0xffffff80a60cf000)IOMMU: Create VTD context table for PCI bus 0xf1
(pptr=0xffffff80a60d0000)IOMMU: Create VTD context table for PCI bus 0xf2
(pptr=0xffffff80a60d1000)IOMMU: Create VTD context table for PCI bus 0xf3
(pptr=0xffffff80a60d2000)IOMMU: Create VTD context table for PCI bus 0xf4
(pptr=0xffffff80a60d3000)IOMMU: Create VTD context table for PCI bus 0xf5
(pptr=0xffffff80a60d4000)IOMMU: Create VTD context table for PCI bus 0xf6
(pptr=0xffffff80a60d5000)IOMMU: Create VTD context table for PCI bus 0xf7
(pptr=0xffffff80a60d6000)IOMMU: Create VTD context table for PCI bus 0xf8
(pptr=0xffffff80a60d7000)IOMMU: Create VTD context table for PCI bus 0xf9
(pptr=0xffffff80a60d8000)IOMMU: Create VTD context table for PCI bus 0xfa
(pptr=0xffffff80a60d9000)IOMMU: Create VTD context table for PCI bus 0xfb
(pptr=0xffffff80a60da000)IOMMU: Create VTD context table for PCI bus 0xfc
(pptr=0xffffff80a60db000)IOMMU: Create VTD context table for PCI bus 0xfd
(pptr=0xffffff80a60dc000)IOMMU: Create VTD context table for PCI bus 0xfe
(pptr=0xffffff80a60dd000)IOMMU: Create VTD context table for PCI bus 0xff
(pptr=0xffffff80a60de000)IOMMU 0x0: enabling... enabledIOMMU 0x1:
enabling... enabledStarting node #1 with APIC ID 1 Booting all finished,
dropped to user spaceReceived reserved IRQ: 124IOMMU: DMA read page fault
from bus/dev/fun 0xd0 on address 0x0:aae16000 with reason code 0x6Received
reserved IRQ: 124IOMMU: DMA write page fault from bus/dev/fun 0x500 on
address 0x0:a851c000 with reason code 0x2Received reserved IRQ: 124IOMMU:
DMA write page fault from bus/dev/fun 0x500 on address 0x0:a851c000 with
reason code 0x2Received reserved IRQ: 124IOMMU: DMA write page fault from
bus/dev/fun 0x500 on address 0x0:a851d000 with reason code 0x2Received
reserved IRQ: 124IOMMU: DMA write page fault from bus/dev/fun 0x500 on
address 0x0:a851e000 with reason code 0x2Received reserved IRQ: 124IOMMU:
DMA write page fault from bus/dev/fun 0x500 on address 0x0:a851e000 with
reason code 0x2sel4platsupport_get_num_pmem_regions@pmem.c:23 Could not
find info*
and then the system as far as I can tell hangs - no serial or VGA output.
What could be the cause?
Regards
M
On Mon, Feb 19, 2018 at 4:07 PM,
Hi Michal,
Which revision of default.xml are you using? Adrian thinks it could be potentially related to, and fixed by, this commit[1] if you don't have it yet.
Kent
[1] https://github.com/seL4/seL4/commit/3d6f4f9bb7bfe42628dfa555601401 fa4efcdf2d
------------------------------ *From:* Devel
on behalf of Michal Podhradsky *Sent:* Tuesday, February 20, 2018 9:37 AM *To:* devel@sel4.systems *Subject:* [seL4] CamkesVM CMA34CR_centos app Hi all,
I have a CM34CR CPU module https://wiki.sel4.systems/CMA34DBMC and I am trying to run the related camkes app on it.
I choose the centos app: https://github.com/seL4/ camkes-vm/blob/master/apps/vm/cma34cr_centos.camkes
I am using default camkes vm manifest from https://github.com/seL4/ camkes-vm-manifest.
Compile with:
*make clean *
*make cma34cr_centos_defcondig *
*make silentoldconfig * *make*
And then I create a bootable USB following instructions here https://wiki.sel4.systems/Hardware/IA32.
Then after I load the kernel and capdl image, I get the following output on serial:
*Boot config: parsing cmdline 'sel4kernel' Boot config: console_port = 0x3f8 Boot config: debug_port = 0x3f8 Boot config: disable_iommu = false Detected 1 boot module(s): module #0: start=0xd34000 end=0x3b387e8 size=0x2e047e8 name='rootserver' Parsing GRUB physical memory map Physical Memory Region from 0 size 9d400 type 1 Physical Memory Region from 9d400 size 2c00 type 2 Physical Memory Region from e0000 size 20000 type 2 Physical Memory Region from 100000 size 1ff00000 type 1 Adding physical memory region 0x100000-0x20000000 Physical Memory Region from 20000000 size 200000 type 2 Physical Memory Region from 20200000 size 1fe04000 type 1 Adding physical memory region 0x20200000-0x40004000 Physical Memory Region from 40004000 size 1000 type 2 Physical Memory Region from 40005000 size 64bab000 type 1 Adding physical memory region 0x40005000-0xa4bb0000 Physical Memory Region from a4bb0000 size 1400000 type 2 Physical Memory Region from a5fb0000 size 4a0f000 type 1 Adding physical memory region 0xa5fb0000-0xaa9bf000 Physical Memory Region from aa9bf000 size 500000 type 2 Physical Memory Region from aaebf000 size 100000 type 4 Physical Memory Region from aafbf000 size 40000 type 3 Physical Memory Region from aafff000 size 1000 type 1 Adding physical memory region 0xaafff000-0xab000000 Physical Memory Region from ab000000 size 4a00000 type 2 Physical Memory Region from f0000000 size 4000000 type 2 Physical Memory Region from feb00000 size 4000 type 2 Physical Memory Region from fec00000 size 1000 type 2 Physical Memory Region from fed10000 size a000 type 2 Physical Memory Region from fed1c000 size 4000 type 2 Physical Memory Region from fee00000 size 1000 type 2 Physical Memory Region from ffc00000 size 400000 type 2 Physical Memory Region from 100000000 size 14f600000 type 1 Adding physical memory region 0x100000000-0x24f600000 Got VBE info in multiboot. Current video mode is 16767 ACPI: RSDP paddr=0xfe020 ACPI: RSDP vaddr=0xfe020 ACPI: RSDT paddr=0xaafda0c4 ACPI: RSDT vaddr=0xaafda0c4 Kernel loaded to: start=0x100000 end=0xc17000 size=0xb17000 entry=0x101269 ACPI: RSDT paddr=0xaafda0c4 ACPI: RSDT vaddr=0xaafda0c4 ACPI: FADT paddr=0xaaffb000 ACPI: FADT vaddr=0xaaffb000 ACPI: FADT flags=0x3c6a5 ACPI: DMAR paddr=0xaafde000 ACPI: DMAR vaddr=0xaafde000 ACPI: IOMMU host address width: 36 ACPI: registering RMRR entry for region for device: bus=0x0 dev=0x1d fun=0x0 ACPI: registering RMRR entry for region for device: bus=0x0 dev=0x1a fun=0x0 ACPI: registering RMRR entry for region for device: bus=0x0 dev=0x14 fun=0x0 ACPI: registering RMRR entry for region for device: bus=0x0 dev=0x2 fun=0x0 ACPI: 2 IOMMUs detected ACPI: MADT paddr=0xaaff9000 ACPI: MADT vaddr=0xaaff9000 ACPI: MADT apic_addr=0xfee00000 ACPI: MADT flags=0x1 ACPI: MADT_APIC apic_id=0x0 ACPI: MADT_APIC apic_id=0x1 ACPI: MADT_APIC apic_id=0x2 ACPI: Not recording this APIC, only support 2 ACPI: MADT_APIC apic_id=0x3 ACPI: Not recording this APIC, only support 2 ACPI: MADT_IOAPIC ioapic_id=0 ioapic_addr=0xfec00000 gsib=0 ACPI: MADT_ISO bus=0 source=0 gsi=2 flags=0x0 ACPI: MADT_ISO bus=0 source=9 gsi=9 flags=0xd ACPI: 2 CPU(s) detected ELF-loading userland images from boot modules: size=0x41fc000 v_entry=0x409000 v_start=0x400000 v_end=0x45fc000 p_start=0x3b39000 p_end=0x7d35000 Moving loaded userland images to final location: from=0x3b39000 to=0xc17000 size=0x41fc000 Starting node #0 with APIC ID 0 Mapping kernel window is done ========== KERNEL EXCEPTION ========== Vector: 0xd ErrCode: 0x0 IP: 0xffffffff80115c04 SP: 0xffffffff80a0bfa0 FLAGS: 0x10046 CR0: 0x80010013 CR2: 0x0 (page-fault address) CR3: 0xa12000 (page-directory physical address) CR4: 0x110668 Stack Dump: *0xffffffff80a0bfa0 == 0x0 *0xffffffff80a0bfa8 == 0x0 *0xffffffff80a0bfb0 == 0x3b39000 *0xffffffff80a0bfb8 == 0xffffffff80116b80 *0xffffffff80a0bfc0 == 0x0 *0xffffffff80a0bfc8 == 0x22a8 *0xffffffff80a0bfd0 == 0x0 *0xffffffff80a0bfd8 == 0x0 *0xffffffff80a0bfe0 == 0xffffffff80000000 *0xffffffff80a0bfe8 == 0x7e000 *0xffffffff80a0bff0 == 0xaa24c70c *0xffffffff80a0bff8 == 0x1f *0xffffffff80a0c000 == 0xfffffffff000ba86 *0xffffffff80a0c008 == 0xffffffff8081f0c0 *0xffffffff80a0c010 == 0x0 *0xffffffff80a0c018 == 0x0 *0xffffffff80a0c020 == 0x0 *0xffffffff80a0c028 == 0x0 *0xffffffff80a0c030 == 0x0 *0xffffffff80a0c038 == 0x0 Halting... halting... Kernel entry via Interrupt, irq 0 *
Any pointers at what is the cause of error here? The machien runs normally with vanilla CentOS so I don't think it is a hardware issue. Also, I am assuming the CMA34CR is identical to the one you have on your side (at least checking the lspci output against the camkes description the memory regions etc seem to match).
Thanks in advance. M
participants (2)
-
Kent.Mcleod@data61.csiro.au
-
Michal Podhradsky