diff options
author | Jeff Cody <jcody@redhat.com> | 2012-09-20 15:13:19 -0400 |
---|---|---|
committer | Kevin Wolf <kwolf@redhat.com> | 2012-09-24 15:15:11 +0200 |
commit | e971aa12739f269d6fbfaeabdd4acaeb0f15960b (patch) | |
tree | 051780d65892511c8d4c5ba00e610ea967453843 /block | |
parent | 55b110f24ec765a09cfb7f4c013fcd90dd807628 (diff) | |
download | qemu-e971aa12739f269d6fbfaeabdd4acaeb0f15960b.zip qemu-e971aa12739f269d6fbfaeabdd4acaeb0f15960b.tar.gz qemu-e971aa12739f269d6fbfaeabdd4acaeb0f15960b.tar.bz2 |
block: Framework for reopening files safely
This is based on Supriya Kannery's bdrv_reopen() patch series.
This provides a transactional method to reopen multiple
images files safely.
Image files are queue for reopen via bdrv_reopen_queue(), and the
reopen occurs when bdrv_reopen_multiple() is called. Changes are
staged in bdrv_reopen_prepare() and in the equivalent driver level
functions. If any of the staged images fails a prepare, then all
of the images left untouched, and the staged changes for each image
abandoned.
Block drivers are passed a reopen state structure, that contains:
* BDS to reopen
* flags for the reopen
* opaque pointer for any driver-specific data that needs to be
persistent from _prepare to _commit/_abort
* reopen queue pointer, if the driver needs to queue additional
BDS for a reopen
Signed-off-by: Jeff Cody <jcody@redhat.com>
Signed-off-by: Kevin Wolf <kwolf@redhat.com>
Diffstat (limited to 'block')
0 files changed, 0 insertions, 0 deletions