[dpdk-dev] [PATCH v1 1/4] eal: rename phys_addr_t to iova_addr_t

santosh santosh.shukla at caviumnetworks.com
Mon Sep 18 16:31:24 CEST 2017


On Monday 18 September 2017 07:36 PM, Burakov, Anatoly wrote:
> Hi Santosh,
>
> On 14-Aug-17 4:15 PM, Santosh Shukla wrote:
>> Signed-off-by: Santosh Shukla <santosh.shukla at caviumnetworks.com>
>> ---
>> v1 note:
>> - As changes percolate to all possible dpdk subsystem..
>>    so its difficult to tag subject with one common title,
>>    but since, core of changeset is at eal layer so keeping 'eal:'
>>    as title.
>>
>>   app/test-crypto-perf/cperf_test_vectors.h          |  4 +--
>>   doc/guides/contributing/documentation.rst          |  4 +--
>>   doc/guides/prog_guide/cryptodev_lib.rst            |  6 ++--
>>   drivers/bus/fslmc/portal/dpaa2_hw_pvt.h            | 14 ++++----
>>   drivers/crypto/qat/qat_adf/qat_algs.h              |  6 ++--
>>   drivers/crypto/qat/qat_crypto.h                    |  2 +-
>>   drivers/mempool/dpaa2/dpaa2_hw_mempool.h           |  2 +-
>>   drivers/net/ark/ark_ddm.c                          |  2 +-
>>   drivers/net/ark/ark_ddm.h                          |  4 +--
>>   drivers/net/ark/ark_ethdev_rx.c                    | 12 +++----
>>   drivers/net/ark/ark_ethdev_tx.c                    |  2 +-
>>   drivers/net/ark/ark_mpu.c                          |  2 +-
>>   drivers/net/ark/ark_mpu.h                          |  4 +--
>>   drivers/net/ark/ark_udm.c                          |  2 +-
>>   drivers/net/ark/ark_udm.h                          |  4 +--
>>   drivers/net/avp/avp_ethdev.c                       |  2 +-
>>   drivers/net/avp/rte_avp_common.h                   | 20 +++++------
>>   drivers/net/bnx2x/bnx2x.c                          | 40 +++++++++++-----------
>>   drivers/net/bnx2x/bnx2x.h                          | 22 ++++++------
>>   drivers/net/bnx2x/bnx2x_rxtx.c                     |  4 +--
>>   drivers/net/bnx2x/bnx2x_stats.c                    |  2 +-
>>   drivers/net/bnx2x/bnx2x_vfpf.c                     |  2 +-
>>   drivers/net/bnx2x/ecore_sp.h                       |  2 +-
>>   drivers/net/bnxt/bnxt.h                            | 10 +++---
>>   drivers/net/bnxt/bnxt_cpr.h                        |  4 +--
>>   drivers/net/bnxt/bnxt_ethdev.c                     |  2 +-
>>   drivers/net/bnxt/bnxt_ring.c                       |  2 +-
>>   drivers/net/bnxt/bnxt_ring.h                       |  2 +-
>>   drivers/net/bnxt/bnxt_rxr.h                        |  4 +--
>>   drivers/net/bnxt/bnxt_txr.h                        |  2 +-
>>   drivers/net/bnxt/bnxt_vnic.c                       |  2 +-
>>   drivers/net/bnxt/bnxt_vnic.h                       |  6 ++--
>>   drivers/net/liquidio/lio_rxtx.c                    |  2 +-
>>   drivers/net/liquidio/lio_rxtx.h                    |  4 +--
>>   drivers/net/qede/base/bcm_osal.h                   |  2 +-
>>   drivers/net/sfc/efsys.h                            |  2 +-
>>   drivers/net/sfc/sfc_ef10_rx.c                      |  2 +-
>>   drivers/net/sfc/sfc_ef10_tx.c                      |  4 +--
>>   drivers/net/thunderx/base/nicvf_hw.c               |  2 +-
>>   drivers/net/thunderx/base/nicvf_hw.h               |  2 +-
>>   drivers/net/thunderx/base/nicvf_hw_defs.h          |  6 ++--
>>   drivers/net/thunderx/nicvf_ethdev.c                |  4 +--
>>   drivers/net/thunderx/nicvf_ethdev.h                |  4 +--
>>   drivers/net/thunderx/nicvf_struct.h                |  6 ++--
>>   drivers/net/virtio/virtio_rxtx.h                   |  4 +--
>>   drivers/net/virtio/virtqueue.h                     |  2 +-
>>   drivers/net/xenvirt/rte_eth_xenvirt.c              |  2 +-
>>   drivers/net/xenvirt/rte_mempool_gntalloc.c         |  6 ++--
>>   drivers/net/xenvirt/rte_xen_lib.c                  |  6 ++--
>>   drivers/net/xenvirt/rte_xen_lib.h                  |  8 ++---
>>   examples/l2fwd-crypto/main.c                       |  2 +-
>>   lib/librte_cryptodev/rte_crypto.h                  |  2 +-
>>   lib/librte_cryptodev/rte_crypto_sym.h              |  6 ++--
>>   lib/librte_cryptodev/rte_cryptodev.h               |  2 +-
>>   lib/librte_eal/bsdapp/eal/eal_memory.c             |  4 +--
>>   lib/librte_eal/common/include/rte_malloc.h         |  2 +-
>>   lib/librte_eal/common/include/rte_memory.h         | 18 +++++-----
>>   lib/librte_eal/common/include/rte_memzone.h        |  2 +-
>>   lib/librte_eal/common/rte_malloc.c                 |  2 +-
>>   lib/librte_eal/linuxapp/eal/eal_memory.c           |  8 ++---
>>   lib/librte_eal/linuxapp/eal/eal_xen_memory.c       |  4 +--
>>   .../linuxapp/eal/include/exec-env/rte_kni_common.h | 19 +++++-----
>>   lib/librte_mbuf/rte_mbuf.h                         |  8 ++---
>>   lib/librte_mempool/rte_mempool.c                   | 18 +++++-----
>>   lib/librte_mempool/rte_mempool.h                   | 14 ++++----
>>   lib/librte_vhost/vhost.h                           |  2 +-
>>   test/test/test_cryptodev.h                         |  2 +-
>>   test/test/test_memzone.c                           |  8 ++---
>>   68 files changed, 195 insertions(+), 194 deletions(-)
>>
>> diff --git a/app/test-crypto-perf/cperf_test_vectors.h b/app/test-crypto-perf/cperf_test_vectors.h
>> index 85955703c..a203272cf 100644
>> --- a/app/test-crypto-perf/cperf_test_vectors.h
>> +++ b/app/test-crypto-perf/cperf_test_vectors.h
>> @@ -78,13 +78,13 @@ struct cperf_test_vector {
>>         struct {
>>           uint8_t *data;
>> -        phys_addr_t phys_addr;
>> +        iova_addr_t phys_addr;
>>           uint16_t length;
>>       } aad;
>>         struct {
>>           uint8_t *data;
>> -        phys_addr_t phys_addr;
>> +        iova_addr_t phys_addr;
>>           uint16_t length;
>>       } digest;
>>   diff --git a/doc/guides/contributing/documentation.rst b/doc/guides/contributing/documentation.rst
>> index cddbd7bb8..719007b9f 100644
>> --- a/doc/guides/contributing/documentation.rst
>> +++ b/doc/guides/contributing/documentation.rst
>> @@ -712,7 +712,7 @@ The following are some guidelines for use of Doxygen in the DPDK API documentati
>>        /**< Virtual address of the first mempool object. */
>>        uintptr_t   elt_va_end;
>>        /**< Virtual address of the <size + 1> mempool object. */
>> -     phys_addr_t elt_pa[MEMPOOL_PG_NUM_DEFAULT];
>> +     iova_addr_t elt_pa[MEMPOOL_PG_NUM_DEFAULT];
>>        /**< Array of physical page addresses for the mempool buffer. */
>
> Here and perhaps in other places - worth it to fix comments as well?
>
ok,

>>       This doesn't have an effect on the rendered documentation but it is confusing for the developer reading the code.
>> @@ -731,7 +731,7 @@ The following are some guidelines for use of Doxygen in the DPDK API documentati
>>        /** Virtual address of the <size + 1> mempool object. */
>>        uintptr_t   elt_va_end;
>>        /** Array of physical page addresses for the mempool buffer. */
>> -     phys_addr_t elt_pa[MEMPOOL_PG_NUM_DEFAULT];
>> +     iova_addr_t elt_pa[MEMPOOL_PG_NUM_DEFAULT];
>>     * Check for Doxygen warnings in new code by checking the API documentation build::
>>   
>
> ...
>
>> --- a/lib/librte_eal/linuxapp/eal/include/exec-env/rte_kni_common.h
>> +++ b/lib/librte_eal/linuxapp/eal/include/exec-env/rte_kni_common.h
>> @@ -58,7 +58,6 @@
>>     #ifndef _RTE_KNI_COMMON_H_
>>   #define _RTE_KNI_COMMON_H_
>> -
>>   #ifdef __KERNEL__
>>   #include <linux/if.h>
>>   #define RTE_STD_C11
>> @@ -66,6 +65,8 @@
>>   #include <rte_common.h>
>>   #endif
>>   +typedef uint64_t iova_addr_t;
>> +
>
> Why was this added? (This also causes a compile issue according to build automation)
>
sent v2 [1] which fixes build issue for clang.


[1] http://dpdk.org/ml/archives/dev/2017-September/074524.html

> Thanks,
> Anatoly
>
>>   /**
>>    * KNI name is part of memzone name.
>>    */
>> @@ -138,20 +139,20 @@ struct rte_kni_mbuf {
>>   struct rte_kni_device_info {
>>       char name[RTE_KNI_NAMESIZE];  /**< Network device name for KNI */
>>   -    phys_addr_t tx_phys;
>> -    phys_addr_t rx_phys;
>> -    phys_addr_t alloc_phys;
>> -    phys_addr_t free_phys;
>> +    iova_addr_t tx_phys;
>> +    iova_addr_t rx_phys;
>> +    iova_addr_t alloc_phys;
>> +    iova_addr_t free_phys;



More information about the dev mailing list