upgrade of openvswitch packages resets alternative binaries to auto
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
Ubuntu Cloud Archive |
Fix Released
|
Undecided
|
Unassigned | ||
Queens |
Fix Released
|
Undecided
|
James Page | ||
Stein |
Fix Released
|
Undecided
|
James Page | ||
Train |
Fix Released
|
Undecided
|
Unassigned | ||
openvswitch (Ubuntu) |
Fix Released
|
High
|
James Page | ||
Bionic |
Fix Released
|
High
|
James Page | ||
Disco |
Won't Fix
|
High
|
Unassigned | ||
Eoan |
Fix Released
|
High
|
James Page |
Bug Description
[Impact]
Package upgrades on installations using the dpdk binary will be automatically switched back to the non-dpdk binary on upgrade.
This will break all configured networking within openvswitch.
[Test Case]
sudo apt install openvswitch-
sudo update-alternatives --set ovs-vswitchd /usr/lib/
sudo update-alternatives --query ovs-vswitchd
Name: ovs-vswitchd
Link: /usr/sbin/
Status: manual
Best: /usr/lib/
Value: /usr/lib/
Alternative: /usr/lib/
Priority: 50
Alternative: /usr/lib/
Priority: 100
sudo apt install --reinstall openvswitch-
sudo update-alternatives --query ovs-vswitchd
Name: ovs-vswitchd
Link: /usr/sbin/
Status: auto
Best: /usr/lib/
Value: /usr/lib/
Alternative: /usr/lib/
Priority: 50
Alternative: /usr/lib/
Priority: 100
[Regression Potential]
Low - the fix was been in Ubuntu since Eoan and the maintainer script usage of update-alternatives was broken since the -dpdk binary was introducted.
The main challenge is actually upgrading a -dpdk installation without disabling the -dpdk binary with the existing prerm script.
To avoid this:
sudo sed -i "/update-
before completing the package upgrade thus ensuring the -dpdk version of the binary never gets removed.
[Original Bug Report]
Upgrading and existing openvswitch installation which has been manually configured to use the DPDK alternative binary using:
sudo update-alternatives --set ovs-vswitchd /usr/lib/
results in the ovs-vswitchd being reset back to 'auto':
Setting up openvswitch-switch (2.11.0-
update-
The prerm maintainer scripts always remove the alternatives, which purges any manual setting done of the binaries.
CVE References
Changed in openvswitch (Ubuntu Disco): | |
status: | Triaged → Won't Fix |
description: | updated |
Changed in cloud-archive: | |
status: | New → Fix Released |
Changed in openvswitch (Ubuntu Bionic): | |
assignee: | nobody → James Page (james-page) |
status: | Triaged → In Progress |
description: | updated |
description: | updated |
description: | updated |
This is a somewhat tricky issue as the alternative removal is done in the prerm script of the currently installed package version; so we can fix it for future updates, but the act of fixing it will cause any -dpdk based installations to revert back to the non-dpdk version of the binary.