qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Qemu-devel] [PATCH RESEND 31/50] block: Add blk_insert_bs()


From: Max Reitz
Subject: Re: [Qemu-devel] [PATCH RESEND 31/50] block: Add blk_insert_bs()
Date: Wed, 28 Jan 2015 11:58:58 -0500
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:31.0) Gecko/20100101 Thunderbird/31.4.0

On 2015-01-28 at 11:52, Eric Blake wrote:
On 01/27/2015 12:46 PM, Max Reitz wrote:
This function associates the given BlockDriverState with the given
BlockBackend.

Signed-off-by: Max Reitz <address@hidden>
---
  block/block-backend.c          | 16 ++++++++++++++++
  include/sysemu/block-backend.h |  1 +
  2 files changed, 17 insertions(+)

diff --git a/block/block-backend.c b/block/block-backend.c
index 760558f..656ebfc 100644
--- a/block/block-backend.c
+++ b/block/block-backend.c
@@ -312,6 +312,22 @@ void blk_hide_on_behalf_of_do_drive_del(BlockBackend *blk)
  }
/*
+ * Associates a new BlockDriverState with @blk.
+ */
+void blk_insert_bs(BlockBackend *blk, BlockDriverState *bs)
+{
+    if (bs->blk == blk) {
+        return;
+    }
+
+    assert(!blk->bs);
I guess this interesting code allows for idempotent use of blk_insert_bs
more than once?  What situations require that usage pattern?

Well, to be honest, there is no such requirement. I could (probably) have just omitted the condition before the assertion; but I just felt like it would be perfectly valid for this function to be idempotent which is why the condition is there.

At any rate, the new function looks fine.
Reviewed-by: Eric Blake <address@hidden>

Once again, thank you!

Max



reply via email to

[Prev in Thread] Current Thread [Next in Thread]