[libvirt] [PATCH v3 0/3] rbd: improvements to actual disk-usage calculation

jdillama@redhat.com posted 3 patches 4 weeks ago
Test syntax-check passed
Patches applied successfully (tree, apply log)
git fetch https://github.com/patchew-project/libvirt tags/patchew/20190319134218.13517-1-dillaman@redhat.com
docs/formatstorage.html.in                    | 27 ++++++++++++
docs/schemas/storagecommon.rng                |  7 ++++
docs/schemas/storagepool.rng                  | 23 ++++++++++
src/conf/storage_conf.c                       | 27 ++++++++++++
src/conf/storage_conf.h                       |  9 ++++
src/storage/storage_backend_rbd.c             | 42 +++++++++++++++++--
.../pool-rbd-refresh-volume-allocation.xml    | 15 +++++++
.../pool-rbd-refresh-volume-allocation.xml    | 18 ++++++++
tests/storagepoolxml2xmltest.c                |  1 +
9 files changed, 165 insertions(+), 4 deletions(-)
create mode 100644 tests/storagepoolxml2xmlin/pool-rbd-refresh-volume-allocation.xml
create mode 100644 tests/storagepoolxml2xmlout/pool-rbd-refresh-volume-allocation.xml

[libvirt] [PATCH v3 0/3] rbd: improvements to actual disk-usage calculation

Posted by jdillama@redhat.com 4 weeks ago
From: Jason Dillaman <dillaman@redhat.com>

The RBD fast-diff feature can vastly reduce the amount of time needed
to calculate actual disk usage of volumes, but it might still be a 
slow operation for large RBD pools or pools with large RBD images.
Therefore, this feature should be able to be optionally disabled if
needed.

Additionally, the fast-diff feature can only be used if the fast-diff
map isn't flagged as invalid. Otherwise, librbd will silently perform
a costly block-by-block scan to calculate the disk usage.

since v1:
- Moved RBD-unique refresh volume allocation override to shared storage
  pool attribute

sice v2:
- Moved attribute under new "<refresh><volume allocation='...'/></refresh>"
  elements.

Jason Dillaman (3):
  rbd: do not attempt to use fast-diff if it's marked invalid
  storage: optional 'refresh' elemement on pool
  rbd: optionally compute volume allocation from capacity

 docs/formatstorage.html.in                    | 27 ++++++++++++
 docs/schemas/storagecommon.rng                |  7 ++++
 docs/schemas/storagepool.rng                  | 23 ++++++++++
 src/conf/storage_conf.c                       | 27 ++++++++++++
 src/conf/storage_conf.h                       |  9 ++++
 src/storage/storage_backend_rbd.c             | 42 +++++++++++++++++--
 .../pool-rbd-refresh-volume-allocation.xml    | 15 +++++++
 .../pool-rbd-refresh-volume-allocation.xml    | 18 ++++++++
 tests/storagepoolxml2xmltest.c                |  1 +
 9 files changed, 165 insertions(+), 4 deletions(-)
 create mode 100644 tests/storagepoolxml2xmlin/pool-rbd-refresh-volume-allocation.xml
 create mode 100644 tests/storagepoolxml2xmlout/pool-rbd-refresh-volume-allocation.xml

-- 
2.20.1

--
libvir-list mailing list
libvir-list@redhat.com
https://www.redhat.com/mailman/listinfo/libvir-list

Re: [libvirt] [PATCH v3 0/3] rbd: improvements to actual disk-usage calculation

Posted by Michal Privoznik 4 weeks ago
On 3/19/19 2:42 PM, jdillama@redhat.com wrote:
> From: Jason Dillaman <dillaman@redhat.com>
> 
> The RBD fast-diff feature can vastly reduce the amount of time needed
> to calculate actual disk usage of volumes, but it might still be a
> slow operation for large RBD pools or pools with large RBD images.
> Therefore, this feature should be able to be optionally disabled if
> needed.
> 
> Additionally, the fast-diff feature can only be used if the fast-diff
> map isn't flagged as invalid. Otherwise, librbd will silently perform
> a costly block-by-block scan to calculate the disk usage.
> 
> since v1:
> - Moved RBD-unique refresh volume allocation override to shared storage
>    pool attribute
> 
> sice v2:
> - Moved attribute under new "<refresh><volume allocation='...'/></refresh>"
>    elements.
> 
> Jason Dillaman (3):
>    rbd: do not attempt to use fast-diff if it's marked invalid
>    storage: optional 'refresh' elemement on pool
>    rbd: optionally compute volume allocation from capacity
> 
>   docs/formatstorage.html.in                    | 27 ++++++++++++
>   docs/schemas/storagecommon.rng                |  7 ++++
>   docs/schemas/storagepool.rng                  | 23 ++++++++++
>   src/conf/storage_conf.c                       | 27 ++++++++++++
>   src/conf/storage_conf.h                       |  9 ++++
>   src/storage/storage_backend_rbd.c             | 42 +++++++++++++++++--
>   .../pool-rbd-refresh-volume-allocation.xml    | 15 +++++++
>   .../pool-rbd-refresh-volume-allocation.xml    | 18 ++++++++
>   tests/storagepoolxml2xmltest.c                |  1 +
>   9 files changed, 165 insertions(+), 4 deletions(-)
>   create mode 100644 tests/storagepoolxml2xmlin/pool-rbd-refresh-volume-allocation.xml
>   create mode 100644 tests/storagepoolxml2xmlout/pool-rbd-refresh-volume-allocation.xml
> 

I'm doing some tweaks (nothing serious), ACKing and pushing.

Congratulations on your first libvirt contribution!

Michal

--
libvir-list mailing list
libvir-list@redhat.com
https://www.redhat.com/mailman/listinfo/libvir-list