update fails on cloud server (invoke-rc.d restart failed) when using an unsupported kernel
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
multipath-tools (Ubuntu) |
Fix Released
|
Undecided
|
Mitchell Dzurick | ||
Focal |
Fix Committed
|
High
|
Mitchell Dzurick | ||
Jammy |
Fix Committed
|
High
|
Mitchell Dzurick | ||
Kinetic |
Won't Fix
|
High
|
Mitchell Dzurick | ||
Lunar |
Fix Committed
|
Undecided
|
Mitchell Dzurick |
Bug Description
[Impact]
multipath-tools d/rules currently uses dh_installinit in addition to dh_systemd* which tries to run invoke-rc.d. Calling invoke-rc.d may fail for some users. Because the service restarts on upgrade/install, when users attempt to upgrade the package, the service restart fails thus preventing users from upgrading the system.
This was found with upgrading, but if a user purges multipath-tools the same issue will be seen on install.
This was noticed on Linode Ubuntu VMs when using a paravirtual kernel that does not have all the drivers required for starting the multipath-tools service.
[Fix]
Remove init scripts and debhelper commands from package. This removes invoke-rc.d which was causing the problem.
An alternative (not being done in this SRU) is to simply add `--no-start` to dh_installinit in d/rules. This is not being done since init scripts shouldn't be on our systemd systems, so we might as well clean up the init scripts than just to just remove inboke-rc.d.
[Test Case]
Test case is very simple due to nature of bug
1. Create Jammy Linode instances using Kernel 6.0.2-x86_
2. Attempt to upgrade/install multipath-tools to any version (failure occurs during postinst)
Passes if install does not errors out.
[What could go wrong]
* The fix is removing init scripts. Perhaps someone is relying on the /etc/init.
* New issues with service start/stop/restart if init scripts were relied on
Related branches
- Athos Ribeiro (community): Approve
- Robie Basak: Needs Information
- Simon Chopin (community): Needs Fixing
-
Diff: 44 lines (+9/-3)3 files modifieddebian/changelog (+8/-0)
debian/multipath-tools.maintscript (+1/-0)
debian/rules (+0/-3)
- git-ubuntu bot: Approve
- Simon Chopin (community): Approve
- Lena Voytek (community): Approve
- Canonical Server Core Reviewers: Pending requested
- Canonical Server Reporter: Pending requested
-
Diff: 2784 lines (+2377/-31)17 files modifieddebian/changelog (+2105/-0)
debian/control (+10/-1)
debian/initramfs/hooks/multipath (+22/-2)
debian/initramfs/scripts/init-top/multipath (+18/-2)
debian/initramfs/scripts/local-bottom/multipath (+24/-22)
debian/initramfs/scripts/local-premount/multipath (+30/-0)
debian/kpartx-boot.install (+1/-0)
debian/kpartx-boot.postinst (+34/-0)
debian/kpartx-boot.postrm (+45/-0)
debian/kpartx-initramfs/hooks/kpartx (+22/-0)
debian/multipath-tools.dm-mpath-lvm.udev (+26/-0)
debian/multipath-tools.install (+1/-0)
debian/multipath-udeb.install (+1/-0)
debian/multipath.conf (+3/-0)
debian/patches/enable-find-multipaths.patch (+17/-0)
debian/patches/series (+1/-0)
debian/rules (+17/-4)
- Athos Ribeiro (community): Abstain
- Bryce Harrington (community): Approve
- Canonical Server Reporter: Pending requested
-
Diff: 134 lines (+85/-3)5 files modifieddebian/changelog (+10/-0)
debian/multipath-tools.maintscript (+1/-0)
debian/patches/0018-libmpathpersist-fix-command-keyword-ordering.patch (+73/-0)
debian/patches/series (+1/-0)
debian/rules (+0/-3)
- Bryce Harrington (community): Approve
- Athos Ribeiro: Pending requested
- Canonical Server Reporter: Pending requested
-
Diff: 137 lines (+88/-3)5 files modifieddebian/changelog (+13/-0)
debian/multipath-tools.maintscript (+1/-0)
debian/patches/0018-libmpathpersist-fix-command-keyword-ordering.patch (+73/-0)
debian/patches/series (+1/-0)
debian/rules (+0/-3)
CVE References
tags: |
added: server-todo removed: server-triage-discuss |
Changed in multipath-tools (Ubuntu): | |
assignee: | nobody → Bryce Harrington (bryce) |
Changed in multipath-tools (Ubuntu): | |
assignee: | Bryce Harrington (bryce) → Utkarsh Gupta (utkarsh) |
Changed in multipath-tools (Ubuntu Focal): | |
assignee: | nobody → Utkarsh Gupta (utkarsh) |
Changed in multipath-tools (Ubuntu Jammy): | |
assignee: | nobody → Utkarsh Gupta (utkarsh) |
Changed in multipath-tools (Ubuntu Kinetic): | |
assignee: | nobody → Utkarsh Gupta (utkarsh) |
Changed in multipath-tools (Ubuntu): | |
status: | New → In Progress |
Changed in multipath-tools (Ubuntu Focal): | |
status: | Confirmed → In Progress |
Changed in multipath-tools (Ubuntu Lunar): | |
status: | New → In Progress |
Changed in multipath-tools (Ubuntu Lunar): | |
assignee: | nobody → Mitchell Dzurick (mitchdz) |
description: | updated |
description: | updated |
tags: |
added: verification-failed-lunar removed: verification-done-lunar |
Issue was first noted 3 weeks ago in the Linode Community forum: /www.linode. com/community/ questions/ 23535/strange- new-error- failed- to-start- device- mapper- multipath- device- controller
https:/