[PATCH] qemu: migration: don't open storage driver too early

Michal Privoznik mprivozn at redhat.com
Mon Oct 12 08:55:52 UTC 2020


On 10/12/20 10:50 AM, Daniel P. Berrangé wrote:
> On Sun, Oct 11, 2020 at 07:44:36PM -0400, Cole Robinson wrote:
>> If storage migration is requested, and the destination storage does
>> not exist on the remote host, qemu's migration support will call
>> into the libvirt storage driver to precreate the destination storage.
>>
>> The storage driver virConnectPtr is opened too early though, adding
>> an unnecessary dependency on the storage driver for several cases
>> that don't require it. This currently requires kubevirt to install
>> the storage driver even though they aren't actually using it.
>>
>> Push the virGetConnectStorage calls to right before the cases they are
>> actually needed.
> 
> This pushes the connection open attempts inside a loop body. So if the
> VM has multiple disks, then we're going to be repeatedly opening and
> closing the connection which is not desirable.
> 
> I think we need a global connection across all disks, which is lazy
> opened on first access.

Doesn't virGetConnectStorage() cache the connection?

Michal




More information about the libvir-list mailing list