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

luminous: os/bluestore: fix another aio stall/deadlock #18127

Merged
merged 2 commits into from Oct 6, 2017

Conversation

Projects
None yet
1 participant
@liewegas
Member

liewegas commented Oct 5, 2017

No description provided.

liewegas added some commits Sep 29, 2017

os/bluestore: wake kv thread when blocking on deferred_bytes
We need to wake the kv thread whenever setting deferred_aggressive to
ensure that txns with deferred io that have committed but haven't submitted
their deferred writes get submitted.  This aligns us with the other
users of deferred_aggressive (e.g., _osr_drain_all).

Signed-off-by: Sage Weil <sage@redhat.com>
(cherry picked from commit 633b170)
os/bluestore: use normal Context for async deferred_try_submit
I'm not quite sure why the FunctionContext did not ever execute on the
finisher thread (perhaps the [&] captured some state on the stack that it
shouldn't have?).  In any case, using a traditional Context here appears
to resolve the problem (of the async deferred_try_submit() never executing,
leading to a bluestore stall/deadlock).

Fixes: http://tracker.ceph.com/issues/21470
Signed-off-by: Sage Weil <sage@redhat.com>
(cherry picked from commit 67ec758)

@liewegas liewegas merged commit 4ff03e5 into ceph:luminous Oct 6, 2017

3 of 4 checks passed

Docs: build check Docs: failed with errors
Details
Signed-off-by all commits in this PR are signed
Details
Unmodified Submodules submodules for project are unmodified
Details
make check make check succeeded
Details

@liewegas liewegas deleted the liewegas:wip-21470-luminous branch Oct 6, 2017

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment