apport 'ubuntu' hook files many spurious bug reports against the grub package

Bug #668888 reported by Steve Langasek
10
This bug affects 1 person
Affects Status Importance Assigned to Milestone
apport (Ubuntu)
Fix Released
Medium
Steve Langasek
Lucid
Won't Fix
Medium
Steve Langasek
Maverick
Fix Released
Medium
Steve Langasek
Natty
Fix Released
Medium
Steve Langasek

Bug Description

Binary package hint: apport

When a user uninstalls the 'grub-pc' package in favor of 'grub', the next kernel upgrade will prompt the user whether they wish to create menu.lst, defaulting to 'no' and erroring out the package install if they don't choose 'yes'. This is all by design, but the package install error a) is something we want to avoid, b) results in bug reports being filed against the grub package for what is in fact a user error. Users should not uninstall grub-pc in favor of grub without manually configuring it and verifying that it is installed correctly to the right device, as this would be just as bad as failing to install the kernel package where kernel security support is concerned.

So we should fix the apport ubuntu general hook to give the user immediate feedback about their configuration error, instead of leading them to file a bug report. I think this should be fixed in the apport package instead of in a separate grub hook, because the ubuntu hook already contains the logic to redirect this to grub from the kernel package and this makes it easier to eliminate false-positives; but if others think this should be source_grub.py, I'm happy to use that instead.

SRU justification: This should be included as an SRU to lucid and maverick because we get at least 5 reports a week from users of these releases who have misconfigured their systems in such a manner, requiring manual effort to close their bugs.
https://bugs.launchpad.net/ubuntu/+source/grub/+bugs?field.searchtext=post-installation+1&field.status%3Alist=INVALID&field.status%3Alist=NEW shows upwards of 100 reports of this nature filed against grub.

This can be addressed for the natty release by forward-copying the maverick-proposed SRU to natty.

TEST CASE - on a system that was originally installed with Ubuntu 10.04 LTS or Ubuntu 10.10 media:
1) on lucid, uninstall the lucid-release version of 'linux-image-2.6.xx' if currently installed.
2) break the system by running 'sudo apt-get install grub' and allowing grub-pc to be removed.
3) use apt-get install to install the lucid or maverick release version of the kernel.
4) confirm that apport steers you toward filing a bug in launchpad.
5) install apport from -proposed.
6) run 'sudo rm /var/crash/linux-image-*.crash'.
7) run 'apt-get -f install' to reattempt the installation of the kernel package
8) confirm that apport tells you to install grub-pc, instead of steering you to file a bug report.
9) run the indicated command to reinstall grub-pc and restore your correct bootloader configuration.
10) if desired, remove the release version of the kernel package.

Steve Langasek (vorlon)
Changed in apport (Ubuntu Maverick):
status: New → In Progress
importance: Undecided → Medium
Changed in apport (Ubuntu Natty):
importance: Undecided → Medium
Changed in apport (Ubuntu Lucid):
importance: Undecided → Medium
assignee: nobody → Steve Langasek (vorlon)
Changed in apport (Ubuntu Maverick):
assignee: nobody → Steve Langasek (vorlon)
Changed in apport (Ubuntu Natty):
assignee: nobody → Steve Langasek (vorlon)
status: New → In Progress
description: updated
description: updated
Steve Langasek (vorlon)
description: updated
Steve Langasek (vorlon)
description: updated
Revision history for this message
Martin Pitt (pitti) wrote : Please test proposed package

Accepted apport into maverick-proposed, the package will build now and be available in a few hours. Please test and give feedback here. See https://wiki.ubuntu.com/Testing/EnableProposed for documentation how to enable and use -proposed. Thank you in advance!

Changed in apport (Ubuntu Maverick):
status: In Progress → Fix Committed
tags: added: verification-needed
Revision history for this message
Martin Pitt (pitti) wrote :

Steve verified that the package from propsed works fine.

Revision history for this message
Launchpad Janitor (janitor) wrote :

This bug was fixed in the package apport - 1.14.1-0ubuntu8.1

---------------
apport (1.14.1-0ubuntu8.1) maverick-proposed; urgency=low

  * data/general-hooks/ubuntu.py: don't collect bug reports on missing
    menu.lst - this is a user error that they need to fix up on their side.
    LP: #668888.
 -- Steve Langasek <email address hidden> Sat, 30 Oct 2010 17:01:59 -0600

Changed in apport (Ubuntu Maverick):
status: Fix Committed → Fix Released
Martin Pitt (pitti)
tags: added: verification-done
removed: verification-needed
Revision history for this message
Matt Zimmerman (mdz) wrote :

Do I read correctly that this has been fixed in SRU but is not merged into trunk yet?

Revision history for this message
Martin Pitt (pitti) wrote :

That's correct. If it's relevant for maverick, it's also relevant until (at least) the next LTS, so I ported the maverick patch to current natty now. It's in bzr, will go in with the next upload.

Changed in apport (Ubuntu Natty):
status: In Progress → Fix Committed
Revision history for this message
Launchpad Janitor (janitor) wrote :

This bug was fixed in the package apport - 1.19-0ubuntu1

---------------
apport (1.19-0ubuntu1) natty; urgency=low

  [ Martin Pitt ]
  * New upstream release:
    - apt backend: Do not generate a warning if the opportunistically added -dbg
      package does not exist.
    - apt backend: Only add -dbg in --no-pkg mode, as there will be conflicts in
      normal package mode.
    - apt backend: Call tar with target cwd instead of using -C; the latter causes
      an extra openat() call which breaks with current fakechroot.
    - launchpad.py: Fix retracer crash if DistroRelease field does not exist.
    - Convert deprecated failIf()/assert_() TestCase method calls to
      assertFalse()/assertTrue().
    - In apport-bug, if the user specifies a PID referring to a kernel thread,
      do the right thing and file the bug against the kernel
    - In hookutils.attach_dmesg, skip over an initial truncated message if one
      is present (this happens when the ring buffer overflows)
    - Change bug patterns to just use one central file instead of per-package
      files. This allows bug patterns to be written which are not package
      specific, and is easier to maintain as well. IMPORTANT: This changed the
      format of crashdb.conf: bug_pattern_base is now obsolete, and the new
      attribute bug_pattern_url now points to the full URL/path of the patterns
      file. Thanks to Matt Zimmerman!
  * debian/local/setup-apport-retracer: Drop local installation of packages,
    we now just check that they are installed in the system.
  * debian/local/apport-chroot: Convert --auth argument to absolute path, as
    fakechroot needs that.

  [ Steve Langasek ]
  * data/general-hooks/ubuntu.py: don't collect bug reports on missing
    menu.lst - this is a user error that they need to fix up on their side.
    (LP: #668888)

  [ Matt Zimmerman ]
  * data/general-hooks/ubuntu.py: Add UpgradeStatus field to show if the
    system was upgraded from a previous release (and when)
  * debian/apport.install: actually install the java_uncaught_exception script
 -- Martin Pitt <email address hidden> Mon, 28 Feb 2011 12:16:22 +0100

Changed in apport (Ubuntu Natty):
status: Fix Committed → Fix Released
tags: added: testcase
Revision history for this message
Steve Langasek (vorlon) wrote :

For whatever reason, the reports being filed against grub have tapered off substantially over the past year even though apport never got SRUed to lucid for this. So I don't think an SRU is warranted now.

Changed in apport (Ubuntu Lucid):
status: New → Won't Fix
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.