[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[MirageOS-devel] Unikernel crashes (compiled to Xen)


  • To: "mirageos-devel@xxxxxxxxxxxxxxxxxxxx" <mirageos-devel@xxxxxxxxxxxxxxxxxxxx>
  • From: JIM Yuan <jy378@xxxxxxxxx>
  • Date: Fri, 2 Feb 2018 12:32:08 +0000
  • Accept-language: en-GB, en-US
  • Authentication-results: spf=none (sender IP is ) smtp.mailfrom=jy378@xxxxxxxxx;
  • Delivery-date: Fri, 02 Feb 2018 12:32:24 +0000
  • List-id: Developer list for MirageOS <mirageos-devel.lists.xenproject.org>
  • Spamdiagnosticmetadata: NSPM
  • Spamdiagnosticoutput: 1:99
  • Thread-index: AQHTnCHX+yhku60EHEmy/o2d2jz4xQ==
  • Thread-topic: Unikernel crashes (compiled to Xen)

Hi,

I installed Xen on Ubuntu 16.04 Server, which runs as a VM in VirtualBox 5.2.6 on macOS. 

I used ocaml 4.05.0. I have complied mirage-skeleton/device-usage/network to target Xen with configuration: mirage configure -t xen —dhcp true.

The network.xl file looks like this:

Parsing config from network.xl
{
    "c_info": {
        "type": "pv",
        "name": "network",
        "uuid": "9e53ab27-edd0-4541-ad8a-e76864ca22c2",
        "run_hotplug_scripts": "True"
    },
    "b_info": {
        "max_memkb": 262144,
        "target_memkb": 262144,
        "shadow_memkb": 2048,
        "sched_params": {

        },
        "claim_mode": "True",
        "kernel": "/home/mirage/mirage-skeleton/device-usage/network/./network.xen",
        "type.pv": {

        },
        "arch_arm": {

        }
    },
    "nics": [
        {
            "devid": 0,
            "bridge": "br0"
        }
    ],
    "on_reboot": "restart",
    "on_crash": "preserve"
}

The error message (when crashed) looks like this:
MirageOS booting...
Initialising timer interface
Initialising console ... done.
Attempt to open(/dev/urandom)!
Unsupported function getpid called in Mini-OS kernel
Unsupported function getppid called in Mini-OS kernel
2018-02-01 18:32:43 -00:00: INF [net-xen:frontend] connect 0
2018-02-01 18:32:43 -00:00: INF [net-xen:frontend] create: id=0 domid=0
2018-02-01 18:32:43 -00:00: INF [net-xen:frontend]  sg:true gso_tcpv4:true rx_copy:true rx_flip:false smart_poll:false
2018-02-01 18:32:43 -00:00: INF [net-xen:frontend] MAC: 00:16:3e:4d:76:4c
Attempt to open(/dev/urandom)!
Unsupported function getpid called in Mini-OS kernel
Unsupported function getppid called in Mini-OS kernel
Page fault at linear address 28, rip 133b01, regs 000000000030f7f8, sp 30f8a0, our_sp 000000000030f7c0, code 0
RIP: e030:[<0000000000133b01>]
RSP: e02b:000000000030f8a0  EFLAGS: 00010006
RAX: 0000000000133af0 RBX: 0000000000923330 RCX: 0000000000000003
RDX: 0000000000000000 RSI: 0000000000923348 RDI: 0000000000923348
RBP: 00000000001c05f8 R08: 00000000002b0268 R09: 00000000004a3cf0
R10: 0000000000000008 R11: 0000000000000000 R12: 0000000000099eb3
R13: 00000000001c0658 R14: 000000000030fa60 R15: 0000000000923310
base is 0x1c05f8 caller is 0x7
base is 0x6060 caller is 0xa5ce058d4830ef83
base is 0x49c7894808ec8348 GPF rip: 16b78f, error_code=0
RIP: e030:[<000000000016b78f>]
RSP: e02b:000000000030f7b8  EFLAGS: 00010012
RAX: 000000000000001b RBX: 49c7894808ec8348 RCX: 0000000000000020
RDX: 0000000000000538 RSI: 000000000030f608 RDI: 0000000000000004
RBP: 000000000030f7b8 R08: 000000000000000a R09: 000000000030f658
R10: 0000000000000001 R11: 0000000000000010 R12: 000000000030f7f8
R13: 00000000001c0658 R14: 000000000030fa60 R15: 0000000000923310
base is 0x30f7b8 caller is 0x28
base is 0x3 Page fault in pagetable walk (access to invalid memory?).
Connection to mirage-dev.local closed by remote host.
Connection to mirage-dev.local closed.

Any idea why this occurs?

The same setup works fine for the other example (a simpler one) mirage-skeleton/tutorial/hello.

Best,

Junwei
_______________________________________________
MirageOS-devel mailing list
MirageOS-devel@xxxxxxxxxxxxxxxxxxxx
https://lists.xenproject.org/mailman/listinfo/mirageos-devel

 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.