[Bug 1583279] Re: apport package hook for mdadm causes a Traceback

Martin Pitt martin.pitt at ubuntu.com
Tue May 24 21:16:11 UTC 2016

Hello Brian, or anyone else affected,

Accepted mdadm into trusty-proposed. The package will build now and be
available at https://launchpad.net/ubuntu/+source/mdadm/3.2.5-5ubuntu4.3
in a few hours, and then in the -proposed repository.

Please help us by testing this new package.  See
https://wiki.ubuntu.com/Testing/EnableProposed for documentation how to
enable and use -proposed.  Your feedback will aid us getting this update
out to other Ubuntu users.

If this package fixes the bug for you, please add a comment to this bug,
mentioning the version of the package you tested, and change the tag
from verification-needed to verification-done. If it does not fix the
bug for you, please add a comment stating that, and change the tag to
verification-failed.  In either case, details of your testing will help
us make a better decision.

Further information regarding the verification process can be found at
https://wiki.ubuntu.com/QATeam/PerformingSRUVerification .  Thank you in

** Changed in: mdadm (Ubuntu Trusty)
       Status: Triaged => Fix Committed

You received this bug notification because you are a member of Ubuntu
Foundations Bugs, which is subscribed to mdadm in Ubuntu.

  apport package hook for mdadm causes a Traceback

Status in mdadm package in Ubuntu:
  Fix Released
Status in mdadm source package in Trusty:
  Fix Committed
Status in mdadm source package in Wily:
  Fix Committed
Status in mdadm source package in Xenial:
  Fix Committed
Status in mdadm source package in Yakkety:
  Fix Released

Bug description:
  As we can see in bug 1581940 (attachment HookError_source_mdadm.py)
  the apport package hook for mdadm causes a traceback.

  Here's the Traceback:

  Traceback (most recent call last):
    File "/usr/lib/python3/dist-packages/apport/report.py", line 197, in _run_hook
      symb['add_info'](report, ui)
  TypeError: add_info() takes 1 positional argument but 2 were given

  During handling of the above exception, another exception occurred:

  Traceback (most recent call last):
    File "/usr/lib/python3/dist-packages/apport/report.py", line 202, in _run_hook
    File "/usr/share/apport/package-hooks/source_mdadm.py", line 53, in add_info
      report['initrd.files'] = get_initrd_files(initrd_re)
    File "/usr/share/apport/package-hooks/source_mdadm.py", line 30, in get_initrd_files
      out = cpio.communicate(fd.read())[0]
    File "/usr/lib/python3.5/subprocess.py", line 1065, in communicate
      stdout, stderr = self._communicate(input, endtime, timeout)
    File "/usr/lib/python3.5/subprocess.py", line 1681, in _communicate
    File "/usr/lib/python3.5/subprocess.py", line 1754, in _save_input
      self._input = self._input.encode(self.stdin.encoding)
  AttributeError: 'bytes' object has no attribute 'encode'


  Makes diagnosing issues around mdadm more difficult, as it won't be
  shown whether the generated initrd for the running kernel includes the
  bits relevant to mdadm.

  [Test Case]

  NOTE: an md device is not needed to reproduce the apport failure, the stacktrace is reproducable without setting up software raid.
  1. sudo apt-get install mdadm
  2. sudo apport-cli -f -p mdadm

  For the failure case, a traceback like the above will be seen. For the
  successful case, no traceback will be seen, and (V)iewing the report
  will show a section titled 'initrd.files'

  [Regression Potential]

  Changes involved are only to the apport hook for mdadm, so the only
  risk is due to the rebuild of the mdadm package itself, and any
  toolchain changes that have occurred since it was last rebuilt.

To manage notifications about this bug go to:

More information about the foundations-bugs mailing list