]> xenbits.xensource.com Git - qemu-xen.git/commitdiff
blockdev: document transactional shortcomings
authorJohn Snow <jsnow@redhat.com>
Thu, 6 Sep 2018 13:02:25 +0000 (09:02 -0400)
committerMax Reitz <mreitz@redhat.com>
Tue, 25 Sep 2018 13:31:15 +0000 (15:31 +0200)
Presently only the backup job really guarantees what one would consider
transactional semantics. To guard against someone helpfully adding them
in the future, document that there are shortcomings in the model that
would need to be audited at that time.

Signed-off-by: John Snow <jsnow@redhat.com>
Message-id: 20180906130225.5118-17-jsnow@redhat.com
Reviewed-by: Jeff Cody <jcody@redhat.com>
Reviewed-by: Max Reitz <mreitz@redhat.com>
Signed-off-by: Max Reitz <mreitz@redhat.com>
blockdev.c

index 0cf8febe6cd55c1bf2d8d752dcf8a98cda26be77..d4b42403df2fd0a4825b4d27d92aa1b0bfe27239 100644 (file)
@@ -2182,7 +2182,13 @@ static const BlkActionOps actions[] = {
         .instance_size = sizeof(BlockDirtyBitmapState),
         .prepare = block_dirty_bitmap_disable_prepare,
         .abort = block_dirty_bitmap_disable_abort,
-     }
+    },
+    /* Where are transactions for MIRROR, COMMIT and STREAM?
+     * Although these blockjobs use transaction callbacks like the backup job,
+     * these jobs do not necessarily adhere to transaction semantics.
+     * These jobs may not fully undo all of their actions on abort, nor do they
+     * necessarily work in transactions with more than one job in them.
+     */
 };
 
 /**