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
infernalis: librbd: flattening an rbd image with active IO can lead to hang #7484
Conversation
@jdurgin requesting review |
9661a17
to
3b4a5f9
Compare
lgtm after a qa run |
… IO can lead to hang Reviewed-by: Loic Dachary <ldachary@redhat.com>
@dillaman could you please amend the commit of "test: new librbd flatten test case" to shortly explain why it cannot be cherry-picked and has to be applied in this way to the infernalis branch ? For the record: It passed a run of the infernalis rbd suite ( see http://tracker.ceph.com/issues/13750#note-18 for details ). Note that all valgrind tests in this suite fail because of an environmental problem ( http://tracker.ceph.com/issues/14664 ). |
AIO operations after a flatten operation were previously hanging during the close of the parent image. Signed-off-by: Jason Dillaman <dillaman@redhat.com> (cherry picked from commit 5b3a4d2)
If another (independent) queue was processing, drain could block waiting. Instead, allow drain to exit quickly if no items are being processed and the queue is empty for the current WQ. Signed-off-by: Jason Dillaman <dillaman@redhat.com> (cherry picked from commit b118d7d)
Add a new convenience method to ImageCtx for handling flush requests and cleanup flush handling with dealing with the cache. Signed-off-by: Jason Dillaman <dillaman@redhat.com> (based on commit ee7c6f7)
Fixes: ceph#14092 Signed-off-by: Jason Dillaman <dillaman@redhat.com> (cherry picked from commit 98157ab)
3b4a5f9
to
b0c9176
Compare
librbd: flattening an rbd image with active IO can lead to hang Reviewed-by: Josh Durgin <jdurgin@redhat.com>
http://tracker.ceph.com/issues/14610