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;
Created attachment 204836 [details]
openvswitch 2.11.1 static patch
Enable static libraries.
Poudriere logs look OK.
While here fix portlint warnings.