Comment 19 for bug 1858201

Revision history for this message
Christian Ehrhardt  (paelzer) wrote :

Libvirt does 1k alignment, that was what added th 512, Maas seems to request just 9000000000. This value isn't ok, as the alignment is missing there.
The interface in libvirt is dumb, as it doesn't know the shifts - that would be whoever created the zpool (or needs a lot of extra probing). Unfortunately in your case also Maas didn't create it.

Details on the upper bounds:
- Default ashift in zpool ends up representing 8k, but it could be smaller (down to 9) and
  therefore libvirt might not want to align to a higher value.
- It also depends on the sector size of the disk 512/4k.
- I think the effective upper limit might be ashift 16 (max per man page of zfs).
  13 is 8k, so 16 would be 64k.
  With 4k sectors that would be 512k.

After talking with Bjorn (thanks for the debug help!) Maas might just align to e.g. 1M since you only allocate in GiB that isn't a huge loss and would make it work with whatever a user could set the zpool up.

I'll set the libvirt task to invalid and Maas can evaluate the change to align before sending the request through vol-create-as.