diff options
author | Alberto Garcia <berto@igalia.com> | 2018-11-12 16:00:38 +0200 |
---|---|---|
committer | Kevin Wolf <kwolf@redhat.com> | 2018-12-14 11:55:02 +0100 |
commit | 051a60f6a342c83fc489e1533b9f2799fa2b2b9b (patch) | |
tree | f7431f29233a90f174a8f730b9aaca91ce70348e /blockdev.c | |
parent | e7d22f8bc60351c8c16c6130efb09f08ba09d789 (diff) | |
download | qemu-051a60f6a342c83fc489e1533b9f2799fa2b2b9b.zip |
block: Use bdrv_reopen_set_read_only() in qmp_change_backing_file()
This patch replaces the bdrv_reopen() calls that set and remove the
BDRV_O_RDWR flag with the new bdrv_reopen_set_read_only() function.
Signed-off-by: Alberto Garcia <berto@igalia.com>
Reviewed-by: Max Reitz <mreitz@redhat.com>
Signed-off-by: Kevin Wolf <kwolf@redhat.com>
Diffstat (limited to 'blockdev.c')
-rw-r--r-- | blockdev.c | 8 |
1 files changed, 2 insertions, 6 deletions
diff --git a/blockdev.c b/blockdev.c index 81f95d920b..6fa6969cd0 100644 --- a/blockdev.c +++ b/blockdev.c @@ -4100,7 +4100,6 @@ void qmp_change_backing_file(const char *device, BlockDriverState *image_bs = NULL; Error *local_err = NULL; bool ro; - int open_flags; int ret; bs = qmp_get_root_bs(device, errp); @@ -4142,13 +4141,10 @@ void qmp_change_backing_file(const char *device, } /* if not r/w, reopen to make r/w */ - open_flags = image_bs->open_flags; ro = bdrv_is_read_only(image_bs); if (ro) { - bdrv_reopen(image_bs, open_flags | BDRV_O_RDWR, &local_err); - if (local_err) { - error_propagate(errp, local_err); + if (bdrv_reopen_set_read_only(image_bs, false, errp) != 0) { goto out; } } @@ -4164,7 +4160,7 @@ void qmp_change_backing_file(const char *device, } if (ro) { - bdrv_reopen(image_bs, open_flags, &local_err); + bdrv_reopen_set_read_only(image_bs, true, &local_err); error_propagate(errp, local_err); } |