forked from cloud-hypervisor/cloud-hypervisor
-
Notifications
You must be signed in to change notification settings - Fork 4
virtio-blk: blockdev-mirroring for live storage migration #175
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Open
Coffeeri
wants to merge
36
commits into
cyberus-technology:gardenlinux
Choose a base branch
from
Coffeeri:blockdev-mirror-cyberus-synchronous-completions
base: gardenlinux
Could not load branches
Branch not found: {{ refName }}
Loading
Could not load tags
Nothing to show
Loading
Are you sure you want to change the base?
Some commits from the old base branch may be removed from the timeline,
and old review comments may become outdated.
Open
Changes from all commits
Commits
Show all changes
36 commits
Select commit
Hold shift + click to select a range
edcea69
block: add mirror module skeleton
Coffeeri a465173
block: add MirroringAsyncIo skeleton
Coffeeri 10537da
block: add range lock primitive for mirror
Coffeeri 80b6c30
block: add CompletionIo for single-fd waits
Coffeeri 930bee7
block: mirror mutating I/O to destination
Coffeeri 6993515
block: add background copy worker for mirror
Coffeeri 4ae7d5a
virtio-devices: swap disk_image via queue commands
Coffeeri a1031cb
virtio-devices: set up mirror command channels
Coffeeri ef9d939
virtio-devices, block: add Block::start_mirror
Coffeeri 666b7b9
vmm: add device manager block mirror start and status
Coffeeri 19eb5be
vmm: add vm.disk-mirror-start REST endpoint
Coffeeri cafe346
vmm: add vm.disk-mirror-status REST endpoint
Coffeeri a8cf5df
block: implement MirroringAsyncIo::submit_batch_requests
Coffeeri dd72917
virtio-devices, block: add Block::complete_mirror
Coffeeri 3e99823
vmm: add vm.disk-mirror-complete REST endpoint
Coffeeri c2665e3
virtio-devices, block: add Block::cancel_mirror
Coffeeri 8a96e9b
vmm: deny conflicting ops while a disk mirror runs
Coffeeri eeb1953
block: use source passthrough after mirror failure
Coffeeri b8481ad
vmm: add vm.disk-mirror-cancel REST endpoint
Coffeeri 43d9e70
block: preserve sparseness in CopyWorker
Coffeeri 4f56164
block: add mirror unit tests
Coffeeri 3429600
block: test range guard held across mirror write
Coffeeri 860e398
virtio-devices, block: reject mirror ops on a paused device
Coffeeri a5d9519
vmm: reject mirror destination already backing a disk
Coffeeri 62f61b7
block: test batched submit on partial failure
Coffeeri ebd9372
block: test mirror phase transitions and op fan-out
Coffeeri a088046
docs: add disk mirroring guide
Coffeeri 5ccc370
vmm: dedup block device lookup in DeviceManager
Coffeeri 700aba0
virtio-devices: generalize lock granularity
Coffeeri 86c5022
virtio-devices: generalize disk locking
Coffeeri db03820
virtio-devices, vmm: lock mirror destination
Coffeeri 7dabb3f
block: release stale QEMU lock after downgrade
Coffeeri d153397
block: reject QCOW2 backing chains for mirroring
Coffeeri f91d9f7
vmm: generalize postponed lifecycle events
Coffeeri 9e457c6
vmm: postpone guest lifecycle for disk mirrors
Coffeeri ded51be
virtio-devices, block: emit disk mirror events
Coffeeri File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.
Oops, something went wrong.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.
Oops, something went wrong.
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Uh oh!
There was an error while loading. Please reload this page.