← Back to team overview

desktop-packages team mailing list archive

[Bug 1394348] Re: nvidia-331.postrm calls `stop nvidia-persistenced`, but upstart job has been removed

 

To hopefully make this fix easier for the nvidia driver maintainers to
integrate across all affected versions (including those in the xorg-
edgers PPA), here's a github pull request for the nvidia-331 branch:

https://github.com/tseliot/nvidia-graphics-drivers/pull/7

debdiff coming shortly.

-- 
You received this bug notification because you are a member of Desktop
Packages, which is subscribed to nvidia-graphics-drivers-331 in Ubuntu.
https://bugs.launchpad.net/bugs/1394348

Title:
  nvidia-331.postrm calls `stop nvidia-persistenced`, but upstart job
  has been removed

Status in nvidia-graphics-drivers-331 package in Ubuntu:
  Confirmed

Bug description:
  nvidia-graphics-drivers-331 (331.89-0ubuntu5) will fail to
  remove/purge nvidia-331 when /usr/bin/nvidia-persistenced is running.

  The reason is the nvidia-331.postrm script hasn't been updated to
  reflect that nvidia-persistenced is now started via udev rather than
  Upstart (the Upstart job has been removed).

  The offending lines in nvidia-331.postrm:

          # Remove the nvidia-persistenced user
          if id "$NVPD_USER" > /dev/null 2>&1; then
              stop nvidia-persistenced || true
              userdel "$NVPD_USER"
          fi

  When  /usr/bin/nvidia-persistenced is running,  `userdel "$NVPD_USER"`
  will cause the postrm script to exit with a non-zero status, leaving
  dpkg in a broken state.

  I believe the correct fix is:

          # Remove the nvidia-persistenced user
          if id "$NVPD_USER" > /dev/null 2>&1; then
              /usr/bin/stop-nvidia-persistenced
              userdel "$NVPD_USER"
          fi

  Or for extra safety, I like this fix even better:

          # Remove the nvidia-persistenced user
          if id "$NVPD_USER" > /dev/null 2>&1; then
              /usr/bin/stop-nvidia-persistenced || true
              userdel "$NVPD_USER" || true
          fi

  Although /usr/bin/stop-nvidia-persistenced will exit with 0 even if
  nvidia-persistenced wasn't running, I don't see any reason to risk a
  broken dpkg state when there were problems stopping nvidia-
  persistenced, or problems removing its user.

  Same problem exists with nvidia-graphics-drivers-331-updates.

To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/nvidia-graphics-drivers-331/+bug/1394348/+subscriptions


References