[xenapi] Cooperatively yield during sparse copy
[xenapi] Cooperatively yield during sparse copy

On a resize down the sparse copy blocks other operations from running on
the compute node, and can take a long time to finish.  This patch adds a
greenthread yield to not block other things from happening on the
compute node.

Change-Id: I1287a6a0bb3157ad0e5eafe53b02db21849650fa

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