]> git.proxmox.com Git - ceph.git/blobdiff - ceph/src/spdk/doc/lvol.md
update source to Ceph Pacific 16.2.2
[ceph.git] / ceph / src / spdk / doc / lvol.md
index 78365ba77e87fdfc415e7e0cbce9b873f1db4e1f..a587cf48c0c030d6d6b5f125d04664c198c07e84 100644 (file)
@@ -57,6 +57,9 @@ The write operation is performed as shown in the diagram below:
 User may also create clone of existing snapshot that will be thin provisioned and it will behave in the same way as logical volume from which snapshot is created.
 There is no limit of clones and snapshots that may be created as long as there is enough space on logical volume store. Snapshots are read only. Clones may be created only from snapshots or read only logical volumes.
 
+A snapshot can be removed only if there is a single clone on top of it. The relation chain will be updated accordingly. The cluster map of clone and snapshot will be merged and entries for unallocated clusters in the clone
+will be updated with addresses from the snapshot cluster map. The entire operation modifies metadata only - no data is copied during this process.
+
 ## Inflation {#lvol_inflation}
 
 Blobs can be inflated to copy data from backing devices (e.g. snapshots) and allocate all remaining clusters. As a result of this operation all dependencies for the blob are removed.
@@ -77,7 +80,7 @@ There is no static configuration available for logical volumes. All configuratio
 RPC regarding lvolstore:
 
 ```
-construct_lvol_store [-h] [-c CLUSTER_SZ] bdev_name lvs_name
+bdev_lvol_create_lvstore [-h] [-c CLUSTER_SZ] bdev_name lvs_name
     Constructs lvolstore on specified bdev with specified name. During
     construction bdev is unmapped at initialization and all data is
     erased. Then original bdev is claimed by
@@ -87,20 +90,20 @@ construct_lvol_store [-h] [-c CLUSTER_SZ] bdev_name lvs_name
     -h  show help
     -c  CLUSTER_SZ Specifies the size of cluster. By default its 4MiB.
     --clear-method specify data region clear method "none", "unmap" (default), "write_zeroes"
-destroy_lvol_store [-h] [-u UUID] [-l LVS_NAME]
+bdev_lvol_delete_lvstore [-h] [-u UUID] [-l LVS_NAME]
     Destroy lvolstore on specified bdev. Removes lvolstore along with lvols on
     it. User can identify lvol store by UUID or its name. Note that destroying
     lvolstore requires using this call, while deleting single lvol requires
-    using destroy_lvol_bdev rpc call.
+    using bdev_lvol_delete rpc call.
     optional arguments:
     -h, --help  show help
-get_lvol_stores [-h] [-u UUID] [-l LVS_NAME]
+bdev_lvol_get_lvstores [-h] [-u UUID] [-l LVS_NAME]
     Display current logical volume store list
     optional arguments:
     -h, --help  show help
     -u UUID, --uuid UUID  show details of specified lvol store
     -l LVS_NAME, --lvs_name LVS_NAME  show details of specified lvol store
-rename_lvol_store [-h] old_name new_name
+bdev_lvol_rename_lvstore [-h] old_name new_name
     Change logical volume store name
     optional arguments:
     -h, --help  show this help message and exit
@@ -109,7 +112,7 @@ rename_lvol_store [-h] old_name new_name
 RPC regarding lvol and spdk bdev:
 
 ```
-construct_lvol_bdev [-h] [-u UUID] [-l LVS_NAME] [-t] [-c CLEAR_METHOD] lvol_name size
+bdev_lvol_create [-h] [-u UUID] [-l LVS_NAME] [-t] [-c CLEAR_METHOD] lvol_name size
     Creates lvol with specified size and name on lvolstore specified by its uuid
     or name. Then constructs spdk bdev on top of that lvol and presents it as spdk bdev.
     User may use -t switch to create thin provisioned lvol.
@@ -117,40 +120,40 @@ construct_lvol_bdev [-h] [-u UUID] [-l LVS_NAME] [-t] [-c CLEAR_METHOD] lvol_nam
     optional arguments:
     -h, --help  show help
     -c, --clear-method specify data clusters clear method "none", "unmap" (default), "write_zeroes"
-get_bdevs [-h] [-b NAME]
+bdev_get_bdevs [-h] [-b NAME]
     User can view created bdevs using this call including those created on top of lvols.
     optional arguments:
     -h, --help  show help
     -b NAME, --name NAME  Name of the block device. Example: Nvme0n1
-destroy_lvol_bdev [-h] bdev_name
-    Deletes a logical volume previously created by construct_lvol_bdev.
+bdev_lvol_delete [-h] bdev_name
+    Deletes a logical volume previously created by bdev_lvol_create.
     optional arguments:
     -h, --help  show help
-snapshot_lvol_bdev [-h] lvol_name snapshot_name
+bdev_lvol_snapshot [-h] lvol_name snapshot_name
     Create a snapshot with snapshot_name of a given lvol bdev.
     optional arguments:
     -h, --help  show help
-clone_lvol_bdev [-h] snapshot_name clone_name
+bdev_lvol_clone [-h] snapshot_name clone_name
     Create a clone with clone_name of a given lvol snapshot.
     optional arguments:
     -h, --help  show help
-rename_lvol_bdev [-h] old_name new_name
+bdev_lvol_rename [-h] old_name new_name
     Change lvol bdev name
     optional arguments:
     -h, --help  show help
-resize_lvol_bdev [-h] name size
+bdev_lvol_resize [-h] name size
     Resize existing lvol bdev
     optional arguments:
     -h, --help  show help
-set_read_only_lvol_bdev [-h] name
+bdev_lvol_set_read_only [-h] name
     Mark lvol bdev as read only
     optional arguments:
     -h, --help  show help
-inflate_lvol_bdev [-h] name
+bdev_lvol_inflate [-h] name
     Inflate lvol bdev
     optional arguments:
     -h, --help  show help
-decouple_parent_lvol_bdev [-h] name
+bdev_lvol_decouple_parent [-h] name
     Decouple parent of a logical volume
     optional arguments:
     -h, --help  show help