[libvirt] [PATCH 2/2] storage: btrfs subvolumes for directory pools

Michal Privoznik mprivozn at redhat.com
Wed Oct 9 16:04:20 UTC 2013


On 09.10.2013 17:15, Michal Privoznik wrote:
> On 10.09.2013 20:59, Oskari Saarenmaa wrote:
>> This commit adds support for btrfs subvolumes as directory volumes.  The
>> directory storage pool can be used to manage btrfs subvolumes on an existing
>> btrfs filesystem.  The driver can create new blank subvolumes and snapshots
>> of existing subvolumes as well as delete existing subvolumes.
>>
>> The subvolumes created are automatically made visible on the host side
>> and can be attached to domains using the <filesystem> tags as defined in
>> 'format domain' documentation.
>>
>> Subvolumes do not implement quotas at the moment because the current
>> (btrfs-progs-0.20.rc1.20130501git7854c8b-4.fc20.x86_64) support for quota
>> management in btrfs-progs is lacking the necessary features, for example
>> it's not possible to see the quota assigned to a certain subvolume and
>> usage information is only updated on syncfs(2).  Quota support will be
>> implemented once the tools gain the necessary features.
>>
>> Signed-off-by: Oskari Saarenmaa <os at ohmu.fi>
>> ---
>>  configure.ac                                      |  25 ++-
>>  docs/schemas/storagevol.rng                       |   1 +
>>  docs/storage.html.in                              |  30 ++-
>>  libvirt.spec.in                                   |   4 +
>>  src/conf/storage_conf.c                           |   3 +
>>  src/conf/storage_conf.h                           |   1 +
>>  src/storage/storage_backend.c                     |  15 +-
>>  src/storage/storage_backend_fs.c                  | 222 ++++++++++++++++++++--
>>  src/util/virstoragefile.c                         |   4 +-
>>  src/util/virstoragefile.h                         |   1 +
>>  tests/storagevolxml2xmlin/vol-btrfs-snapshot.xml  |  13 ++
>>  tests/storagevolxml2xmlin/vol-btrfs.xml           |   9 +
>>  tests/storagevolxml2xmlout/vol-btrfs-snapshot.xml |  26 +++
>>  tests/storagevolxml2xmlout/vol-btrfs.xml          |  17 ++
>>  tests/storagevolxml2xmltest.c                     |   2 +
>>  15 files changed, 343 insertions(+), 30 deletions(-)
>>  create mode 100644 tests/storagevolxml2xmlin/vol-btrfs-snapshot.xml
>>  create mode 100644 tests/storagevolxml2xmlin/vol-btrfs.xml
>>  create mode 100644 tests/storagevolxml2xmlout/vol-btrfs-snapshot.xml
>>  create mode 100644 tests/storagevolxml2xmlout/vol-btrfs.xml
>>

Just to let you and everybody else's know - I'll wait for you to post v2
to this patch (probably worth resending the set) and push the whole new
patch set even though the 1/2 is ACKed. The rationale is, the
virDirIsExecutable is worth a separate patch - that is the new set will
have 3 patches (at least).

Michal




More information about the libvir-list mailing list