On 12/14/2022 10:34 AM, David Marchand wrote:
> On Mon, Dec 12, 2022 at 7:38 PM Ferruh Yigit <ferruh.yi...@amd.com> wrote:
>>
>> On 10/6/2022 4:18 PM, Ankur Dwivedi wrote:
>>> diff --git a/lib/ethdev/version.map b/lib/ethdev/version.map
>>> index 3651ceb234..79d0b2ee1f 100644
>>> --- a/lib/ethdev/version.map
>>> +++ b/lib/ethdev/version.map
>>> @@ -319,4 +319,148 @@ INTERNAL {
>>>         rte_eth_representor_id_get;
>>>         rte_eth_switch_domain_alloc;
>>>         rte_eth_switch_domain_free;
>>> +       __rte_eth_trace_add_first_rx_callback;
>>> +       __rte_eth_trace_add_rx_callback;
>>> +       __rte_eth_trace_add_tx_callback;
>>> +       __rte_eth_trace_allmulticast_disable;
>>
>>
>> These are not trace functions, but trace point objects, I see this is
>> common usage in other libraries too, but can you please explain why we
>> need to export the trace point objects from the .so file?
>>
>> For some datapath functions, which are static inline functions, trace
>> point objects are need to be accessible by application, it is OK to
>> export them, but they are very limited, but I am not clear why exporting
>> all of them is required.
> 
> There should be no need to export them.
> The only usage I can think of is when calling a tracepoint from a
> public inline helper.
> 

Like '__rte_ethdev_trace_rx_burst' & '__rte_ethdev_trace_tx_burst',
which are used by 'rte_eth_rx_burst()' & 'rte_eth_tx_burst()' static
inline functions.

Reply via email to