There is a bug in the upgrade path from the old kmod-openvswitch SysV based RPM to the new openvswitch-kmod systemd based RPM. Since the name of the package is changed it is not possible to use the yum or rpm upgrade options. This prevents passing in a 1 or 2 to the %postun scriptlet section of the older RPM and that causes the section to be treated as an 'erase'. The old kmod-openvswitch %postun section proceeds to erase the symlinks in ../weak-updates/openvwswitch that the installation of the new package had just created.
Fix this by adding a %posttrans tag to the systemd spec file. This scriptlet is called after the symlinks have just been erased and it calls the ovs-kmod-manage.sh script to recreate the symlinks and run depmod -a again so that the correct kernel modules will be found and loaded. VMware-BZ: #236987 Cc: Aaron Conole <acon...@redhat.com> Cc: Flavio Leitner <f...@redhat.com> Signed-off-by: Greg Rose <gvrose8...@gmail.com> --- rhel/openvswitch-kmod-fedora.spec.in | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/rhel/openvswitch-kmod-fedora.spec.in b/rhel/openvswitch-kmod-fedora.spec.in index 92d763f..a50016d 100644 --- a/rhel/openvswitch-kmod-fedora.spec.in +++ b/rhel/openvswitch-kmod-fedora.spec.in @@ -120,6 +120,15 @@ done fi /sbin/depmod -a +%posttrans +# The upgrade path from the older kmod-openvswitch SysV package to +# the newer openvswitch-kmod systemd package will end up removing +# the symlinks to the weak-updates/openvswitch drivers because of +# it's %postun section. We add this section to handle that case. +if [ -x "%{_datadir}/openvswitch/scripts/ovs-kmod-manage.sh" ]; then + %{_datadir}/openvswitch/scripts/ovs-kmod-manage.sh +fi + %files %defattr(0644,root,root) /lib/modules/*/extra/openvswitch/*.ko -- 1.8.3.1 _______________________________________________ dev mailing list d...@openvswitch.org https://mail.openvswitch.org/mailman/listinfo/ovs-dev