qcow2: Fix BDRV_O_INACTIVE handling in qcow2_invalidate_cache()
commit140fd5a69cf19460b8daa8a9bb83bd869f6db14d
authorKevin Wolf <kwolf@redhat.com>
Tue, 22 Dec 2015 15:10:32 +0000 (22 16:10 +0100)
committerKevin Wolf <kwolf@redhat.com>
Wed, 20 Jan 2016 12:36:23 +0000 (20 13:36 +0100)
treeaa72e90f53710d4164d9d273a7935613872e6763
parentec6d891224f708b2cda2a1edf68ffc0ff1316fca
qcow2: Fix BDRV_O_INACTIVE handling in qcow2_invalidate_cache()

What qcow2_invalidate_cache() should do is close the image with
BDRV_O_INACTIVE set and reopen it with the flag cleared. In fact, it
used to do exactly the opposite: qcow2_close() relied on bs->open_flags,
which is already updated to have cleared BDRV_O_INACTIVE at this point,
whereas qcow2_open() was called with s->flags, which has the flag still
set. Fix this.

Signed-off-by: Kevin Wolf <kwolf@redhat.com>
Reviewed-by: Eric Blake <eblake@redhat.com>
block/qcow2.c