Bug #13726
closedQEMU hangs after creating snapshot and stopping VM
0%
Description
When RBD cache is disabled, taking a snapshot and stopping the VM results in a hung QEMU process. Setting "rbd_non_blocking_aio" to false apparently resolves the issue.
Files
Updated by alexandre derumier over 8 years ago
- File ceph.client.log ceph.client.log added
I have attached the client log,
the snapshot create command was :
rbd -p pooltest --image vm-162-disk-1 snap create --snap snap1
Updated by Jason Dillaman over 8 years ago
In-flight AIO read request forces an image refresh due to out-of-band snapshot creation. Detecting the newly created snapshot forces librbd to flush all in-flight ops. If there are no in-flight ops to flush, it will enqueue a completion on the thread pool. However, the thread pool will be blocked handling the AIO request waiting for the flush to complete.
The synchronous ImageCtx::flush_async_operations() method cannot use async callbacks.
Updated by Jason Dillaman over 8 years ago
- Status changed from New to In Progress
- Assignee set to Jason Dillaman
Updated by Jason Dillaman over 8 years ago
- Status changed from In Progress to Fix Under Review
jewel PR: https://github.com/ceph/ceph/pull/6508
Updated by alexandre derumier over 8 years ago
I confirm this is fixed with this PR.
(tested on infernalis)
Updated by Loïc Dachary over 8 years ago
- Status changed from Fix Under Review to Pending Backport
Updated by Loïc Dachary over 8 years ago
- Copied to Backport #13755: QEMU hangs after creating snapshot and stopping VM added
Updated by Loïc Dachary over 8 years ago
- Copied to Backport #13756: QEMU hangs after creating snapshot and stopping VM added
Updated by Jason Dillaman over 8 years ago
- Status changed from Pending Backport to Resolved
Updated by Nathan Cutler about 8 years ago
- Related to Bug #14988: QEMU VM hangs talking to RBD via librbd added