Please let me know if I should move this to -misc since I have no fix.
I am trying to get arm64 to work in Oracle Cloud Infrastructure (OCI)
but I am not properly prepared for this. I believe the issue lies
within the ARM GIC ITS needing support for virtualization. Here is the
snippet from dmesg:
agintc0 at mainbus0 shift 4:4 nirq 288 nredist 1: "interrupt-controller"
agintcmsi0 at agintc0: unsupported type 0x000000000001ef71
...
vioscsi0 at virtio2: qsize 128
scsibus0 at vioscsi0: 255 targets
virtio2[0]: couldn't establish msix interrupt
virtio2[0]: couldn't establish msix interrupt
virtio2: couldn't map interrupt
It fails this check, I believe because HCC is 0:
if ((typer & GITS_TYPER_PHYS) == 0 || typer & GITS_TYPER_PTA ||
GITS_TYPER_HCC(typer) < ncpus || typer & GITS_TYPER_CIL) {
printf(": unsupported type 0x%016llx\n", typer);
goto unmap;
}
If I remove this check I get what follows at the end of this mail (now
with DEBUG_AGINTC and VIRTIO_DEBUG options). Any assistance on where
to start/look from those familiar with this architecture is
appreciated.
Regards,
Scott
==========
disks: sd0* sd1
>> OpenBSD/arm64 BOOTAA64 1.6
boot> boot /bsd.rd -c
cannot open sd0a:/etc/random.seed: No such file or directory
booting sd0a:/bsd.rd: 2579640+698016+13013760+629104
[216058+109+596688+233280]=0x14026b0
FACP APIC GTDT MCFG SPCR IORT BGRT
type 0x2 pa 0x40000000 va 0x0 pages 0x4000 attr 0x8
type 0x7 pa 0x44000000 va 0x0 pages 0x1743c0 attr 0x8
type 0x2 pa 0x1b83c0000 va 0x0 pages 0x100 attr 0x8
type 0x1 pa 0x1b84c0000 va 0x0 pages 0x2a attr 0x8
type 0x3 pa 0x1b84ea000 va 0x0 pages 0xd6 attr 0x8
type 0x9 pa 0x1b85c0000 va 0x0 pages 0x10 attr 0x8
type 0x7 pa 0x1b85d0000 va 0x0 pages 0x3 attr 0x8
type 0x3 pa 0x1b85d3000 va 0x0 pages 0xdd attr 0x8
type 0x6 pa 0x1b86b0000 va 0xa3863000 pages 0x50 attr 0x8000000000000008
type 0x5 pa 0x1b8700000 va 0xa38b3000 pages 0x50 attr 0x8000000000000008
type 0x6 pa 0x1b8750000 va 0xa3903000 pages 0x50 attr 0x8000000000000008
type 0x5 pa 0x1b87a0000 va 0xa3953000 pages 0x50 attr 0x8000000000000008
type 0x6 pa 0x1b87f0000 va 0xa39a3000 pages 0x50 attr 0x8000000000000008
type 0x5 pa 0x1b8840000 va 0xa39f3000 pages 0x50 attr 0x8000000000000008
type 0x6 pa 0x1b8890000 va 0xa3a43000 pages 0xc0 attr 0x8000000000000008
type 0x5 pa 0x1b8950000 va 0xa3b03000 pages 0x60 attr 0x8000000000000008
type 0x6 pa 0x1b89b0000 va 0xa3b63000 pages 0xa0 attr 0x8000000000000008
type 0x5 pa 0x1b8a50000 va 0xa3c03000 pages 0xf0 attr 0x8000000000000008
type 0x7 pa 0x1b8b40000 va 0x0 pages 0x16bc attr 0x8
type 0x4 pa 0x1ba1fc000 va 0x0 pages 0x781 attr 0x8
type 0x7 pa 0x1ba97d000 va 0x0 pages 0x51 attr 0x8
type 0x4 pa 0x1ba9ce000 va 0x0 pages 0x1 attr 0x8
type 0x7 pa 0x1ba9cf000 va 0x0 pages 0x28 attr 0x8
type 0x4 pa 0x1ba9f7000 va 0x0 pages 0x1041 attr 0x8
type 0x7 pa 0x1bba38000 va 0x0 pages 0x7 attr 0x8
type 0x3 pa 0x1bba3f000 va 0x0 pages 0x3e1 attr 0x8
type 0x5 pa 0x1bbe20000 va 0xa6fd3000 pages 0x90 attr 0x8000000000000008
type 0x7 pa 0x1bbeb0000 va 0x0 pages 0x10 attr 0x8
type 0x6 pa 0x1bbec0000 va 0xa7073000 pages 0x120 attr 0x8000000000000008
type 0x7 pa 0x1bbfe0000 va 0x0 pages 0x1f attr 0x8
type 0x4 pa 0x1bbfff000 va 0x0 pages 0x21 attr 0x8
type 0x7 pa 0x1bc020000 va 0x0 pages 0x3446 attr 0x8
type 0x4 pa 0x1bf466000 va 0x0 pages 0x22 attr 0x8
type 0x3 pa 0x1bf488000 va 0x0 pages 0x69 attr 0x8
type 0x4 pa 0x1bf4f1000 va 0x0 pages 0x9c6 attr 0x8
type 0x3 pa 0x1bfeb7000 va 0x0 pages 0x12 attr 0x8
type 0x4 pa 0x1bfec9000 va 0x0 pages 0x101 attr 0x8
type 0x3 pa 0x1bffca000 va 0x0 pages 0x32 attr 0x8
type 0x4 pa 0x1bfffc000 va 0x0 pages 0x4 attr 0x8
type 0xb pa 0x4000000 va 0xa7193000 pages 0x4000 attr 0x8000000000000001
type 0xb pa 0x9010000 va 0xab193000 pages 0x1 attr 0x8000000000000001
Copyright (c) 1982, 1986, 1989, 1991, 1993
The Regents of the University of California. All rights reserved.
Copyright (c) 1995-2021 OpenBSD. All rights reserved. https://www.OpenBSD.org
OpenBSD 7.0 (RAMDISK) #3: Thu Mar 3 00:16:19 EST 2022
[email protected]:/usr/src/sys/arch/arm64/compile/RAMDISK
real mem = 6434549760 (6136MB)
avail mem = 6131916800 (5847MB)
User Kernel Config
UKC> disable vio
58 vio* disabled
UKC> exit
Continuing...
random: boothowto does not indicate good seed
mainbus0 at root: ACPI
psci0 at mainbus0: PSCI 1.0, SMCCC 1.1
cpu0 at mainbus0 mpidr 0: ARM Neoverse N1 r3p1
cpu0: 64KB 64b/line 4-way L1 PIPT I-cache, 64KB 64b/line 4-way L1 D-cache
cpu0: 1024KB 64b/line 8-way L2 cache
cpu0:
DP,RDM,Atomic,CRC32,SHA2,SHA1,AES+PMULL,LRCPC,DPB,ASID16,PAN+ATS1E1,LO,HPDS,HAFDBS,CSV3,CSV2
efi0 at mainbus0: UEFI 2.7
efi0: EDK II rev 0x10000
agintc0 at mainbus0 shift 4:4probing redistributor 0 0
nirq 288 nredist 1: "interrupt-controller"
agintcmsi0 at agintc0agintcmsi0: command queue timeout
agtimer0 at mainbus0: 25000 kHz
acpi0 at mainbus0: ACPI 5.1
acpi0: tables DSDT FACP APIC GTDT MCFG SPCR IORT BGRT
acpimcfg0 at acpi0
acpimcfg0: addr 0x4010000000, bus 0-255
acpiiort0 at acpi0
"ACPI0007" at acpi0 not configured
pluart0 at acpi0 COM0 addr 0x9000000/0x1000 irq
33agintc_intr_establish: irq 33 level 7 [pluart0]
irq 33 to block at 7 7
router 6108 irq 33 val 0000000000000000
: console
"LNRO0015" at acpi0 not configured
"LNRO0015" at acpi0 not configured
"QEMU0002" at acpi0 not configured
"LNRO0005" at acpi0 not configured
"LNRO0005" at acpi0 not configured
"LNRO0005" at acpi0 not configured
"LNRO0005" at acpi0 not configured
"LNRO0005" at acpi0 not configured
"LNRO0005" at acpi0 not configured
"LNRO0005" at acpi0 not configured
"LNRO0005" at acpi0 not configured
"LNRO0005" at acpi0 not configured
"LNRO0005" at acpi0 not configured
"LNRO0005" at acpi0 not configured
"LNRO0005" at acpi0 not configured
"LNRO0005" at acpi0 not configured
"LNRO0005" at acpi0 not configured
"LNRO0005" at acpi0 not configured
"LNRO0005" at acpi0 not configured
"LNRO0005" at acpi0 not configured
"LNRO0005" at acpi0 not configured
"LNRO0005" at acpi0 not configured
"LNRO0005" at acpi0 not configured
"LNRO0005" at acpi0 not configured
"LNRO0005" at acpi0 not configured
"LNRO0005" at acpi0 not configured
"LNRO0005" at acpi0 not configured
"LNRO0005" at acpi0 not configured
"LNRO0005" at acpi0 not configured
"LNRO0005" at acpi0 not configured
"LNRO0005" at acpi0 not configured
"LNRO0005" at acpi0 not configured
"LNRO0005" at acpi0 not configured
"LNRO0005" at acpi0 not configured
"LNRO0005" at acpi0 not configured
acpipci0 at acpi0 PCI0
pci0 at acpipci0
"Red Hat Host" rev 0x00 at pci0 dev 0 function 0 not configured
virtio0 at pci0 dev 1 function 0 "Qumranet Virtio 1.x GPU" rev 0x01
virtio_pci_dump_caps: cfgoff 0x84 len 0x14 type 0x5 bar 0: off 0 len 0
virtio_pci_dump_caps: cfgoff 0x70 len 0x14 type 0x2 bar 0x4: off
0x3000 len 0x1000
virtio_pci_dump_caps: cfgoff 0x60 len 0x10 type 0x4 bar 0x4: off
0x2000 len 0x1000
virtio_pci_dump_caps: cfgoff 0x50 len 0x10 type 0x3 bar 0x4: off
0x1000 len 0x1000
virtio_pci_dump_caps: cfgoff 0x40 len 0x10 type 0x1 bar 0x4: off 0 len 0x1000
virtio0: no matching child driver; not configured
xhci0 at pci0 dev 2 function 0 vendor "Red Hat", unknown product
0x000d rev 0x01: couldn't map interrupt
virtio1 at pci0 dev 3 function 0 "Qumranet Virtio Network" rev 0x00
virtio_pci_dump_caps: cfgoff 0x84 len 0x14 type 0x5 bar 0: off 0 len 0
virtio_pci_dump_caps: cfgoff 0x70 len 0x14 type 0x2 bar 0x4: off
0x3000 len 0x1000
virtio_pci_dump_caps: cfgoff 0x60 len 0x10 type 0x4 bar 0x4: off
0x2000 len 0x1000
virtio_pci_dump_caps: cfgoff 0x50 len 0x10 type 0x3 bar 0x4: off
0x1000 len 0x1000
virtio_pci_dump_caps: cfgoff 0x40 len 0x10 type 0x1 bar 0x4: off 0 len 0x1000
virtio1: no matching child driver; not configured
ppb0 at pci0 dev 16 function 0 vendor "Red Hat", unknown product 0x000c rev 0x00
pci1 at ppb0 bus 1
ppb1 at pci0 dev 16 function 1 vendor "Red Hat", unknown product 0x000c rev 0x00
pci2 at ppb1 bus 2
ppb2 at pci0 dev 16 function 2 vendor "Red Hat", unknown product 0x000c rev 0x00
pci3 at ppb2 bus 3
ppb3 at pci0 dev 16 function 3 vendor "Red Hat", unknown product 0x000c rev 0x00
pci4 at ppb3 bus 4
ppb4 at pci0 dev 16 function 4 vendor "Red Hat", unknown product 0x000c rev 0x00
pci5 at ppb4 bus 5
ppb5 at pci0 dev 16 function 5 vendor "Red Hat", unknown product 0x000c rev 0x00
pci6 at ppb5 bus 6
ppb6 at pci0 dev 16 function 6 vendor "Red Hat", unknown product 0x000c rev 0x00
pci7 at ppb6 bus 7
ppb7 at pci0 dev 16 function 7 vendor "Red Hat", unknown product 0x000c rev 0x00
pci8 at ppb7 bus 8
ppb8 at pci0 dev 17 function 0 vendor "Red Hat", unknown product 0x000c rev 0x00
pci9 at ppb8 bus 9
ppb9 at pci0 dev 17 function 1 vendor "Red Hat", unknown product 0x000c rev 0x00
pci10 at ppb9 bus 10
ppb10 at pci0 dev 17 function 2 vendor "Red Hat", unknown product
0x000c rev 0x00
pci11 at ppb10 bus 11
ppb11 at pci0 dev 17 function 3 vendor "Red Hat", unknown product
0x000c rev 0x00
pci12 at ppb11 bus 12
ppb12 at pci0 dev 17 function 4 vendor "Red Hat", unknown product
0x000c rev 0x00
pci13 at ppb12 bus 13
ppb13 at pci0 dev 17 function 5 vendor "Red Hat", unknown product
0x000c rev 0x00
pci14 at ppb13 bus 14
ppb14 at pci0 dev 17 function 6 vendor "Red Hat", unknown product
0x000c rev 0x00
pci15 at ppb14 bus 15
ppb15 at pci0 dev 17 function 7 vendor "Red Hat", unknown product
0x000c rev 0x00
pci16 at ppb15 bus 16
ppb16 at pci0 dev 18 function 0 vendor "Red Hat", unknown product
0x000c rev 0x00
pci17 at ppb16 bus 17
ppb17 at pci0 dev 18 function 1 vendor "Red Hat", unknown product
0x000c rev 0x00
pci18 at ppb17 bus 18
ppb18 at pci0 dev 18 function 2 vendor "Red Hat", unknown product
0x000c rev 0x00
pci19 at ppb18 bus 19
ppb19 at pci0 dev 18 function 3 vendor "Red Hat", unknown product
0x000c rev 0x00
pci20 at ppb19 bus 20
ppb20 at pci0 dev 18 function 4 vendor "Red Hat", unknown product
0x000c rev 0x00
pci21 at ppb20 bus 21
ppb21 at pci0 dev 18 function 5 vendor "Red Hat", unknown product
0x000c rev 0x00
pci22 at ppb21 bus 22
ppb22 at pci0 dev 18 function 6 vendor "Red Hat", unknown product
0x000c rev 0x00
pci23 at ppb22 bus 23
ppb23 at pci0 dev 18 function 7 vendor "Red Hat", unknown product
0x000c rev 0x00
pci24 at ppb23 bus 24
virtio2 at pci24 dev 0 function 0 "Qumranet Virtio 1.x SCSI" rev 0x01
virtio_pci_dump_caps: cfgoff 0xc8 len 0x14 type 0x5 bar 0: off 0 len 0
virtio_pci_dump_caps: cfgoff 0xb4 len 0x14 type 0x2 bar 0x4: off
0x3000 len 0x1000
virtio_pci_dump_caps: cfgoff 0xa4 len 0x10 type 0x4 bar 0x4: off
0x2000 len 0x1000
virtio_pci_dump_caps: cfgoff 0x94 len 0x10 type 0x3 bar 0x4: off
0x1000 len 0x1000
virtio_pci_dump_caps: cfgoff 0x84 len 0x10 type 0x1 bar 0x4: off 0 len 0x1000
virtio_pci_dump_caps: cfgoff 0x7c len 0x3 type 0 bar 0: off 0x1107c09 len 0x4
virtio_pci_dump_caps: cfgoff 0x40 len 0x2 type 0 bar 0: off 0 len 0x411
vioscsi0 at virtio2
allocated 47104 byte for virtqueue 0 for control, size 128
using 38912 byte (2432 entries) indirect descriptors
allocated 47104 byte for virtqueue 1 for event, size 128
using 38912 byte (2432 entries) indirect descriptors
allocated 47104 byte for virtqueue 2 for request, size 128
using 38912 byte (2432 entries) indirect descriptors
: qsize 128
scsibus0 at vioscsi0: 255 targets
agintcmsi0: command queue timeout
agintc_intr_establish: irq 8192 level 5 [virtio2]
agintcmsi0: command queue timeout
agintc_intr_establish: irq 8193 level 5 [virtio2]
agintcmsi0: command queue timeout
agintc_intr_establish: irq 8194 level 5 [virtio2]
agintcmsi0: command queue timeout
agintc_intr_establish: irq 8195 level 5 [virtio2]
agintcmsi0: command queue timeout
virtio2[4]: pci_intr_map_msix failed
panic: attempt to access user address 0x577640b65d5d8c4a from EL1
xhci0: halt timeout
xhci0: reset timeout
The operating system has halted.
Please press any key to reboot.