[RFC v3] ethdev: introduce ethdev dump API

Ferruh Yigit ferruh.yigit at intel.com
Thu Feb 3 14:21:38 CET 2022


On 1/25/2022 1:45 PM, Min Hu (Connor) wrote:
> Hi, Ferruh,
> 
> 在 2022/1/25 20:58, Ferruh Yigit 写道:
>> On 1/25/2022 12:56 PM, Ferruh Yigit wrote:
>>> On 1/18/2022 3:34 PM, Ajit Khaparde wrote:
>>>> On Wed, Jan 12, 2022 at 4:06 AM Ray Kinsella <mdr at ashroe.eu> wrote:
>>>>>
>>>>>
>>>>> Min Hu (Connor) <humin29 at huawei.com> writes:
>>>>>
>>>>>> Added the ethdev dump API which provides functions for query private info
>>>>>> from device. There exists many private properties in different PMD drivers,
>>>>>> such as adapter state, Rx/Tx func algorithm in hns3 PMD. The information of
>>>>>> these properties is important for debug. As the information is private,
>>>>>> the new API is introduced.
>>>>>>
>>>>>> Signed-off-by: Min Hu (Connor) <humin29 at huawei.com>
>>>>>> Acked-by: Morten BrÞrup <mb at smartsharesystems.com>
>>>>>> ---
>>>>>> v3:
>>>>>> * fix comment.
>>>>>> * add rte_eth_dev_priv_dump to version.map file.
>>>>>>
>>>>>> v2:
>>>>>> * fix dump API name
>>>>>> * adjust description in doc.
>>>>>> ---
>>>>>>   doc/guides/rel_notes/release_22_03.rst |  7 +++++++
>>>>>>   lib/ethdev/ethdev_driver.h             | 17 +++++++++++++++++
>>>>>>   lib/ethdev/rte_ethdev.c                | 15 +++++++++++++++
>>>>>>   lib/ethdev/rte_ethdev.h                | 16 ++++++++++++++++
>>>>>>   lib/ethdev/version.map                 |  3 +++
>>>>>>   5 files changed, 58 insertions(+)
>>>>>>
>>>>>
>>>>> Acked-by: Ray Kinsella <mdr at ashroe.eu>
>>>> Acked-by: Ajit Khaparde <ajit.khaparde at broadcom.com>
>>>
>>>
>>> I have a concern and this "private info", it can be useful for debug
>>> but still it will lead to a PMD specific applications, I wonder if some
>>> common information can be provided.
> The purpose of introducing the API is to enhance dump ability for NICs.
> It will be used in APP proc-info, I will add "show-port-private" option
> for it. As for common information, I will add them in "show-port" option
> which already exists.
> 

Hi Connor,

We briefly touch on this patch in today's release status meeting,
as far as I get general consensus was this can be good for debugging
issues offline (instead of application parsing the output of API).

So can you please send a new, non-RFC, version of the patch?
And please keep the existing ack/review tags.

> 
>   Is there any list in your mind what
>>> can be part of this private info?
> Private info for NICs, take HNS3 PMD NICS as an example,
>    - Dev Capability:
>            -- support DCB: no
>            -- support COPPER: no
>            -- support FD QUEUE REGION: no
>            -- support PTP: no
>            -- support TX PUSH: no
>            -- support INDEP TXRX: no
>            -- support STASH: no
>            -- support SIMPLE BD: no
>            -- support RXD Advanced Layout: no
>            -- support OUTER UDP CKSUM: no
>            -- support RAS IMP: no
>            -- support TM: no
>            -- support VF VLAN FILTER MOD: no
>    - VLAN Config Info:
>            -- Port VLAN filter configuration
>                 nic_ingress           :Disable
>                 nic_egress            :Disable
>            -- VF VLAN filter configuration
>                 nic_ingress           :Disable
>                 nic_egress            :Disable
>            -- RX VLAN configuration
>                 vlan1_strip_en        :Disable
>                 vlan2_strip_en        :Disable
>                 vlan1_vlan_prionly    :Disable
>                 vlan2_vlan_prionly    :Disable
>                 vlan1_strip_discard   :Disable
>                 vlan2_strip_discard   :Disable
>            -- TX VLAN configuration
>                 accept_tag1           :Enable
>                 accept_untag1         :Enable
>                 insert_tag1_en        :Disable
>                 default_vlan_tag1 = 0, qos = 0
>                 accept_tag2           :Enable
>                 accept_untag2         :Enable
>                 insert_tag2_en        :Disable
>                 default_vlan_tag2 = 0, qos = 0
>                 vlan_shift_mode       :Disable
>            -- pvid status: off
>    - Fdir Info:
>            -- mode=0 max_key_len=400 rule_num:512 cnt_num:32
>            -- key_sel=1 tuple_active=0x3bdfd890 meta_data_active=0xd0
>            -- ipv6_word_en: in_s=3 in_d=3 out_s=0 out_d=0
> ....
> 
> These info is private for hns3 PMD.
> 
> 
>>>
>>> Also why not use existing xstats or telemetry to get more data from the
>>> drivers?
> Xstats is used to query statistics rather than state. Like above info,
> many keys is "enable" or "disable". It is not appropriated to put the
> date in xstats.
> 
> Telemetry is used to query common info for NICs, not for private info.
>   It is not also appropriated to put private date in telemetry.
> 
> 
> 
>>> As synced with Ciara (cc'ed), she mentioned more information can be get
>>> via registering callbacks to ethdev.
>>
>> Opps, Ciara (Power) cc'ed now.
>> .



More information about the dev mailing list