[PATCH 2/5] qemuBlockStorageSourceCreateFormat: Force write access when formatting images

Peter Krempa posted 5 patches 5 years, 9 months ago
[PATCH 2/5] qemuBlockStorageSourceCreateFormat: Force write access when formatting images
Posted by Peter Krempa 5 years, 9 months ago
We need qemu to be able to write the newly created images so that it can
format them to the specified storage format.

Force write access by relabelling the images when formatting.

Signed-off-by: Peter Krempa <pkrempa@redhat.com>
---
 src/qemu/qemu_block.c | 12 ++++++++++++
 1 file changed, 12 insertions(+)

diff --git a/src/qemu/qemu_block.c b/src/qemu/qemu_block.c
index d32277d7fd..6f9c7071c9 100644
--- a/src/qemu/qemu_block.c
+++ b/src/qemu/qemu_block.c
@@ -2671,6 +2671,12 @@ qemuBlockStorageSourceCreate(virDomainObjPtr vm,
         return -1;
     }

+    /* grant write access to read-only images during formatting */
+    if (src->readonly &&
+        qemuDomainStorageSourceAccessAllow(priv->driver, vm, src, false,
+                                           false, true) < 0)
+        return -1;
+
     if (qemuDomainObjEnterMonitorAsync(priv->driver, vm, asyncJob) < 0)
         goto cleanup;

@@ -2697,6 +2703,12 @@ qemuBlockStorageSourceCreate(virDomainObjPtr vm,
                                            asyncJob) < 0)
         goto cleanup;

+    /* revoke write access to read-only images during formatting */
+    if (src->readonly &&
+        qemuDomainStorageSourceAccessAllow(priv->driver, vm, src, true,
+                                           false, true) < 0)
+        goto cleanup;
+
     if (qemuDomainObjEnterMonitorAsync(priv->driver, vm, asyncJob) < 0)
         goto cleanup;

-- 
2.26.2

Re: [PATCH 2/5] qemuBlockStorageSourceCreateFormat: Force write access when formatting images
Posted by Ján Tomko 5 years, 9 months ago
On a Monday in 2020, Peter Krempa wrote:
>We need qemu to be able to write the newly created images so that it can
>format them to the specified storage format.
>
>Force write access by relabelling the images when formatting.
>
>Signed-off-by: Peter Krempa <pkrempa@redhat.com>
>---
> src/qemu/qemu_block.c | 12 ++++++++++++
> 1 file changed, 12 insertions(+)
>

Reviewed-by: Ján Tomko <jtomko@redhat.com>

Jano