[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [Minios-devel] [UNIKRAFT PATCH RFC 00/23] Impelment virtio_mmio and pci ecam controller for arm64 kvm plat
Hi Felipe, thank you very much for your testing and comments. And sorry for the late response. On 2020/3/13 18:00, Felipe Huici wrote: Hi Justin, Thanks so much for the series, it's great to have networking going on arm64! I've tested it against http reply and it works fine. However, I have a number of issues with the series: 1. It doesn't build against newlib, which precludes running a large set of applications (e.g., Redis, nginx, sqlite, etc.). The fix here is simple: Yes, I only tested it with nolibc, will fix it when building against newlib soon. diff --git a/lib/fdt/fdt_addresses.c b/lib/fdt/fdt_addresses.c index b362b41..30c7ff5 100644 --- a/lib/fdt/fdt_addresses.c +++ b/lib/fdt/fdt_addresses.c @@ -60,7 +60,7 @@ int fdt_address_cells(const void *fdt, int nodeoffset) { - __u32 cells; + uint32_t cells; int parent; int off = nodeoffset; int *prop; @@ -81,7 +81,7 @@ int fdt_address_cells(const void *fdt, int nodeoffset) int fdt_size_cells(const void *fdt, int nodeoffset) { - __u32 cells; + uint32_t cells; int parent; int off = nodeoffset; int *prop; 2. I get a large number of (spurious?) error messages such as: [ 0.036700] ERR: [libkvmpf] platform_bus.c @ 180 : Platform Failed to initialize device driver, ret(-19) Things work despite these, should these really be errors? No, they aren't errors. Will fix it in next version 3. There's a large number of compilation warnings (too many to list here) Will fix it 4. When setting ukdebug's Kernel message level to "Show all types of messages" I get a register dump during boot: [ 0.073966] Info: [libkvmpci] pci_ecam.c @ 370 : -> imaplen=90 [ 0.074064] Info: [libkvmpci] pci_ecam.c @ 325 : -> match=0 (imaplen=86) [ 0.075033] Info: [libkvmpci] pci_ecam.c @ 370 : -> imaplen=80 [ 0.075131] Info: [libkvmpci] pci_ecam.c @ 325 : -> match=1 (imaplen=76) [ 0.076096] Info: [libkvmpci] pci_ecam.c @ 370 : -> imaplen=70 [ 0.076193] Info: [libkvmpci] pci_ecam.c @ 388 : -> new parent: 0x175cOF [ 0.076313] Info: [libkvmpci] pci_ecam.c @ 289 : -> got it ! [ 0.076417] Info: [libkvmpci] pci_bus_arm64.c @ 100 : pci dev base(0x3eff0040) irq(37) [ 0.076547] Info: [libkvmvirtio] virtio_pci.c @ 379 : Added virtio-pci device 1009 [ 0.076668] Info: [libkvmvirtio] virtio_pci.c @ 381 : Added virtio-pci subsystem_device_id 0009 [ 0.076885] Info: [libkvmvirtio] virtio_bus.c @ 129 : Virtio device 0x7ffc3010 initialized [ 0.077322] CRIT: [libkvmplat] traps.c @ 67 : Unikraft: EL1 sync trap caught [ 0.077468] CRIT: [libkvmplat] traps.c @ 39 : Unikraft: Dump registers: [ 0.077598] CRIT: [libkvmplat] traps.c @ 40 : SP : 0x00000000402cfce0 ESR_EL1 : 0x0000000096000010 ELR_EL1 : 0x0000000040106a88 LR (x30) : 0x000000004010a13c PSTATE : 0x0000000020000345 FAR_EL1 : 0x000000003eff0060 x00 ~ x03: 0x000000003eff0060 0x000000003eff0056 0x000000007ffd0010 0x000000000000ff03 [ 0.078162] CRIT: [libkvmplat] traps.c @ 50 : x04 ~ x07: 0x00000000000000ff 0xffffffffc100ffaa 0x000000000000ff03 0x00000000402cfe00 [ 0.078363] CRIT: [libkvmplat] traps.c @ 50 : x08 ~ x11: 0x00000000012dfdaa 0x000000003effff59 0x0000000000000000 0x0000000000000016 [ 0.078556] CRIT: [libkvmplat] traps.c @ 50 : x12 ~ x15: 0x000000003eff0040 0x00000000402dfd10 0x0000000000000000 0x0000000000000000 [ 0.078752] CRIT: [libkvmplat] traps.c @ 50 : x16 ~ x19: 0x000000000000000a 0x0000000000000000 0x0000000000000000 0x000000007ffc4010 [ 0.078945] CRIT: [libkvmplat] traps.c @ 50 : x20 ~ x23: 0x0000000079000001 0x000000004026d000 0x0000000000000001 0x0000000000000001 [ 0.079143] CRIT: [libkvmplat] traps.c @ 50 : x24 ~ x27: 0x000000004023e000 0x000000004023e000 0x0000000040257168 0x0000020000000000 [ 0.079356] CRIT: [libkvmplat] traps.c @ 53 : x28 ~ x29: 0x000000004023e000 0x00000000402dfd10 [ 0.079513] Info: [libkvmplat] shutdown.c @ 35 : Unikraft halted I never saw this error in my local test env. Could you please share your qemu command line ? 5. I've tested the series against nginx: it inits fine, and I can ping the network stack, but nginx itself doesn't reply to HTTP/wget requests, not sure why...please let me know if you'd like to replicate this. Could you also give me some instructions about how to setup the nginx. In my local test, I used a remote browser (firefox) to get the webpage in unikraft httpreply app. --- Cheers, Justin (Jia He)
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |