libxl: support hotplug USB host device
libxl: support hotplug USB host device

Support hot attach/detach a USB host device to guest.
Currently libxl only supports xen PV guest, and only
supports specifying USB host device by 'bus number'
and 'device number', for example:

 usb.xml:
    <hostdev mode='subsystem' type='usb' managed='no'>
      <source>
        <address bus='1' device='3'/>
      </source>
    </hostdev>
 #xl attach-device dom usb.xml
 #xl detach-device dom usb.xml

Signed-off-by: Chunyan Liu <699809cfcad49bea8cea68d656dfc4a832feaf7a@suse.com>
Signed-off-by: Jim Fehlig <39929b5b86d72d51fceac59b52303e3fe8a3083e@suse.com>

datto/libvirt,andreabolognani/libvirt,zippy2/libvirt,taget/libvirt,taget/libvirt,olafhering/libvirt,nertpinx/libvirt,olafhering/libvirt,eskultety/libvirt,crobinso/libvirt,crobinso/libvirt,eskultety/libvirt,eskultety/libvirt,eskultety/libvirt,libvirt/libvirt,taget/libvirt,VenkatDatta/libvirt,zippy2/libvirt,VenkatDatta/libvirt,jardasgit/libvirt,fabianfreyer/libvirt,libvirt/libvirt,libvirt/libvirt,datto/libvirt,jfehlig/libvirt,VenkatDatta/libvirt,nertpinx/libvirt,jardasgit/libvirt,jfehlig/libvirt,jardasgit/libvirt,olafhering/libvirt,fabianfreyer/libvirt,fabianfreyer/libvirt,fabianfreyer/libvirt,andreabolognani/libvirt,andreabolognani/libvirt,zippy2/libvirt,VenkatDatta/libvirt,taget/libvirt,jfehlig/libvirt,jardasgit/libvirt,fabianfreyer/libvirt,zippy2/libvirt,nertpinx/libvirt,taget/libvirt,VenkatDatta/libvirt,crobinso/libvirt,olafhering/libvirt,datto/libvirt,andreabolognani/libvirt,andreabolognani/libvirt,nertpinx/libvirt,nertpinx/libvirt,libvirt/libvirt,datto/libvirt,jfehlig/libvirt,jardasgit/libvirt,datto/libvirt,crobinso/libvirt,eskultety/libvirt