← 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

 

This fix seems to be working well. I have test packages here if anyone
wants to test them:

https://launchpad.net/~jderose/+archive/ubuntu/nvidia-test

** Patch added: "possible-fix.diff"
   https://bugs.launchpad.net/ubuntu/+source/nvidia-graphics-drivers-331/+bug/1394348/+attachment/4265183/+files/possible-fix.diff

-- 
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:
  New

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