Thanks! The cause of the bug is that the MMIO address is not page aligned!
在2021年10月14日星期四 UTC+8 17:59:56<[email protected]> 写道: > On 01.10.21 18:40, jiajun huang wrote: > > Dear Jailhouse community, > > > > I am currently running into an issue when trying boot jailhouse on QEMU. > > I follow the guidelines on > > https://github.com/siemens/jailhouse/tree/wip/kvm. When I use the > > sysconfig.c created by "jailhouse config create -c ttyS0 --mem-hv 128M > > --mem-inmates 1536M configs/x86/sysconfig.c" to enable root cell, the > > issue "FATAL: Invalid PIO read, port: 5658 size: 4" and "FATAL: Invalid > > MMIO/RAM read" happened. I solved these issues with the help of > > > https://events.static.linuxfound.org/sites/events/files/slides/ELCE2016-Jailhouse-Tutorial.pdf > . > > Attached is the modified sysconfig.c file. However, the root cell will > > still crash with no log a few minutes later. > > > > Initializing Jailhouse hypervisor v0.12 (5-g06ba27d-dirty) on CPU 0 > > Code location: 0xfffffffff0000050 > > Using x2APIC > > Page pool usage after early setup: mem 108/32207, remap 0/131072 > > Initializing processors: > > CPU 0... (APIC ID 0) OK > > CPU 1... (APIC ID 1) OK > > CPU 3... (APIC ID 3) OK > > CPU 2... (APIC ID 2) OK > > Initializing unit: VT-d > > DMAR unit @0xfed90000/0x1000 > > Reserving 24 interrupt(s) for device ff:00.0 at index 0 > > Initializing unit: IOAPIC > > Initializing unit: Cache Allocation Technology > > Initializing unit: PCI > > Adding PCI device 00:00.0 to cell "RootCell" > > Adding PCI device 00:01.0 to cell "RootCell" > > Adding PCI device 00:02.0 to cell "RootCell" > > Reserving 5 interrupt(s) for device 00:02.0 at index 24 > > Adding PCI device 00:1b.0 to cell "RootCell" > > Reserving 1 interrupt(s) for device 00:1b.0 at index 29 > > Adding PCI device 00:1f.0 to cell "RootCell" > > Adding PCI device 00:1f.2 to cell "RootCell" > > Reserving 1 interrupt(s) for device 00:1f.2 at index 30 > > Adding PCI device 00:1f.3 to cell "RootCell" > > Page pool usage after late setup: mem 333/32207, remap 65542/131072 > > Activating hypervisor > > > > > > I want to know if I need to add all the missing PCI memory regions and > > PCI IO ports to sysconfig.c according to the results of /proc/iomem and > > /proc/ioports? > > Did you see configs/x86/qemu-x86.c already? That is supposed to work for > the recommended command line and also the start-qemu.sh script from > jailhouse-images. There are likely some subtle differences to the config > the generator spits out, unfortunately. I haven't tried "config create" > on QEMU in a long while, simply because we have a reference config, but > maybe there is something that could be improved once you found the > relevant differences. > > Jan > > -- > Siemens AG, T RDA IOT > Corporate Competence Center Embedded Linux > -- You received this message because you are subscribed to the Google Groups "Jailhouse" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. To view this discussion on the web visit https://groups.google.com/d/msgid/jailhouse-dev/5b7a5935-27c3-4970-8246-608d401865a4n%40googlegroups.com.
