[Bug 1811795] Re: Mdadm: external metadata arrays and containers are removed incorrectly

Launchpad Bug Tracker 1811795 at bugs.launchpad.net
Mon May 20 09:20:27 UTC 2019


This bug was fixed in the package mdadm - 4.1~rc1-4ubuntu1.1

---------------
mdadm (4.1~rc1-4ubuntu1.1) cosmic; urgency=medium

  * d/p/lp-1811228-imsm-Block-volume-creation-with-empty-name.patch: avoid
    creating whitespaced or empty names (LP: #1811228)
  * d/p/lp-1811795-remove-external-arrays-and-devices.patch: fix removal of
    failing disks with external metadata (LP: #1811795)

 -- Christian Ehrhardt <christian.ehrhardt at canonical.com>  Wed, 10 Apr
2019 16:14:17 +0200

** Changed in: mdadm (Ubuntu Cosmic)
       Status: Fix Committed => Fix Released

** Changed in: mdadm (Ubuntu Bionic)
       Status: Fix Committed => Fix Released

-- 
You received this bug notification because you are a member of Ubuntu
Foundations Bugs, which is subscribed to mdadm in Ubuntu.
https://bugs.launchpad.net/bugs/1811795

Title:
  Mdadm: external metadata arrays and containers are removed incorrectly

Status in mdadm package in Ubuntu:
  Fix Released
Status in mdadm source package in Bionic:
  Fix Released
Status in mdadm source package in Cosmic:
  Fix Released

Bug description:
  [Impact]

   * The response to device fails so far was to remove underlying
     containers. That failed if the device itself was not stopped
     before doing so causing issues.

   * Fix by backporting upstream fix

  [Test Case]

   * This needs a Intel(R) Matrix Storage Hardware which limits the
     systems this can be tested.
     1. Create IMSM Container:
         mdadm -CR imsm0 -e imsm -n 2 /dev/sd[bc]
     2. Create IMSM level 0 Array:
         mdadm -CR vol0 -l 0 -n 2 /dev/sd[bc]
     3. Wait for resync to complete
        mdadm --wait /dev/md/vol0
     4. Read /proc/mdstat and check /dev/md/ directory
        cat /proc/mdstat
        ls /dev/md/
     5. Fail one disk incrementaly (simulate device disappearing
        from system)
        mdadm -If sdc
     6. Check mdstat file and /dev/md/
        cat /proc/mdstat
        ls /dev/md/
     Result:
        After disk fail [5] raid 0 array should disappear from mdstat,
        link /dev/md/imsm0 should exist.

  
   * these should allow someone who is not familiar with the affected
     package to reproduce the bug and verify that the updated package fixes
     the problem.

  [Regression Potential]

   * The patch changes the behavior on removing devices. So in that use-case
     lies the potential to regress somebody.
     It adds stopping the device before removing the containers associated
     to it (that is the fix). OTOH if there are cases where the kernel
     signals a device fail it would formerly not have removed it (the bug)
     but there are (very low) chances that somebody relies on that behavior.
     Since this avoids I/O errors on partially removed device elements I'd
     expect taking the change makes it better overall.

  [Other Info]

   * n/a

  ---

  Steps to reproduce:

  1. Create IMSM container on 2 SATA disks.

  2. Create R0 IMSM volume

  3. Wait for resync to complete.

  4. Fail one of disks

  Expected result:
  R0 Array should disappear form /proc/mdstat.

  Actual result:
  R0 array is visible in mdstat, link to container in /dev/md/ is removed.

To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/mdadm/+bug/1811795/+subscriptions



More information about the foundations-bugs mailing list