[PATCH 1/4] ethdev: introduce ethdev HW desc dump PI

Min Hu (Connor) humin29 at huawei.com
Sat May 28 04:21:46 CEST 2022


Thanks Stephen, v2 has been sent.

在 2022/5/27 23:34, Stephen Hemminger 写道:
> On Fri, 27 May 2022 10:33:48 +0800
> "Min Hu (Connor)" <humin29 at huawei.com> wrote:
> 
>> Added the ethdev HW Rx desc dump API which provides functions for query
>> HW descriptor from device. HW descriptor info differs in different NICs.
>> The information demonstrates I/O process which is important for debug.
>> As the information is different between NICs, the new API is introduced.
>>
>> Signed-off-by: Min Hu (Connor) <humin29 at huawei.com>
>> ---
>>   doc/guides/rel_notes/release_22_07.rst |  6 ++++
>>   lib/ethdev/ethdev_driver.h             | 42 ++++++++++++++++++++++++
>>   lib/ethdev/rte_ethdev.c                | 44 ++++++++++++++++++++++++++
>>   lib/ethdev/rte_ethdev.h                | 44 ++++++++++++++++++++++++++
>>   lib/ethdev/version.map                 |  2 ++
>>   5 files changed, 138 insertions(+)
>>
>> diff --git a/doc/guides/rel_notes/release_22_07.rst b/doc/guides/rel_notes/release_22_07.rst
>> index 0ed4f92820..cfb9117dd3 100644
>> --- a/doc/guides/rel_notes/release_22_07.rst
>> +++ b/doc/guides/rel_notes/release_22_07.rst
>> @@ -95,6 +95,12 @@ New Features
>>     * Added AH mode support in lookaside protocol (IPsec) for CN9K & CN10K.
>>     * Added AES-GMAC support in lookaside protocol (IPsec) for CN9K & CN10K.
>>   
>> +* **Added ethdev HW desc dump API, to dump Rx/Tx HW desc info from device.**
>> +
>> +  Added the ethdev HW Rx desc dump API which provides functions for query
>> +  HW descriptor from device. HW descriptor info differs in different NICs.
>> +  The information demonstrates I/O process which is important for debug.
>> +  As the information is different between NICs, the new API is introduced.
>>   
>>   Removed Items
>>   -------------
>> diff --git a/lib/ethdev/ethdev_driver.h b/lib/ethdev/ethdev_driver.h
>> index 69d9dc21d8..89512ab360 100644
>> --- a/lib/ethdev/ethdev_driver.h
>> +++ b/lib/ethdev/ethdev_driver.h
>> @@ -1073,6 +1073,42 @@ typedef int (*eth_ip_reassembly_conf_set_t)(struct rte_eth_dev *dev,
>>    */
>>   typedef int (*eth_dev_priv_dump_t)(struct rte_eth_dev *dev, FILE *file);
>>   
>> +/**
>> + * @internal
>> + * Dump ethdev Rx descriptor info to a file.
>> + *
>> + * @param file
>> + *   A pointer to a file for output.
>> + * @param dev
>> + *   Port (ethdev) handle.
>> + * @param queue_id
>> + *   The selected queue.
>> + * @param desc_id
>> + *   The selected descriptor.
>> + * @return
>> + *   Negative errno value on error, zero on success.
>> + */
>> +typedef int (*eth_rx_hw_desc_dump_t)(FILE *file, struct rte_eth_dev *dev,
>> +				       uint16_t queue_id, uint16_t desc_id);
>> +
>> +/**
>> + * @internal
>> + * Dump ethdev Tx descriptor info to a file.
>> + *
>> + * @param file
>> + *   A pointer to a file for output.
>> + * @param dev
>> + *   Port (ethdev) handle.
>> + * @param queue_id
>> + *   The selected queue.
>> + * @param desc_id
>> + *   The selected descriptor.
>> + * @return
>> + *   Negative errno value on error, zero on success.
>> + */
>> +typedef int (*eth_tx_hw_desc_dump_t)(FILE *file, struct rte_eth_dev *dev,
>> +				       uint16_t queue_id, uint16_t desc_id);
> 
> Should be 'const struct rte_eth_dev *dev' to remind developers that dump
> should not modify device?
> .
> 


More information about the dev mailing list