On 29 Jun 2026, at 12:31, Eli Britstein wrote:
> On 29/06/2026 13:01, Eelco Chaudron wrote:
>> External email: Use caution opening links or attachments
>>
>>
>> On 24 Jun 2026, at 15:02, Eli Britstein wrote:
>>
>> [...]
>>
>>>>> The netdev-doca by itself doesn't have a lot of value for the OVS users
>>>>> without the offload provider, AFAIU, which we will not get within the
>>>>> current release cycle (there is simply not enough time to get everything
>>>>> reviewed). The main benefit of having it in git is to avoid dragging
>>>>> the patch set on the mailing list. Having it on dpdk-latest surely
>>>>> requires a bit more rebasing work than having it on main, but it still
>>>>> provides ability to have follow-up changes with a full CI coverage. And
>>>>> most rebases should be fairly straightforward.
>>>>>
>>>>> We could have it on main if there were no other obstacles, but without
>>>>> any benefit for OVS users there is really no reason to bring more
>>>>> experimental code into main. We should just stick with simple rules.
>>>> That's fair. When v5 is ready it will be for dpdk-latest.
>>> I removed -DALLOW_EXPERIMENTAL_API from acinclude.m4. It can still work
>>> with current dpdk version since doca silently has it in its pkg-config
>>> files.
>>>
>>> I rebased on dpdk-latest. It applies cleanly.
>>>
>>> The problem is that shared linking cannot work because doca was compiled
>>> with those API as experimental and now they are not.
>>>
>>> We get the following:
>>>
>>> /usr/bin/ld:
>>> /opt/mellanox/doca/lib/x86_64-linux-gnu/libdoca_dpdk_bridge.so: undefined
>>> reference to `rte_pmd_mlx5_disable_steering@EXPERIMENTAL'
>>> /usr/bin/ld:
>>> /opt/mellanox/doca/lib/x86_64-linux-gnu/libdoca_dpdk_bridge.so: undefined
>>> reference to `rte_pmd_mlx5_driver_event_cb_register@EXPERIMENTAL'
>>>
>>> The options I see are:
>>>
>>> 1. Move back to push to main. The problem is that compiling against doca
>>> silently implies ALLOW_EXPERIMENTAL_API, even it is not enabled in
>>> acinclude.m4 (but has usage of those in the code, if using a dpdk with
>>> which they are still experimental).
>>>
>>> 2. Keep this plan to push to dpdk-latest but temporarily disable
>>> doca-shared linkage in CI (or remove the support of it completely). When we
>>> have an updated doca version that compiles against a dpdk version in which
>>> has those API stable, we can enable it back.
>>>
>>> Thoughts?
>> Hi Eli,
>>
>> Sorry for the late response, but I'm involved in handling an
>> escalation at the moment.
>>
>> Keep -DALLOW_EXPERIMENTAL_API in acinclude.m4 for the dpdk-latest
>> series. There is no need to remove it there. The policy is that
>> main does not get it, and when the APIs eventually get promoted to
>> stable and the series merges to main, the flag comes out at that
>> point. Removing it early just causes the shared linking breakage
>> you are seeing.
>
> No. From compilation/link point of view I can keep it or remove it. It
> doesn't make any difference.
>
> The reason is that in anyway doca pkg-config files have it. Only when there
> is a newer doca version without it will go away.
>
> The breakage now is because doca was compiled against a dpdk version with
> those API as experimental, so when trying to link with a newer dpdk version
> in which they are not, it breaks.
>
> A 3rd option I didn't mention is to go back to link in CI ovs-doca against
> the provided dpdk version in doca, rather than the compiled/cached version.
Hi Eli,
Thanks for the clarification, temporarily disabling shared in the
CI matrix works for me. We should add a comment along the lines of:
# Shared DOCA linking is temporarily disabled due to a symbol
# version mismatch: libdoca_dpdk_bridge.so v3.3.0 references
# rte_pmd_mlx5_disable_steering@@EXPERIMENTAL and
# rte_pmd_mlx5_driver_event_cb_register@@EXPERIMENTAL, which
# were promoted to stable in DPDK 25.11 and no longer exist
# under the @EXPERIMENTAL version tag.
# Re-enable once a DOCA SDK release built against a post-
# promotion DPDK 25.11 snapshot is available.
Can you confirm this will be fixed in DOCA before we merge to main?
Cheers,
Eelco
_______________________________________________
dev mailing list
[email protected]
https://mail.openvswitch.org/mailman/listinfo/ovs-dev