For below error: [ 5023.070461] vGT error:(g2h_gm_range:1660) VM(21): invalid address range: g_addr(0x1000), size(0x1000)
Likely you didn’t use a XenGT-aware i915 driver inside VM, which is required e.g. to handle address space ballooning. A simple way is to copy same Dom0 kernel/initrd/modules into guest image. Thanks Kevin From: Oleksii Kurochko [mailto:oleksii.kuroc...@globallogic.com] Sent: Sunday, January 03, 2016 3:16 AM To: Tian, Kevin Cc: igv...@lists.01.org; igv...@ml01.01.org; qemu-devel; Gerd Hoffmann; Li, Susie; Dong, Eddie; xen-de...@lists.xen.org Subject: Re: [XenGT][IGVT-g] Device model creation failed Hello. I've tried byt_experimental branch and got some another result. With vgt=1 it failed with some time and got next log: [ 4859.380332] vGT info:(create_vgt_instance:118) vm_id=21, low_gm_sz=128MB, high_gm_sz=384MB, fence_sz=4, vgt_primary=1 [ 4859.389889] vGT info:(create_vgt_instance:170) Virtual GTT size: 0x200000 [ 4859.393284] VM21 Ring0 context_save_area is allocated at gm(f90d000) [ 4859.416542] VM21 Ring1 context_save_area is allocated at gm(f94d000) [ 4859.416916] VM21 Ring2 context_save_area is allocated at gm(f98d000) [ 4859.417492] vGT info:(create_vgt_instance:206) aperture: [0xc7800000, 0xcf7fffff] guest [0xc7800000, 0xcf7fffff] va(0xffffc90018200000) [ 4859.417971] vGT info:(create_vgt_instance:217) GM: [0x7800000, 0xf7fffff], [0x28000000, 0x3fffffff], guest[0x7800000, 0xf7fffff], [0x28000000, 0x3fffffff] [ 4859.422914] vGT info:(create_vgt_instance:254) filling VGT_PVINFO_PAGE for dom21: [ 4859.422914] visable_gm_base=0x7800000, size=0x8000000 [ 4859.422914] hidden_gm_base=0x28000000, size=0x18000000 [ 4859.422914] fence_base=4, num=4 [ 4859.423521] vGT info:(vgt_hvm_io_req_handler:795) Received a IOREQ w/o vcpu target [ 4859.424042] vGT info:(vgt_hvm_io_req_handler:796) Possible a false request from event binding [ 4859.424555] vGT(1): create debugfs node: virtual_mmio_space [ 4859.424713] vGT(1): create debugfs node: shadow_mmio_space [ 4859.424883] vGT(1): create debugfs node: frame_buffer_format [ 4859.425037] vGT(1): create debugfs node: frame_buffer_format [ 4859.425974] vGT info:(vgt_emulation_thread:530) start kthread for VM21 [ 4859.426231] vGT info:(vgt_propagate_edid:770) EDID_PROPAGATE: Clear PORT_A for vm 21 [ 4859.426508] vGT info:(vgt_propagate_edid:770) EDID_PROPAGATE: Clear PORT_B for vm 21 [ 4859.426759] vGT info:(vgt_propagate_edid:770) EDID_PROPAGATE: Clear PORT_C for vm 21 [ 4859.426992] vGT info:(vgt_propagate_edid:770) EDID_PROPAGATE: Clear PORT_D for vm 21 [ 4859.427224] vGT info:(vgt_propagate_edid:770) EDID_PROPAGATE: Clear PORT_E for vm 21 [ 4859.518800] vGT info:(vgt_vport_connection_store:595) Monitor detection: PORT_A is disconnected [ 4859.567255] vGT info:(vgt_vport_connection_store:595) Monitor detection: PORT_B is disconnected [ 4859.631077] vGT info:(vgt_vport_connection_store:595) Monitor detection: PORT_C is disconnected [ 4859.682043] vGT info:(vgt_vport_connection_store:595) Monitor detection: PORT_D is disconnected [ 4859.734223] vGT warning:(pch_adpa_mmio_write:1174) HOTPLUG_FORCE_TRIGGER is set while VGA is enabled! [ 4859.775194] vGT info:(vgt_vport_connection_store:583) Monitor detection: PORT_E is connected [ 4860.111434] add_map: domid=21 gfn_s=0xc7800 mfn_s=0xc7800 nr_mfns=0x8000 [ 4933.642429] vGT warning:(vgt_hvm_vmem_init:301) VM21: vmem_sz=0xfffff000! [ 4943.772119] vGT warning:(vgt_emulate_read:355) vGT: untracked MMIO read: vm_id(21), offset=0x4094,len=4, val=0x0!!! base_off=0x0 [ 4945.801949] vGT warning:(vgt_emulate_read:355) vGT: untracked MMIO read: vm_id(21), offset=0x182110,len=4, val=0x0!!! base_off=0x2110 [ 4945.803030] vGT warning:(vgt_emulate_write:457) vGT: untracked MMIO write: vm_id(21), offset=0x182110,len=4, val=0x0!!! base_off=0x2110 [ 4945.972045] vGT warning:(vgt_emulate_read:355) vGT: untracked MMIO read: vm_id(21), offset=0x182110,len=4, val=0x0!!! base_off=0x2110 [ 4945.972649] vGT warning:(vgt_emulate_write:457) vGT: untracked MMIO write: vm_id(21), offset=0x182110,len=4, val=0x1!!! base_off=0x2110 [ 4946.038157] vGT warning:(vgt_emulate_read:355) vGT: untracked MMIO read: vm_id(21), offset=0x61204,len=4, val=0x0!!! base_off=0x0 [ 4946.039587] vGT warning:(vgt_emulate_write:457) vGT: untracked MMIO write: vm_id(21), offset=0x61204,len=4, val=0xabcd0000!!! base_off=0x0 [ 4983.876827] vGT info:(vgt_handle_default_event_virt:947) IRQ: VM(21) receive event (Blitter Command Streamer MI USER INTERRUPT) [ 5023.070461] vGT error:(g2h_gm_range:1660) VM(21): invalid address range: g_addr(0x1000), size(0x1000) [ 5023.070776] Assert at drivers/xen/vgt/aperture_gm.c line 70 [ 5023.071049] vGT warning:(mmio_g2h_gmadr:70) Killing VM21 Create in next way: sudo xl -vvv create ubuntu.hvm Parsing config from ubuntu.hvm WARNING: specifying "tsc_mode" as an integer is deprecated. Please use the named parameter variant. e.g. tsc_mode="default" WARNING: ignoring "kernel" directive for HVM guest. Use "firmware_override" instead if you really want a non-default firmware libxl: debug: libxl_create.c:1230:do_domain_create: ao 0x1da0060: create: how=(nil) callback=(nil) poller=0x1da0140 libxl: debug: libxl_device.c:257:libxl__device_disk_set_backend: Disk vdev=hda spec.backend=unknown libxl: debug: libxl_device.c:197:disk_try_backend: Disk vdev=hda, backend phy unsuitable as phys path not a block device libxl: debug: libxl_device.c:212:disk_try_backend: Disk vdev=hda, backend tap unsuitable because blktap not available libxl: debug: libxl_device.c:296:libxl__device_disk_set_backend: Disk vdev=hda, using backend qdisk libxl: debug: libxl_device.c:257:libxl__device_disk_set_backend: Disk vdev=hdc spec.backend=unknown libxl: debug: libxl_device.c:197:disk_try_backend: Disk vdev=hdc, backend phy unsuitable as phys path not a block device libxl: debug: libxl_device.c:206:disk_try_backend: Disk vdev=hdc, backend tap unsuitable for cdroms libxl: debug: libxl_device.c:296:libxl__device_disk_set_backend: Disk vdev=hdc, using backend qdisk libxl: debug: libxl_create.c:675:initiate_domain_create: running bootloader libxl: debug: libxl_bootloader.c:321:libxl__bootloader_run: not a PV domain, skipping bootloader libxl: debug: libxl_event.c:608:libxl__ev_xswatch_deregister: watch w=0x1d961f8: deregister unregistered libxl: debug: libxl_numa.c:475:libxl__get_numa_candidate: New best NUMA placement candidate found: nr_nodes=1, nr_cpus=2, nr_vcpus=3, free_memkb=1856 libxl: detail: libxl_dom.c:195:numa_place_domain: NUMA placement candidate with 1 nodes, 2 cpus and 1856 KB free selected xc: detail: elf_parse_binary: phdr: paddr=0x100000 memsz=0xa90e4 xc: detail: elf_parse_binary: memory: 0x100000 -> 0x1a90e4 xc: info: VIRTUAL MEMORY ARRANGEMENT: Loader: 0000000000100000->00000000001a90e4 Modules: 0000000000000000->0000000000000000 TOTAL: 0000000000000000->000000003f800000 ENTRY ADDRESS: 0000000000100000 xc: info: PHYSICAL MEMORY ALLOCATION: 4KB PAGES: 0x0000000000000200 2MB PAGES: 0x00000000000001fb 1GB PAGES: 0x0000000000000000 xc: detail: elf_load_binary: phdr 0 at 0x7fc8d8506000 -> 0x7fc8d85a5f6d libxl: debug: libxl_device.c:257:libxl__device_disk_set_backend: Disk vdev=hda spec.backend=qdisk libxl: debug: libxl_device.c:257:libxl__device_disk_set_backend: Disk vdev=hdc spec.backend=qdisk libxl: debug: libxl_dm.c:1255:libxl__spawn_local_dm: Spawning device-model /usr/lib/xen/bin/qemu-system-i386 with arguments: libxl: debug: libxl_dm.c:1257:libxl__spawn_local_dm: /usr/lib/xen/bin/qemu-system-i386 libxl: debug: libxl_dm.c:1257:libxl__spawn_local_dm: -xen-domid libxl: debug: libxl_dm.c:1257:libxl__spawn_local_dm: 21 libxl: debug: libxl_dm.c:1257:libxl__spawn_local_dm: -chardev libxl: debug: libxl_dm.c:1257:libxl__spawn_local_dm: socket,id=libxl-cmd,path=/var/run/xen/qmp-libxl-21,server,nowait libxl: debug: libxl_dm.c:1257:libxl__spawn_local_dm: -mon libxl: debug: libxl_dm.c:1257:libxl__spawn_local_dm: chardev=libxl-cmd,mode=control libxl: debug: libxl_dm.c:1257:libxl__spawn_local_dm: -name libxl: debug: libxl_dm.c:1257:libxl__spawn_local_dm: ubuntu-hvm libxl: debug: libxl_dm.c:1257:libxl__spawn_local_dm: -sdl libxl: debug: libxl_dm.c:1257:libxl__spawn_local_dm: -k libxl: debug: libxl_dm.c:1257:libxl__spawn_local_dm: en-us libxl: debug: libxl_dm.c:1257:libxl__spawn_local_dm: -global libxl: debug: libxl_dm.c:1257:libxl__spawn_local_dm: isa-fdc.driveA= libxl: debug: libxl_dm.c:1257:libxl__spawn_local_dm: -serial libxl: debug: libxl_dm.c:1257:libxl__spawn_local_dm: pty libxl: debug: libxl_dm.c:1257:libxl__spawn_local_dm: -vga libxl: debug: libxl_dm.c:1257:libxl__spawn_local_dm: xengt libxl: debug: libxl_dm.c:1257:libxl__spawn_local_dm: -vgt_low_gm_sz libxl: debug: libxl_dm.c:1257:libxl__spawn_local_dm: 128 libxl: debug: libxl_dm.c:1257:libxl__spawn_local_dm: -vgt_high_gm_sz libxl: debug: libxl_dm.c:1257:libxl__spawn_local_dm: 384 libxl: debug: libxl_dm.c:1257:libxl__spawn_local_dm: -vgt_fence_sz libxl: debug: libxl_dm.c:1257:libxl__spawn_local_dm: 4 libxl: debug: libxl_dm.c:1257:libxl__spawn_local_dm: -boot libxl: debug: libxl_dm.c:1257:libxl__spawn_local_dm: order=cda libxl: debug: libxl_dm.c:1257:libxl__spawn_local_dm: -usb libxl: debug: libxl_dm.c:1257:libxl__spawn_local_dm: -usbdevice libxl: debug: libxl_dm.c:1257:libxl__spawn_local_dm: tablet libxl: debug: libxl_dm.c:1257:libxl__spawn_local_dm: -net libxl: debug: libxl_dm.c:1257:libxl__spawn_local_dm: none libxl: debug: libxl_dm.c:1257:libxl__spawn_local_dm: -M libxl: debug: libxl_dm.c:1257:libxl__spawn_local_dm: xenfv libxl: debug: libxl_dm.c:1257:libxl__spawn_local_dm: -m libxl: debug: libxl_dm.c:1257:libxl__spawn_local_dm: 1016 libxl: debug: libxl_dm.c:1257:libxl__spawn_local_dm: -drive libxl: debug: libxl_dm.c:1257:libxl__spawn_local_dm: file=/home/vtc/Projects/system-10G.img,if=ide,index=0,media=disk,format=raw,cache=writeback libxl: debug: libxl_dm.c:1257:libxl__spawn_local_dm: -drive libxl: debug: libxl_dm.c:1257:libxl__spawn_local_dm: if=ide,index=2,media=cdrom,cache=writeback,id=ide-5632 libxl: debug: libxl_event.c:559:libxl__ev_xswatch_register: watch w=0x1d96430 wpath=/local/domain/0/device-model/21/state token=3/0: register slotnum=3 libxl: debug: libxl_create.c:1243:do_domain_create: ao 0x1da0060: inprogress: poller=0x1da0140, flags=i libxl: debug: libxl_event.c:503:watchfd_callback: watch w=0x1d96430 wpath=/local/domain/0/device-model/21/state token=3/0: event epath=/local/domain/0/device-model/21/state libxl: debug: libxl_event.c:503:watchfd_callback: watch w=0x1d96430 wpath=/local/domain/0/device-model/21/state token=3/0: event epath=/local/domain/0/device-model/21/state libxl: debug: libxl_event.c:596:libxl__ev_xswatch_deregister: watch w=0x1d96430 wpath=/local/domain/0/device-model/21/state token=3/0: deregister slotnum=3 libxl: debug: libxl_event.c:608:libxl__ev_xswatch_deregister: watch w=0x1d96430: deregister unregistered libxl: debug: libxl_qmp.c:707:libxl__qmp_initialize: connected to /var/run/xen/qmp-libxl-21 libxl: debug: libxl_qmp.c:299:qmp_handle_response: message type: qmp libxl: debug: libxl_qmp.c:555:qmp_send_prepare: next qmp command: '{ "execute": "qmp_capabilities", "id": 1 } ' libxl: debug: libxl_qmp.c:299:qmp_handle_response: message type: return libxl: debug: libxl_qmp.c:555:qmp_send_prepare: next qmp command: '{ "execute": "query-chardev", "id": 2 } ' libxl: debug: libxl_qmp.c:299:qmp_handle_response: message type: return libxl: debug: libxl_qmp.c:555:qmp_send_prepare: next qmp command: '{ "execute": "query-vnc", "id": 3 } ' libxl: debug: libxl_qmp.c:299:qmp_handle_response: message type: return libxl: debug: libxl_event.c:1737:libxl__ao_progress_report: ao 0x1da0060: progress report: ignored libxl: debug: libxl_event.c:1569:libxl__ao_complete: ao 0x1da0060: complete, rc=0 libxl: debug: libxl_event.c:1541:libxl__ao__destroy: ao 0x1da0060: destroy Daemon running with PID 5784 xc: debug: hypercall buffer: total allocations:502 total releases:502 xc: debug: hypercall buffer: current allocations:0 maximum allocations:4 xc: debug: hypercall buffer: cache current size:4 xc: debug: hypercall buffer: cache hits:494 misses:4 toobig:4 Is it known issue? With best regards, Oleksii On Thu, Dec 31, 2015 at 2:56 AM, Tian, Kevin <kevin.t...@intel.com<mailto:kevin.t...@intel.com>> wrote: What does Qemu log tell you about below error? libxl: error: libxl_dm.c:1531:device_model_spawn_outcome: domain 1 device model: spawn failed (rc=-3) In the meantime, it’d be helpful if you can capture serial console output. If error comes from XenGT driver, there should be some useful information. btw, looks this VTC-1010 is based Baytrail. Please be noted that XenGT formally supports only Core based system. Atom SoC is not the target. We do have a BYT experimental porting (‘byt-experiment’ branch) on github, which is based on old code and not maintained anymore. You may want to try that branch instead. Thanks Kevin From: Oleksii Kurochko [mailto:oleksii.kuroc...@globallogic.com<mailto:oleksii.kuroc...@globallogic.com>] Sent: Wednesday, December 30, 2015 8:56 PM To: igv...@lists.01.org<mailto:igv...@lists.01.org>; igv...@ml01.01.org<mailto:igv...@ml01.01.org>; qemu-devel; Gerd Hoffmann; Li, Susie; Dong, Eddie; xen-de...@lists.xen.org<mailto:xen-de...@lists.xen.org>; Tian, Kevin; Iurii Mykhalskyi Subject: [XenGT][IGVT-g] Device model creation failed Hello! We are going to use XenGT on Intel Atom based board(VTC-1010, with 4GB RAM). For this purpose we use next repos: xen - https://github.com/01org/Igvtg-xen dom0 (ubuntu linux, 1024MB or 2048MB ) - https://github.com/01org/Igvtg-kernel domU (android-x86, rest memory excluding xen heap, xen, about 1.7GB RAM ) - same kernel, with some config changes Guest domain are going to be started in HVM mode. We follow iGVT-g setup guide (https://github.com/01org/Igvtg-kernel/blob/2015q3-3.18.0/iGVT-g_Setup_Guide.txt) and successfully setup dom0 with iGVT. But, when we are going to start domU (with enabled vgt=1 switch) domain creation failed with follow log: vtc@vtc-VTC1010:~$ sudo xl -vvv create -c ./a.cfg Parsing config from ./a.cfg WARNING: specifying "tsc_mode" as an integer is deprecated. Please use the named parameter variant. e.g. tsc_mode="default" WARNING: you seem to be using "kernel" directive to override HVM guest firmware. Ignore that. Use "firmware_override" instead if you really want a non-default firmware libxl: debug: libxl_create.c:1501:do_domain_create: ao 0x14c3190: create: how=(nil) callback=(nil) poller=0x14c31f0 libxl: debug: libxl_create.c:907:initiate_domain_create: running bootloader libxl: debug: libxl_bootloader.c:323:libxl__bootloader_run: not a PV domain, skipping bootloader libxl: debug: libxl_event.c:629:libxl__ev_xswatch_deregister: watch w=0x14b97c0: deregister unregistered xc: detail: elf_parse_binary: phdr: paddr=0x100000 memsz=0xc9524 xc: detail: elf_parse_binary: memory: 0x100000 -> 0x1c9524 xc: detail: VIRTUAL MEMORY ARRANGEMENT: xc: detail: Loader: 0000000000100000->00000000001c9524 xc: detail: Modules: 0000000000000000->0000000000000000 xc: detail: TOTAL: 0000000000000000->000000003f800000 xc: detail: ENTRY: 0000000000100000 xc: detail: PHYSICAL MEMORY ALLOCATION: xc: detail: 4KB PAGES: 0x0000000000000200 xc: detail: 2MB PAGES: 0x00000000000001fb xc: detail: 1GB PAGES: 0x0000000000000000 xc: detail: elf_load_binary: phdr 0 at 0x7f1c9464c000 -> 0x7f1c9470c391 libxl: debug: libxl_dm.c:1462:libxl__spawn_local_dm: Spawning device-model /usr/lib/xen/bin/qemu-system-i386 with arguments: libxl: debug: libxl_dm.c:1464:libxl__spawn_local_dm: /usr/lib/xen/bin/qemu-system-i386 libxl: debug: libxl_dm.c:1464:libxl__spawn_local_dm: -xen-domid libxl: debug: libxl_dm.c:1464:libxl__spawn_local_dm: 1 libxl: debug: libxl_dm.c:1464:libxl__spawn_local_dm: -chardev libxl: debug: libxl_dm.c:1464:libxl__spawn_local_dm: socket,id=libxl-cmd,path=/var/run/xen/qmp-libxl-1,server,nowait libxl: debug: libxl_dm.c:1464:libxl__spawn_local_dm: -mon libxl: debug: libxl_dm.c:1464:libxl__spawn_local_dm: chardev=libxl-cmd,mode=control libxl: debug: libxl_dm.c:1464:libxl__spawn_local_dm: -nodefaults libxl: debug: libxl_dm.c:1464:libxl__spawn_local_dm: -name libxl: debug: libxl_dm.c:1464:libxl__spawn_local_dm: vgtHVMDomain libxl: debug: libxl_dm.c:1464:libxl__spawn_local_dm: -sdl libxl: debug: libxl_dm.c:1464:libxl__spawn_local_dm: -k libxl: debug: libxl_dm.c:1464:libxl__spawn_local_dm: en-us libxl: debug: libxl_dm.c:1464:libxl__spawn_local_dm: -serial libxl: debug: libxl_dm.c:1464:libxl__spawn_local_dm: pty libxl: debug: libxl_dm.c:1464:libxl__spawn_local_dm: -vga libxl: debug: libxl_dm.c:1464:libxl__spawn_local_dm: xengt libxl: debug: libxl_dm.c:1464:libxl__spawn_local_dm: -vgt_low_gm_sz libxl: debug: libxl_dm.c:1464:libxl__spawn_local_dm: 128 libxl: debug: libxl_dm.c:1464:libxl__spawn_local_dm: -vgt_high_gm_sz libxl: debug: libxl_dm.c:1464:libxl__spawn_local_dm: 384 libxl: debug: libxl_dm.c:1464:libxl__spawn_local_dm: -vgt_fence_sz libxl: debug: libxl_dm.c:1464:libxl__spawn_local_dm: 4 libxl: debug: libxl_dm.c:1464:libxl__spawn_local_dm: -boot libxl: debug: libxl_dm.c:1464:libxl__spawn_local_dm: order=cda libxl: debug: libxl_dm.c:1464:libxl__spawn_local_dm: -usb libxl: debug: libxl_dm.c:1464:libxl__spawn_local_dm: -usbdevice libxl: debug: libxl_dm.c:1464:libxl__spawn_local_dm: tablet libxl: debug: libxl_dm.c:1464:libxl__spawn_local_dm: -net libxl: debug: libxl_dm.c:1464:libxl__spawn_local_dm: none libxl: debug: libxl_dm.c:1464:libxl__spawn_local_dm: -machine libxl: debug: libxl_dm.c:1464:libxl__spawn_local_dm: xenfv libxl: debug: libxl_dm.c:1464:libxl__spawn_local_dm: -m libxl: debug: libxl_dm.c:1464:libxl__spawn_local_dm: 1016 libxl: debug: libxl_event.c:577:libxl__ev_xswatch_register: watch w=0x14b9a20 wpath=/local/domain/0/device-model/1/state token=3/0: register slotnum=3 libxl: debug: libxl_create.c:1517:do_domain_create: ao 0x14c3190: inprogress: poller=0x14c31f0, flags=i libxl: debug: libxl_event.c:514:watchfd_callback: watch w=0x14b9a20 wpath=/local/domain/0/device-model/1/state token=3/0: event epath=/local/domain/0/device-model/1/state libxl: debug: libxl_event.c:615:libxl__ev_xswatch_deregister: watch w=0x14b9a20 wpath=/local/domain/0/device-model/1/state token=3/0: deregister slotnum=3 libxl: error: libxl_dm.c:1531:device_model_spawn_outcome: domain 1 device model: spawn failed (rc=-3) libxl: error: libxl_create.c:1319:domcreate_devmodel_started: device model did not start: -3 libxl: error: libxl_dm.c:1635:kill_device_model: Device Model already exited libxl: debug: libxl_event.c:629:libxl__ev_xswatch_deregister: watch w=0x14bd010: deregister unregistered libxl: debug: libxl_event.c:1765:libxl__ao_complete: ao 0x14c3190: complete, rc=-3 libxl: debug: libxl_event.c:1737:libxl__ao__destroy: ao 0x14c3190: destroy xc: debug: hypercall buffer: total allocations:949 total releases:949 xc: debug: hypercall buffer: current allocations:0 maximum allocations:4 xc: debug: hypercall buffer: cache current size:4 xc: debug: hypercall buffer: cache hits:936 misses:4 toobig:9 Without this flag - are all ok, domain created and running normally. Do you have any ideas about this issue? Thank you. -- Oleksii Kurochko | Embedded Dev GlobalLogic www.globallogic.com<http://www.globallogic.com> -- Oleksii Kurochko | Embedded Dev GlobalLogic www.globallogic.com<http://www.globallogic.com>