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

Re: [Xen-devel] xend vs xl with pci=['<bdf'] wherein the '<bdf>' are not owned by pciback or pcistub will still launch.



create ^
thanks

On Mon, 2014-01-06 at 12:57 -0500, Konrad Rzeszutek Wilk wrote:
> In Xend, if I had a pci entry in the guest config and the 
> PCI device was not assigned to xen-pciback or pci-stub it
> would refuse to launch the guest.
> 
> Not so with 'xl'. It will complain but still launch:

It looks like domcreate_attach_pci() is ignoring the result of
libxl__device_pci_add(). It appears to have always done so.

I suppose there is an argument that there are usecases where starting
the domain at all even without the full set of devices is better than
not starting it at all, but I think I agree that the default should be
to fail if some devices are not available.

Is this a blocker for you for 4.4 or can it wait for 4.5?

> 
> -bash-4.1# cd drivers/pciback/
> -bash-4.1# ls
> 0000:01:00.0  0000:03:08.1  0000:03:0a.0  0000:03:0b.1       irq_handlers  
> new_slot    remove_id    uevent
> 0000:01:00.1  0000:03:09.0  0000:03:0a.1  bind               module        
> permissive  remove_slot  unbind
> 0000:03:08.0  0000:03:09.1  0000:03:0b.0  irq_handler_state  new_id        
> quirks      slots
> -bash-4.1# echo "0000:03:0b.0" > unbind
> -bash-4.1# echo "0000:03:0b.1" > unbind
> -bash-4.1# xl create /mnt/lab/security/security.cfg  
> Parsing config from /mnt/lab/security/security.cfg
> libxl: error: libxl_pci.c:1055:libxl__device_pci_add: PCI device 0:3:b.0 is 
> not assignable
> libxl: error: libxl_pci.c:1055:libxl__device_pci_add: PCI device 0:3:b.1 is 
> not assignable
> -bash-4.1# xl list
> Name                                        ID   Mem VCPUs      State   
> Time(s)
> Domain-0                                     0  2047     4     r-----      
> 14.7
> security                                     1  1023     1     -b----       
> 8.0
> -bash-4.1# 
> -bash-4.1# cat /mnt/lab/security/security.cfg |grep -v \#
> device_model_version="qemu-xen-traditional"
> builder="hvm"
> memory = 1024
> name = "security"
> vcpus=1
> vif = [ 'mac=00:0F:4B:00:00:84,bridge=switch' ]
> disk = [ 'phy:/dev/sda,xvda,w' ]
> pci= ['0000:03:08.0', '000:03:08.1', '0000:03:09.0', '0000:03:09.1', 
> '0000:03:0a.0', '0000:03:0a.1', '0000:03:0b.0', '0000:03:0b.1']
> vnc=1
> vnclisten='0.0.0.0'
> vncunused=1
> serial="pty"
> 
> 
> And naturally when shutting/destroying the guest it will say:
> -bash-4.1# xl destroy 1
> libxl: error: libxl_pci.c:1265:do_pci_remove: xc_deassign_device failed: No 
> such device
> libxl: error: libxl_pci.c:1265:do_pci_remove: xc_deassign_device failed: No 
> such device
> 
> (XEN) [2014-01-06 17:54:39] deassign 0000:03:0b.0 from dom1 failed (-19)
> (XEN) [2014-01-06 17:54:39] deassign 0000:03:0b.1 from dom1 failed (-19)
> 
> because it tries to de-allocate them even though they were not
> part of the guest.
> 
> _______________________________________________
> 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®.