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

Re: [Xen-devel] [PATCH v2] Handle xen_platform_pci=0 case



Thursday, November 28, 2013, 10:34:58 AM, you wrote:

>> -----Original Message-----
>> From: xen-devel-bounces@xxxxxxxxxxxxx [mailto:xen-devel-
>> bounces@xxxxxxxxxxxxx] On Behalf Of Sander Eikelenboom
>> Sent: 27 November 2013 23:04
>> To: Anthony Perard
>> Cc: Ian Jackson; Stefano Stabellini; Ian Campbell; Xen Devel
>> Subject: Re: [Xen-devel] [PATCH v2] Handle xen_platform_pci=0 case
>> 
>> 
>> Wednesday, November 27, 2013, 7:21:33 PM, you wrote:
>> 
>> > Hi,
>> 
>> > Here is a little patch that attempt to fix the issue regarding
>> > xen_platform_pci=0 not been handled.
>> 
>> > There is one patch left from the previous version. The patch that was
>> adding
>> > qemu_machine_override have been removed as it is unnecessary. If
>> someone wants
>> > to change the -machine, it can always add it to device_model_args_hvm, as
>> QEMU
>> > appear to use the last one.
>> 
>> > Regards,
>> 
>> > Anthony PERARD (1):
>> >   libxl: Handle xen_platform_pci=0 case with qemu-xen.
>> 
>> >  tools/libxl/libxl_dm.c | 12 ++++++++++--
>> >  1 file changed, 10 insertions(+), 2 deletions(-)
>> 
>> 
>> Hi Anthony,
>> 
>> I tried your patch, but qemu fails when xen_platform_pci=0 (still boots fine
>> with xen_platform_pci=1).
>> 
>> The same guest + config boots fine when using qemu-xen-traditional with
>> xen_platform_pci=0 or xen_platform_pci=1
>> (after Konrad's kernel patch is applied)
>> 
>> I can't pinpoint why qemu doesn't want to start .. from the verbose output
>> from xl create:
>> 
>> 
>> ~# xl -vvvvvvvv create /etc/xen/domU/production/xbmc.cfg
>> Parsing config from /etc/xen/domU/production/xbmc.cfg
>> libxl: debug: libxl_create.c:1296:do_domain_create: ao 0x22b1ed0: create:
>> how=(nil) callback=(nil) poller=0x22b1f30
>> libxl: debug: libxl_device.c:251:libxl__device_disk_set_backend: Disk
>> vdev=hda spec.backend=unknown
>> libxl: debug: libxl_device.c:286:libxl__device_disk_set_backend: Disk
>> vdev=hda, using backend phy
>> libxl: debug: libxl_create.c:740: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:607:libxl__ev_xswatch_deregister: watch
>> w=0x22b22b8: deregister unregistered
>> xc: detail: elf_parse_binary: phdr: paddr=0x100000 memsz=0x9efa8
>> xc: detail: elf_parse_binary: memory: 0x100000 -> 0x19efa8
>> xc: detail: VIRTUAL MEMORY ARRANGEMENT:
>>   Loader:        0000000000100000->000000000019efa8
>>   Modules:       0000000000000000->0000000000000000
>>   TOTAL:         0000000000000000->000000003f800000
>>   ENTRY ADDRESS: 0000000000100000
>> xc: detail: PHYSICAL MEMORY ALLOCATION:
>>   4KB PAGES: 0x0000000000000200
>>   2MB PAGES: 0x00000000000001fb
>>   1GB PAGES: 0x0000000000000000
>> xc: detail: elf_load_binary: phdr 0 at 0x7fbf4e4a1000 -> 0x7fbf4e536e2d
>> libxl: debug: libxl_device.c:251:libxl__device_disk_set_backend: Disk
>> vdev=hda spec.backend=phy
>> libxl: debug: libxl_event.c:559:libxl__ev_xswatch_register: watch
>> w=0x22b3728 wpath=/local/domain/0/backend/vbd/20/768/state
>> token=3/0: register slotnum=3
>> libxl: debug: libxl_create.c:1310:do_domain_create: ao 0x22b1ed0:
>> inprogress: poller=0x22b1f30, flags=i
>> libxl: debug: libxl_event.c:503:watchfd_callback: watch w=0x22b3728
>> wpath=/local/domain/0/backend/vbd/20/768/state token=3/0: event
>> epath=/local/domain/0/backend/vbd/20/768/state
>> libxl: debug: libxl_event.c:646:devstate_watch_callback: backend
>> /local/domain/0/backend/vbd/20/768/state wanted state 2 still waiting state
>> 1
>> libxl: debug: libxl_event.c:503:watchfd_callback: watch w=0x22b3728
>> wpath=/local/domain/0/backend/vbd/20/768/state token=3/0: event
>> epath=/local/domain/0/backend/vbd/20/768/state
>> libxl: debug: libxl_event.c:642:devstate_watch_callback: backend
>> /local/domain/0/backend/vbd/20/768/state wanted state 2 ok
>> libxl: debug: libxl_event.c:595:libxl__ev_xswatch_deregister: watch
>> w=0x22b3728 wpath=/local/domain/0/backend/vbd/20/768/state
>> token=3/0: deregister slotnum=3
>> libxl: debug: libxl_event.c:607:libxl__ev_xswatch_deregister: watch
>> w=0x22b3728: deregister unregistered
>> libxl: debug: libxl_device.c:1022:device_hotplug: calling hotplug script:
>> /etc/xen/scripts/block add
>> libxl: debug: libxl_event.c:607:libxl__ev_xswatch_deregister: watch
>> w=0x22b37b0: deregister unregistered
>> libxl: debug: libxl_event.c:607:libxl__ev_xswatch_deregister: watch
>> w=0x22b37b0: deregister unregistered
>> libxl: debug: libxl_dm.c:1267:libxl__spawn_local_dm: Spawning device-
>> model /usr/local/lib/xen/bin/qemu-system-i386 with arguments:
>> libxl: debug: libxl_dm.c:1269:libxl__spawn_local_dm:
>> /usr/local/lib/xen/bin/qemu-system-i386
>> libxl: debug: libxl_dm.c:1269:libxl__spawn_local_dm:   -xen-domid
>> libxl: debug: libxl_dm.c:1269:libxl__spawn_local_dm:   20
>> libxl: debug: libxl_dm.c:1269:libxl__spawn_local_dm:   -chardev
>> libxl: debug: libxl_dm.c:1269:libxl__spawn_local_dm:   socket,id=libxl-
>> cmd,path=/var/run/xen/qmp-libxl-20,server,nowait
>> libxl: debug: libxl_dm.c:1269:libxl__spawn_local_dm:   -mon
>> libxl: debug: libxl_dm.c:1269:libxl__spawn_local_dm:   chardev=libxl-
>> cmd,mode=control
>> libxl: debug: libxl_dm.c:1269:libxl__spawn_local_dm:   -nodefaults
>> libxl: debug: libxl_dm.c:1269:libxl__spawn_local_dm:   -name
>> libxl: debug: libxl_dm.c:1269:libxl__spawn_local_dm:   xbmc
>> libxl: debug: libxl_dm.c:1269:libxl__spawn_local_dm:   -vnc
>> libxl: debug: libxl_dm.c:1269:libxl__spawn_local_dm:
>> 172.16.1.1:9,password,to=99
>> libxl: debug: libxl_dm.c:1269:libxl__spawn_local_dm:   -serial
>> libxl: debug: libxl_dm.c:1269:libxl__spawn_local_dm:   pty
>> libxl: debug: libxl_dm.c:1269:libxl__spawn_local_dm:   -device
>> libxl: debug: libxl_dm.c:1269:libxl__spawn_local_dm:   cirrus-vga
>> libxl: debug: libxl_dm.c:1269:libxl__spawn_local_dm:   -global
>> libxl: debug: libxl_dm.c:1269:libxl__spawn_local_dm:   vga.vram_size_mb=8
>> libxl: debug: libxl_dm.c:1269:libxl__spawn_local_dm:   -boot
>> libxl: debug: libxl_dm.c:1269:libxl__spawn_local_dm:   order=c
>> libxl: debug: libxl_dm.c:1269:libxl__spawn_local_dm:   -usb
>> libxl: debug: libxl_dm.c:1269:libxl__spawn_local_dm:   -usbdevice
>> libxl: debug: libxl_dm.c:1269:libxl__spawn_local_dm:   tablet
>> libxl: debug: libxl_dm.c:1269:libxl__spawn_local_dm:   -smp
>> libxl: debug: libxl_dm.c:1269:libxl__spawn_local_dm:   2,maxcpus=2
>> libxl: debug: libxl_dm.c:1269:libxl__spawn_local_dm:   -device
>> libxl: debug: libxl_dm.c:1269:libxl__spawn_local_dm:
>> e1000,id=nic0,netdev=net0,mac=00:16:3a:c6:76:65
>> libxl: debug: libxl_dm.c:1269:libxl__spawn_local_dm:   -netdev
>> libxl: debug: libxl_dm.c:1269:libxl__spawn_local_dm:
>> type=tap,id=net0,ifname=vif20.0-emu,script=no,downscript=no
>> libxl: debug: libxl_dm.c:1269:libxl__spawn_local_dm:   -machine
>> libxl: debug: libxl_dm.c:1269:libxl__spawn_local_dm:   pc,accel=xen
>> libxl: debug: libxl_dm.c:1269:libxl__spawn_local_dm:   -m

> This doesn't look right. -m needs an argument and -machine has already been 
> specified anyway.

-m is for specifying memory, which value is specified (1016)
-M is the short option for the machine, so it should be ok ..


>> libxl: debug: libxl_dm.c:1269:libxl__spawn_local_dm:   1016
>> libxl: debug: libxl_dm.c:1269:libxl__spawn_local_dm:   -drive
>> libxl: debug: libxl_dm.c:1269:libxl__spawn_local_dm:
>> file=/dev/xen_vms/xbmc,if=ide,index=0,media=disk,format=raw,cache=wri
>> teback
>> libxl: debug: libxl_event.c:559:libxl__ev_xswatch_register: watch
>> w=0x22b24f0 wpath=/local/domain/0/device-model/20/state token=3/1:
>> register slotnum=3
>> libxl: debug: libxl_event.c:503:watchfd_callback: watch w=0x22b24f0
>> wpath=/local/domain/0/device-model/20/state token=3/1: event
>> epath=/local/domain/0/device-model/20/state
>> libxl: debug: libxl_event.c:595:libxl__ev_xswatch_deregister: watch
>> w=0x22b24f0 wpath=/local/domain/0/device-model/20/state token=3/1:
>> deregister slotnum=3
>> libxl: error: libxl_dm.c:1335:device_model_spawn_outcome: domain 20
>> device model: spawn failed (rc=-3)

> And this is where libxl is telling you qemu refused to start.

Yes .. but it doesn't record *why* qemu refused to start, which would perhapds 
be handy to log.

>   Paul

>> libxl: error: libxl_create.c:1140:domcreate_devmodel_started: device model
>> did not start: -3
>> libxl: error: libxl_dm.c:1439:kill_device_model: Device Model already exited
>> libxl: debug: libxl_event.c:559:libxl__ev_xswatch_register: watch
>> w=0x22b07e8 wpath=/local/domain/0/backend/vbd/20/768/state
>> token=3/2: register slotnum=3
>> libxl: debug: libxl_event.c:503:watchfd_callback: watch w=0x22b07e8
>> wpath=/local/domain/0/backend/vbd/20/768/state token=3/2: event
>> epath=/local/domain/0/backend/vbd/20/768/state
>> libxl: debug: libxl_event.c:642:devstate_watch_callback: backend
>> /local/domain/0/backend/vbd/20/768/state wanted state 6 ok
>> libxl: debug: libxl_event.c:595:libxl__ev_xswatch_deregister: watch
>> w=0x22b07e8 wpath=/local/domain/0/backend/vbd/20/768/state
>> token=3/2: deregister slotnum=3
>> libxl: debug: libxl_event.c:607:libxl__ev_xswatch_deregister: watch
>> w=0x22b07e8: deregister unregistered
>> libxl: debug: libxl_device.c:1022:device_hotplug: calling hotplug script:
>> /etc/xen/scripts/block remove
>> libxl: debug: libxl_event.c:472:watchfd_callback: watch
>> epath=/local/domain/0/backend/vbd/20/768/state token=3/2: empty slot
>> libxl: debug: libxl_event.c:607:libxl__ev_xswatch_deregister: watch
>> w=0x22b0870: deregister unregistered
>> libxl: debug: libxl_event.c:607:libxl__ev_xswatch_deregister: watch
>> w=0x22b0870: deregister unregistered
>> libxl: debug: libxl_event.c:607:libxl__ev_xswatch_deregister: watch
>> w=0x22b0b90: deregister unregistered
>> libxl: debug: libxl_event.c:1560:libxl__ao_complete: ao 0x22b1ed0:
>> complete, rc=-3
>> libxl: debug: libxl_event.c:1532:libxl__ao__destroy: ao 0x22b1ed0: destroy
>> xc: debug: hypercall buffer: total allocations:700 total releases:700
>> xc: debug: hypercall buffer: current allocations:0 maximum allocations:2
>> xc: debug: hypercall buffer: cache current size:2
>> xc: debug: hypercall buffer: cache hits:696 misses:2 toobig:2
>> 
>> --
>> Sander
>> 
>> 
>> _______________________________________________
>> Xen-devel mailing list
>> Xen-devel@xxxxxxxxxxxxx
>> http://lists.xen.org/xen-devel



_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxx
http://lists.xen.org/xen-devel


 


Rackspace

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