Project

General

Profile

Actions

Bug #40555

closed

Disabling journal might result in assertion failure

Added by Jason Dillaman almost 5 years ago. Updated over 4 years ago.

Status:
Resolved
Priority:
Normal
Assignee:
-
Target version:
-
% Done:

0%

Source:
Tags:
Backport:
luminous,mimic,nautilus
Regression:
No
Severity:
3 - minor
Reviewed:
Affected Versions:
ceph-qa-suite:
Pull request ID:
Crash signature (v1):
Crash signature (v2):

Description

In the dynamic features test, a crash was observed in the QEMU process while attempting to disable the journal.

The process of disabling the journal will flush out all IO events. However, if there was an in-flight external flush request, it's op tracking might only start after the IO work queue considers IO to be blocked (AioCompletion::start_op is only invoked after all preceeding IO has flushed). Therefore, the ImageRequestWQ::block_writes call invoked from the DisableFeatureRequest state machine will proceed even though a flush is still in-flight. When this flush completes and attempts to commit its journal entry, it will fail an assertion since ImageCtx::journal is NULL.

This 'flush' op tracking issue has been fixed in the master branch via a refactor in commit 09e4127d5d, so a smaller change should be implemented in backport branches directly.

http://qa-proxy.ceph.com/teuthology/yuriw-2019-06-24_22:33:04-rbd-wip-yuri3-testing-2019-06-24-2020-luminous-distro-basic-smithi/4065840/teuthology.log


Related issues 3 (0 open3 closed)

Copied to rbd - Backport #40572: nautilus: Disabling journal might result in assertion failureResolvedJason DillamanActions
Copied to rbd - Backport #40573: mimic: Disabling journal might result in assertion failureResolvedJason DillamanActions
Copied to rbd - Backport #40574: luminous: Disabling journal might result in assertion failureResolvedJason DillamanActions
Actions #1

Updated by Jason Dillaman almost 5 years ago

  • Status changed from New to Pending Backport
Actions #2

Updated by Jason Dillaman almost 5 years ago

  • Copied to Backport #40572: nautilus: Disabling journal might result in assertion failure added
Actions #3

Updated by Jason Dillaman almost 5 years ago

  • Copied to Backport #40573: mimic: Disabling journal might result in assertion failure added
Actions #4

Updated by Jason Dillaman almost 5 years ago

  • Copied to Backport #40574: luminous: Disabling journal might result in assertion failure added
Actions #5

Updated by Nathan Cutler over 4 years ago

  • Status changed from Pending Backport to Resolved
Actions

Also available in: Atom PDF