aboutsummaryrefslogtreecommitdiff
path: root/qemu-nbd.c
diff options
context:
space:
mode:
authorEric Blake <eblake@redhat.com>2019-01-11 13:47:19 -0600
committerEric Blake <eblake@redhat.com>2019-01-14 10:09:46 -0600
commit678ba275c77b5b12f3bc9bb369a1b824fc9f679f (patch)
tree9421848ee26b56cfb7a30eaff385d7f621152dd4 /qemu-nbd.c
parent7dc570b3806e5b0a4c9219061556ed5a4a0de80c (diff)
downloadqemu-678ba275c77b5b12f3bc9bb369a1b824fc9f679f.zip
qemu-678ba275c77b5b12f3bc9bb369a1b824fc9f679f.tar.gz
qemu-678ba275c77b5b12f3bc9bb369a1b824fc9f679f.tar.bz2
nbd: Merge nbd_export_bitmap into nbd_export_new
We only have one caller that wants to export a bitmap name, which it does right after creation of the export. But there is still a brief window of time where an NBD client could see the export but not the dirty bitmap, which a robust client would have to interpret as meaning the entire image should be treated as dirty. Better is to eliminate the window entirely, by inlining nbd_export_bitmap() into nbd_export_new(), and refusing to create the bitmap in the first place if the requested bitmap can't be located. We also no longer need logic for setting a different bitmap name compared to the bitmap being exported. Signed-off-by: Eric Blake <eblake@redhat.com> Reviewed-by: Vladimir Sementsov-Ogievskiy <vsementsov@virtuozzo.com> Message-Id: <20190111194720.15671-8-eblake@redhat.com>
Diffstat (limited to 'qemu-nbd.c')
-rw-r--r--qemu-nbd.c5
1 files changed, 3 insertions, 2 deletions
diff --git a/qemu-nbd.c b/qemu-nbd.c
index b93fa19..1552274 100644
--- a/qemu-nbd.c
+++ b/qemu-nbd.c
@@ -1016,8 +1016,9 @@ int main(int argc, char **argv)
}
export = nbd_export_new(bs, dev_offset, fd_size, export_name,
- export_description, nbdflags, nbd_export_closed,
- writethrough, NULL, &error_fatal);
+ export_description, NULL, nbdflags,
+ nbd_export_closed, writethrough, NULL,
+ &error_fatal);
if (device) {
#if HAVE_NBD_DEVICE