On 2/5/26 2:30 PM, David Marchand wrote: > On Tue, 3 Feb 2026 at 12:09, Ilya Maximets <[email protected]> wrote: >> >> On 2/3/26 11:48 AM, Ilya Maximets wrote: >>> On 2/3/26 11:07 AM, David Marchand wrote: >>>> On Tue, 3 Feb 2026 at 10:56, Ilya Maximets <[email protected]> wrote: >>>>> >>>>> The library is purely internal and linked into the main libopenvswitch >>>>> during the build. It should not be marked for installation. Moving >>>>> it from 'lib' to 'noinst', so 'make install' doesn't install it to the >>>>> system. With that we also don't need to exclude it from the RPM files. >>>>> >>>>> Fixes: 352b6c7116cd ("dpif-lookup: add avx512 gather implementation.") >>>>> Fixes: 9ecaa5cb71b6 ("rhel: openvswitch-fedora.spec.in: Fix installed but >>>>> not packaged.") >>>>> Signed-off-by: Ilya Maximets <[email protected]> >>>> >>>> Won't it break linking against libopenvswitch.a if the avx512 lib >>>> dependency is not shipped too? >>>> >>>> On a AVX512 system: >>>> $ nm build/lib/.libs/libopenvswitch.a | grep U.*avx512 >>>> U dpcls_subtable_avx512_gather_probe__ >>>> U dp_netdev_input_outer_avx512 >>>> U mfex_avx512_dot1q_ip_tcp >>>> U mfex_avx512_dot1q_ip_udp >>>> U mfex_avx512_dot1q_ipv6_tcp >>>> U mfex_avx512_dot1q_ipv6_udp >>>> U mfex_avx512_ip_nvgre >>>> U mfex_avx512_ip_tcp >>>> U mfex_avx512_ip_udp >>>> U mfex_avx512_ipv6_tcp >>>> U mfex_avx512_ipv6_udp >>>> U mfex_avx512_vbmi_dot1q_ip_tcp >>>> U mfex_avx512_vbmi_dot1q_ip_udp >>>> U mfex_avx512_vbmi_dot1q_ipv6_tcp >>>> U mfex_avx512_vbmi_dot1q_ipv6_udp >>>> U mfex_avx512_vbmi_ip_nvgre >>>> U mfex_avx512_vbmi_ip_tcp >>>> U mfex_avx512_vbmi_ip_udp >>>> U mfex_avx512_vbmi_ipv6_tcp >>>> U mfex_avx512_vbmi_ipv6_udp >>>> U action_avx512_init >>> Need to re-check if this actually works with static libraries, I didn't try. >>> But the library archive itself contains multiple object files and while >>> these symbols are undefined in one, they are defined in the other: >>> >>> # ar t lib/.libs/libopenvswitch.a | grep avx512 >>> libopenvswitchavx512_la-dpif-netdev-avx512.o >>> libopenvswitchavx512_la-dpif-netdev-extract-avx512.o >>> libopenvswitchavx512_la-dpif-netdev-lookup-avx512-gather.o >>> libopenvswitchavx512_la-odp-execute-avx512.o >>> >>> # nm -A lib/.libs/libopenvswitch.a | grep mfex_avx512_ip_udp >>> lib/.libs/libopenvswitch.a:dpif-netdev-private-extract.o: U >>> mfex_avx512_ip_udp >>> lib/.libs/libopenvswitch.a:libopenvswitchavx512_la-dpif-netdev-extract-avx512.o:00000000000002b0 >>> T mfex_avx512_ip_udp >> >> In the build log it looks like libtool extracts the avx512 archive and >> then re-packs the content into libopenvswitch.a: > > Indeed, I see the same. > So this change looks fine. > > Acked-by: David Marchand <[email protected]>
Thanks! Applied and backported down to 3.3. Best regards, Ilya Maximets. _______________________________________________ dev mailing list [email protected] https://mail.openvswitch.org/mailman/listinfo/ovs-dev
