Run libguestfs API calls in a thread pool
Run libguestfs API calls in a thread pool

The libguestfs API is a binding to a native C library, and thus
it will block greenthreads. To avoid this all libguestfs API
calls need to be run in a threadpool. This can be done by just
wrapping the GuestFS object in an eventlet.tpool.Proxy object

Fixes bug #1132742
Change-Id: I877ad9e88442e41c9ad234503d9b1ddf1fb27408
Signed-off-by: Daniel P. Berrange <bb938cf255e055ff3507f2627d214e8e62118fcf@redhat.com>

j-carpentier/nova,ewindisch/nova,Stavitsky/nova,LoHChina/nova,rajalokan/nova,vladikr/nova_drafts,klmitch/nova,nikesh-mahalka/nova,DirectXMan12/nova-hacking,Yusuke1987/openstack_template,NeCTAR-RC/nova,watonyweng/nova,whitepages/nova,JianyuWang/nova,devoid/nova,leilihh/novaha,NeCTAR-RC/nova,fnordahl/nova,sridevikoushik31/openstack,maheshp/novatest,mahak/nova,dims/nova,kimjaejoong/nova,openstack/nova,tealover/nova,mikalstill/nova,iuliat/nova,Juniper/nova,rahulunair/nova,tianweizhang/nova,varunarya10/nova_test_latest,CiscoSystems/nova,Tehsmash/nova,vmturbo/nova,vmturbo/nova,Triv90/Nova,cernops/nova,double12gzh/nova,jianghuaw/nova,saleemjaveds/https-github.com-openstack-nova,imsplitbit/nova,klmitch/nova,sacharya/nova,dawnpower/nova,LoHChina/nova,klmitch/nova,eonpatapon/nova,SUSE-Cloud/nova,raildo/nova,klmitch/nova,projectcalico/calico-nova,berrange/nova,tudorvio/nova,shahar-stratoscale/nova,cloudbase/nova-virtualbox,TwinkleChawla/nova,leilihh/nova,luogangyi/bcec-nova,yatinkumbhare/openstack-nova,rrader/nova-docker-plugin,phenoxim/nova,scripnichenko/nova,tanglei528/nova,devendermishrajio/nova,ntt-sic/nova,Metaswitch/calico-nova,belmiromoreira/nova,alvarolopez/nova,yrobla/nova,imsplitbit/nova,plumgrid/plumgrid-nova,cloudbau/nova,shahar-stratoscale/nova,TwinkleChawla/nova,yrobla/nova,gspilio/nova,Brocade-OpenSource/OpenStack-DNRM-Nova,saleemjaveds/https-github.com-openstack-nova,Triv90/Nova,JioCloud/nova,eharney/nova,cloudbase/nova,shootstar/novatest,yrobla/nova,maelnor/nova,spring-week-topos/nova-week,mikalstill/nova,bgxavier/nova,CloudServer/nova,rajalokan/nova,Yuriy-Leonov/nova,MountainWei/nova,alexandrucoman/vbox-nova-driver,eayunstack/nova,zzicewind/nova,CEG-FYP-OpenStack/scheduler,leilihh/nova,Brocade-OpenSource/OpenStack-DNRM-Nova,Juniper/nova,ruslanloman/nova,iuliat/nova,barnsnake351/nova,jeffrey4l/nova,mahak/nova,petrutlucian94/nova_dev,vmturbo/nova,orbitfp7/nova,mahak/nova,openstack/nova,ntt-sic/nova,bclau/nova,zaina/nova,isyippee/nova,virtualopensystems/nova,felixma/nova,ted-gould/nova,devoid/nova,jeffrey4l/nova,silenceli/nova,tangfeixiong/nova,mgagne/nova,redhat-openstack/nova,mandeepdhami/nova,jianghuaw/nova,virtualopensystems/nova,tealover/nova,shail2810/nova,sebrandon1/nova,rickerc/nova_audit,qwefi/nova,cloudbau/nova,rrader/nova-docker-plugin,nikesh-mahalka/nova,hanlind/nova,affo/nova,gspilio/nova,akash1808/nova_test_latest,noironetworks/nova,badock/nova,TieWei/nova,angdraug/nova,blueboxgroup/nova,JioCloud/nova_test_latest,rahulunair/nova,dstroppa/openstack-smartos-nova-grizzly,tanglei528/nova,rickerc/nova_audit,spring-week-topos/nova-week,watonyweng/nova,cloudbase/nova-virtualbox,cernops/nova,badock/nova,shail2810/nova,hanlind/nova,yosshy/nova,alexandrucoman/vbox-nova-driver,alvarolopez/nova,sridevikoushik31/openstack,zaina/nova,joker946/nova,mmnelemane/nova,angdraug/nova,dims/nova,Tehsmash/nova,Juniper/nova,eonpatapon/nova,takeshineshiro/nova,raildo/nova,zzicewind/nova,varunarya10/nova_test_latest,mmnelemane/nova,orbitfp7/nova,zhimin711/nova,bgxavier/nova,berrange/nova,Stavitsky/nova,devendermishrajio/nova_test_latest,felixma/nova,vmturbo/nova,qwefi/nova,citrix-openstack-build/nova,JioCloud/nova,j-carpentier/nova,eharney/nova,ruslanloman/nova,CloudServer/nova,barnsnake351/nova,edulramirez/nova,dstroppa/openstack-smartos-nova-grizzly,SUSE-Cloud/nova,mandeepdhami/nova,takeshineshiro/nova,Juniper/nova,ted-gould/nova,petrutlucian94/nova,affo/nova,double12gzh/nova,hanlind/nova,petrutlucian94/nova_dev,projectcalico/calico-nova,gooddata/openstack-nova,scripnichenko/nova,JioCloud/nova_test_latest,BeyondTheClouds/nova,DirectXMan12/nova-hacking,cloudbase/nova,CEG-FYP-OpenStack/scheduler,sebrandon1/nova,maheshp/novatest,sridevikoushik31/nova,Triv90/Nova,bclau/nova,eayunstack/nova,rahulunair/nova,luogangyi/bcec-nova,jianghuaw/nova,fnordahl/nova,sridevikoushik31/nova,alaski/nova,gooddata/openstack-nova,akash1808/nova,cyx1231st/nova,CCI-MOC/nova,sacharya/nova,TieWei/nova,dstroppa/openstack-smartos-nova-grizzly,bigswitch/nova,joker946/nova,jianghuaw/nova,Metaswitch/calico-nova,Yuriy-Leonov/nova,JianyuWang/nova,belmiromoreira/nova,apporc/nova,silenceli/nova,viggates/nova,tianweizhang/nova,rajalokan/nova,sridevikoushik31/openstack,edulramirez/nova,cernops/nova,openstack/nova,maelnor/nova,sebrandon1/nova,CCI-MOC/nova,tudorvio/nova,thomasem/nova,noironetworks/nova,yatinkumbhare/openstack-nova,Francis-Liu/animated-broccoli,DirectXMan12/nova-hacking,MountainWei/nova,dawnpower/nova,mikalstill/nova,BeyondTheClouds/nova,sridevikoushik31/nova,mgagne/nova,whitepages/nova,petrutlucian94/nova,rajalokan/nova,BeyondTheClouds/nova,CiscoSystems/nova,shootstar/novatest,gspilio/nova,Francis-Liu/animated-broccoli,akash1808/nova_test_latest,gooddata/openstack-nova,phenoxim/nova,adelina-t/nova,OpenAcademy-OpenStack/nova-scheduler,gooddata/openstack-nova,citrix-openstack-build/nova,redhat-openstack/nova,ewindisch/nova,tangfeixiong/nova,devendermishrajio/nova_test_latest,alaski/nova,OpenAcademy-OpenStack/nova-scheduler,viggates/nova,isyippee/nova,kimjaejoong/nova,sridevikoushik31/nova,akash1808/nova,apporc/nova,zhimin711/nova,cyx1231st/nova,thomasem/nova,bigswitch/nova,adelina-t/nova,maheshp/novatest,plumgrid/plumgrid-nova,devendermishrajio/nova,vladikr/nova_drafts,blueboxgroup/nova,cloudbase/nova,yosshy/nova,leilihh/novaha,Yusuke1987/openstack_template