[libvirt] [PATCH] ZFS: Support sparse volumes

Roman Bogorodskiy bogorodskiy at gmail.com
Wed Mar 16 08:26:37 UTC 2016


  Richard Laager wrote:

> On 03/05/2016 08:35 AM, Roman Bogorodskiy wrote:
> > What if allocation specified will be much larger than capacity?
> >
> > Neither zfs nor virStorageBackendZFSCreateVol() prevent from creating a
> > volume with:
> >
> >    --capacity 2G --allocation 4G
> 
> Is this necessary to support? I don't see a use case where this is 
> helpful. If not, the easy solution seems to be to prohibit it.

I'm not sure about use cases either. But considering that ZFS on FreeBSD
allows to do that and ZoL considers not being able to do that as a bug
(as per the link to the github issue I posted earlier), I guess it could
be useful in some situations.

Actually, the primary question is: do we want to add extra logic on top
of what ZFS does (i.e. disallow refres > volize, 'round' displayed
allocation) or just make things simple and do and show whatever ZFS
allows us to do and to show respectively.  

> 
> If you really want to support this, then I suppose we can just remove 
> the clamping, which leads to...
> > What's the reason to limit displayed allocation?
> 
> I didn't want --capacity 1G --allocation 1G to show as 1.03G allocation.
> 
> > PS I noticed that it could be an issue to set refreservation larger than
> > volsize with ZFS on Linux:
> >      https://github.com/zfsonlinux/zfs/issues/2468.
> >
> > The issue is still open and at this moment I cannot check if I can
> > reproduce that on Linux.
> 
> I can reproduce this. Setting the refreservation as part of the initial 
> `zfs create` works, but it is not possible to do with `zfs set` later.

Roman Bogorodskiy




More information about the libvir-list mailing list