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