Comment 4 for bug 41144

Revision history for this message
Graham Crumb (gcrumb) wrote :

It looks like the problem is from a missing file...

@emigre:~$ dpkg -S /sbin/update-modules
diversion by module-init-tools from: /sbin/update-modules
diversion by module-init-tools to: /sbin/update-modules.modutils
module-init-tools: /sbin/update-modules
@emigre:~$ dpkg -S /sbin/update-modules.modutils
diversion by module-init-tools from: /sbin/update-modules
diversion by module-init-tools to: /sbin/update-modules.modutils
@emigre:~$

On top of that the update-modules script doesn't report the error:

@emigre:~$ cat /sbin/update-modules
#!/bin/sh -e
if [ -x /sbin/update-modules.modutils ]; then
  exec /sbin/update-modules.modutils "$*"
fi
exit 0

So what appears to be happening is that after the kernel upgrade, /sbin/update-modules gets called to update /etc/modules, and it exits without reporting that anything went wrong. The explicit exit 0 is the wrong default value, and in the wrong place. I'd suggest:

#!/bin/sh -e
if [ -x /sbin/update-modules.modutils ]; then
  exec /sbin/update-modules.modutils "$*";
  exit 0
fi
exit 1

And also the module-init-tools tools needs to include /sbin/update-modules.modutils