Bug 238331

Summary: net/openvswitch: Conflicts with libc (uuid_to_string(2))
Product: Ports & Packages Reporter: Ian Campbell <ianc1215>
Component: Individual Port(s)Assignee: freebsd-ports-bugs mailing list <ports-bugs>
Status: Open ---    
Severity: Affects Many People CC: koue, w.schwarzenfeld
Priority: --- Keywords: needs-patch, needs-qa
Version: LatestFlags: koue: maintainer-feedback+
koobs: merge-quarterly?
Hardware: Any   
OS: Any   
Description Flags
openvswitch 2.11.1 static patch none

Description Ian Campbell 2019-06-05 06:07:55 UTC
I recently tried to install OpenvSwitch on FreeBSD 12.0-RELEASE-p4 kernel, 12.0-RELEASE-p5 userland. I found that after applying a configuration and doing a system restart my configuration does not survive. When I login to the system I do not have any vSwitch configuration applied.

After digging around on the FreeBSD forums I found this post where someone mentioned that OpenvSwitch is conflicting with libc.


Based on that I started digging around in the ports tree. I found the Makefile for OpenvSwitch is setup to configure with shared libraries. I found that if I compile OpenvSwitch with static libraries the conflict with libc is resolved since the function that OpenvSwitch is trying to use is statically linked. I was able to test that after upgrading my configuration of the vSwitch(es) survives a system restart.

I did not test anymore beyond that since the lack of a kernelspace module makes this not suitable for my needs.

Here is a walkthrough of what I did;

Comment 1 Nikola Kolev 2019-06-05 11:21:49 UTC
Created attachment 204836 [details]
openvswitch 2.11.1 static patch

Enable static libraries.

Poudriere logs look OK.

While here fix portlint warnings.