* [dpdk-dev] [PATCH 1/2] common/octeontx2: move internal symbols to INTERNAL section
@ 2020-05-11 10:00 pbhagavatula
2020-05-11 10:00 ` [dpdk-dev] [PATCH 2/2] mempool/octeontx2: " pbhagavatula
` (2 more replies)
0 siblings, 3 replies; 13+ messages in thread
From: pbhagavatula @ 2020-05-11 10:00 UTC (permalink / raw)
To: jerinj, Nithin Dabilpuram, Anoob Joseph, Ray Kinsella, Neil Horman
Cc: thomas, dev, Pavan Nikhilesh
From: Pavan Nikhilesh <pbhagavatula@marvell.com>
Move the internal symbols to INTERNAL sections so that any
change in them is not reported as ABI breakage.
Signed-off-by: Pavan Nikhilesh <pbhagavatula@marvell.com>
---
drivers/common/octeontx2/otx2_common.h | 8 ++++++++
drivers/common/octeontx2/otx2_dev.h | 3 +++
drivers/common/octeontx2/otx2_irq.h | 3 +++
drivers/common/octeontx2/otx2_mbox.h | 6 ++++++
drivers/common/octeontx2/otx2_sec_idev.h | 6 ++++++
.../octeontx2/rte_common_octeontx2_version.map | 16 +++-------------
6 files changed, 29 insertions(+), 13 deletions(-)
diff --git a/drivers/common/octeontx2/otx2_common.h b/drivers/common/octeontx2/otx2_common.h
index e62cdea07..174702687 100644
--- a/drivers/common/octeontx2/otx2_common.h
+++ b/drivers/common/octeontx2/otx2_common.h
@@ -62,13 +62,21 @@ struct otx2_idev_cfg {
};
};
+__rte_internal
struct otx2_idev_cfg *otx2_intra_dev_get_cfg(void);
+__rte_internal
void otx2_sso_pf_func_set(uint16_t sso_pf_func);
+__rte_internal
uint16_t otx2_sso_pf_func_get(void);
+__rte_internal
uint16_t otx2_npa_pf_func_get(void);
+__rte_internal
struct otx2_npa_lf *otx2_npa_lf_obj_get(void);
+__rte_internal
void otx2_npa_set_defaults(struct otx2_idev_cfg *idev);
+__rte_internal
int otx2_npa_lf_active(void *dev);
+__rte_internal
int otx2_npa_lf_obj_ref(void);
/* Log */
diff --git a/drivers/common/octeontx2/otx2_dev.h b/drivers/common/octeontx2/otx2_dev.h
index 13b75e118..cd4fe517d 100644
--- a/drivers/common/octeontx2/otx2_dev.h
+++ b/drivers/common/octeontx2/otx2_dev.h
@@ -94,6 +94,7 @@ struct otx2_dev {
OTX2_DEV;
};
+__rte_internal
int otx2_dev_priv_init(struct rte_pci_device *pci_dev, void *otx2_dev);
/* Common dev init and fini routines */
@@ -116,7 +117,9 @@ otx2_dev_init(struct rte_pci_device *pci_dev, void *otx2_dev)
return otx2_dev_priv_init(pci_dev, otx2_dev);
}
+__rte_internal
void otx2_dev_fini(struct rte_pci_device *pci_dev, void *otx2_dev);
+__rte_internal
int otx2_dev_active_vfs(void *otx2_dev);
#define RVU_PFVF_PF_SHIFT 10
diff --git a/drivers/common/octeontx2/otx2_irq.h b/drivers/common/octeontx2/otx2_irq.h
index 9d326276e..0683cf554 100644
--- a/drivers/common/octeontx2/otx2_irq.h
+++ b/drivers/common/octeontx2/otx2_irq.h
@@ -16,10 +16,13 @@ typedef struct {
uint64_t bits[MAX_VFPF_DWORD_BITS];
} otx2_intr_t;
+__rte_internal
int otx2_register_irq(struct rte_intr_handle *intr_handle,
rte_intr_callback_fn cb, void *data, unsigned int vec);
+__rte_internal
void otx2_unregister_irq(struct rte_intr_handle *intr_handle,
rte_intr_callback_fn cb, void *data, unsigned int vec);
+__rte_internal
int otx2_disable_irqs(struct rte_intr_handle *intr_handle);
#endif /* _OTX2_IRQ_H_ */
diff --git a/drivers/common/octeontx2/otx2_mbox.h b/drivers/common/octeontx2/otx2_mbox.h
index 5351deaf2..8af8ada05 100644
--- a/drivers/common/octeontx2/otx2_mbox.h
+++ b/drivers/common/octeontx2/otx2_mbox.h
@@ -1582,19 +1582,25 @@ struct tim_enable_rsp {
uint32_t __otx2_io currentbucket;
};
+__rte_internal
const char *otx2_mbox_id2name(uint16_t id);
int otx2_mbox_id2size(uint16_t id);
void otx2_mbox_reset(struct otx2_mbox *mbox, int devid);
int otx2_mbox_init(struct otx2_mbox *mbox, uintptr_t hwbase, uintptr_t reg_base,
int direction, int ndevsi, uint64_t intr_offset);
void otx2_mbox_fini(struct otx2_mbox *mbox);
+__rte_internal
void otx2_mbox_msg_send(struct otx2_mbox *mbox, int devid);
+__rte_internal
int otx2_mbox_wait_for_rsp(struct otx2_mbox *mbox, int devid);
int otx2_mbox_wait_for_rsp_tmo(struct otx2_mbox *mbox, int devid, uint32_t tmo);
+__rte_internal
int otx2_mbox_get_rsp(struct otx2_mbox *mbox, int devid, void **msg);
+__rte_internal
int otx2_mbox_get_rsp_tmo(struct otx2_mbox *mbox, int devid, void **msg,
uint32_t tmo);
int otx2_mbox_get_availmem(struct otx2_mbox *mbox, int devid);
+__rte_internal
struct mbox_msghdr *otx2_mbox_alloc_msg_rsp(struct otx2_mbox *mbox, int devid,
int size, int size_rsp);
diff --git a/drivers/common/octeontx2/otx2_sec_idev.h b/drivers/common/octeontx2/otx2_sec_idev.h
index c681f5094..89cdaf66a 100644
--- a/drivers/common/octeontx2/otx2_sec_idev.h
+++ b/drivers/common/octeontx2/otx2_sec_idev.h
@@ -22,16 +22,22 @@ struct otx2_sec_idev_cfg {
rte_spinlock_t tx_cpt_lock;
};
+__rte_internal
uint8_t otx2_eth_dev_is_sec_capable(struct rte_eth_dev *eth_dev);
+__rte_internal
int otx2_sec_idev_cfg_init(int port_id);
+__rte_internal
int otx2_sec_idev_tx_cpt_qp_add(uint16_t port_id, struct otx2_cpt_qp *qp);
+__rte_internal
int otx2_sec_idev_tx_cpt_qp_remove(struct otx2_cpt_qp *qp);
+__rte_internal
int otx2_sec_idev_tx_cpt_qp_put(struct otx2_cpt_qp *qp);
+__rte_internal
int otx2_sec_idev_tx_cpt_qp_get(uint16_t port_id, struct otx2_cpt_qp **qp);
#endif /* _OTX2_SEC_IDEV_H_ */
diff --git a/drivers/common/octeontx2/rte_common_octeontx2_version.map b/drivers/common/octeontx2/rte_common_octeontx2_version.map
index 01279c339..94af2ed69 100644
--- a/drivers/common/octeontx2/rte_common_octeontx2_version.map
+++ b/drivers/common/octeontx2/rte_common_octeontx2_version.map
@@ -1,4 +1,4 @@
-DPDK_20.0 {
+INTERNAL {
global:
otx2_dev_active_vfs;
@@ -30,23 +30,13 @@ DPDK_20.0 {
otx2_sso_pf_func_get;
otx2_sso_pf_func_set;
otx2_unregister_irq;
-
- local: *;
-};
-
-DPDK_21 {
- global:
-
otx2_eth_dev_is_sec_capable;
otx2_sec_idev_cfg_init;
otx2_sec_idev_tx_cpt_qp_add;
otx2_sec_idev_tx_cpt_qp_remove;
otx2_sec_idev_tx_cpt_qp_get;
otx2_sec_idev_tx_cpt_qp_put;
-} DPDK_20.0;
-
-EXPERIMENTAL {
- global:
-
otx2_logtype_ep;
+
+ local: *;
};
--
2.17.1
^ permalink raw reply [flat|nested] 13+ messages in thread
* [dpdk-dev] [PATCH 2/2] mempool/octeontx2: move internal symbols to INTERNAL section
2020-05-11 10:00 [dpdk-dev] [PATCH 1/2] common/octeontx2: move internal symbols to INTERNAL section pbhagavatula
@ 2020-05-11 10:00 ` pbhagavatula
2020-05-11 14:45 ` [dpdk-dev] [PATCH 1/2] common/octeontx2: " Thomas Monjalon
2020-05-13 1:04 ` [dpdk-dev] [PATCH v2 " pbhagavatula
2 siblings, 0 replies; 13+ messages in thread
From: pbhagavatula @ 2020-05-11 10:00 UTC (permalink / raw)
To: jerinj, Nithin Dabilpuram, Ray Kinsella, Neil Horman
Cc: thomas, dev, Pavan Nikhilesh
From: Pavan Nikhilesh <pbhagavatula@marvell.com>
Move the internal symbols to INTERNAL sections so that any
change in them is not reported as ABI breakage.
Signed-off-by: Pavan Nikhilesh <pbhagavatula@marvell.com>
---
drivers/mempool/octeontx2/otx2_mempool.h | 2 ++
drivers/mempool/octeontx2/rte_mempool_octeontx2_version.map | 2 +-
2 files changed, 3 insertions(+), 1 deletion(-)
diff --git a/drivers/mempool/octeontx2/otx2_mempool.h b/drivers/mempool/octeontx2/otx2_mempool.h
index adcc0db24..8aa548248 100644
--- a/drivers/mempool/octeontx2/otx2_mempool.h
+++ b/drivers/mempool/octeontx2/otx2_mempool.h
@@ -206,7 +206,9 @@ npa_lf_aura_op_range_set(uint64_t aura_handle, uint64_t start_iova,
}
/* NPA LF */
+__rte_internal
int otx2_npa_lf_init(struct rte_pci_device *pci_dev, void *otx2_dev);
+__rte_internal
int otx2_npa_lf_fini(void);
/* IRQ */
diff --git a/drivers/mempool/octeontx2/rte_mempool_octeontx2_version.map b/drivers/mempool/octeontx2/rte_mempool_octeontx2_version.map
index d4f81aed8..e6887ceb8 100644
--- a/drivers/mempool/octeontx2/rte_mempool_octeontx2_version.map
+++ b/drivers/mempool/octeontx2/rte_mempool_octeontx2_version.map
@@ -1,4 +1,4 @@
-DPDK_20.0 {
+INTERNAL {
global:
otx2_npa_lf_fini;
--
2.17.1
^ permalink raw reply [flat|nested] 13+ messages in thread
* Re: [dpdk-dev] [PATCH 1/2] common/octeontx2: move internal symbols to INTERNAL section
2020-05-11 10:00 [dpdk-dev] [PATCH 1/2] common/octeontx2: move internal symbols to INTERNAL section pbhagavatula
2020-05-11 10:00 ` [dpdk-dev] [PATCH 2/2] mempool/octeontx2: " pbhagavatula
@ 2020-05-11 14:45 ` Thomas Monjalon
2020-05-13 1:04 ` [dpdk-dev] [PATCH v2 " pbhagavatula
2 siblings, 0 replies; 13+ messages in thread
From: Thomas Monjalon @ 2020-05-11 14:45 UTC (permalink / raw)
To: Pavan Nikhilesh
Cc: jerinj, Nithin Dabilpuram, Anoob Joseph, Ray Kinsella,
Neil Horman, dev, david.marchand
11/05/2020 12:00, pbhagavatula@marvell.com:
> From: Pavan Nikhilesh <pbhagavatula@marvell.com>
>
> Move the internal symbols to INTERNAL sections so that any
> change in them is not reported as ABI breakage.
>
> Signed-off-by: Pavan Nikhilesh <pbhagavatula@marvell.com>
> ---
> drivers/common/octeontx2/otx2_common.h | 8 ++++++++
> drivers/common/octeontx2/otx2_dev.h | 3 +++
> drivers/common/octeontx2/otx2_irq.h | 3 +++
> drivers/common/octeontx2/otx2_mbox.h | 6 ++++++
> drivers/common/octeontx2/otx2_sec_idev.h | 6 ++++++
> .../octeontx2/rte_common_octeontx2_version.map | 16 +++-------------
> 6 files changed, 29 insertions(+), 13 deletions(-)
You probably need to add an exception in libabigail.ignore file
for symbols moved from stable to internal.
> --- a/drivers/common/octeontx2/rte_common_octeontx2_version.map
> +++ b/drivers/common/octeontx2/rte_common_octeontx2_version.map
> @@ -1,4 +1,4 @@
> -DPDK_20.0 {
> +INTERNAL {
> global:
>
> otx2_dev_active_vfs;
> @@ -30,23 +30,13 @@ DPDK_20.0 {
> otx2_sso_pf_func_get;
> otx2_sso_pf_func_set;
> otx2_unregister_irq;
> -
> - local: *;
> -};
> -
> -DPDK_21 {
> - global:
> -
> otx2_eth_dev_is_sec_capable;
> otx2_sec_idev_cfg_init;
> otx2_sec_idev_tx_cpt_qp_add;
> otx2_sec_idev_tx_cpt_qp_remove;
> otx2_sec_idev_tx_cpt_qp_get;
> otx2_sec_idev_tx_cpt_qp_put;
> -} DPDK_20.0;
> -
> -EXPERIMENTAL {
> - global:
> -
> otx2_logtype_ep;
> +
> + local: *;
> };
I think you should sort symbols in alphabetical way.
^ permalink raw reply [flat|nested] 13+ messages in thread
* [dpdk-dev] [PATCH v2 1/2] common/octeontx2: move internal symbols to INTERNAL section
2020-05-11 10:00 [dpdk-dev] [PATCH 1/2] common/octeontx2: move internal symbols to INTERNAL section pbhagavatula
2020-05-11 10:00 ` [dpdk-dev] [PATCH 2/2] mempool/octeontx2: " pbhagavatula
2020-05-11 14:45 ` [dpdk-dev] [PATCH 1/2] common/octeontx2: " Thomas Monjalon
@ 2020-05-13 1:04 ` pbhagavatula
2020-05-13 1:04 ` [dpdk-dev] [PATCH v2 2/2] mempool/octeontx2: " pbhagavatula
` (3 more replies)
2 siblings, 4 replies; 13+ messages in thread
From: pbhagavatula @ 2020-05-13 1:04 UTC (permalink / raw)
To: jerinj, aostruszka, Ray Kinsella, Neil Horman, Nithin Dabilpuram,
Anoob Joseph
Cc: thomas, dev, Pavan Nikhilesh
From: Pavan Nikhilesh <pbhagavatula@marvell.com>
Move the internal symbols to INTERNAL sections so that any
change in them is not reported as ABI breakage.
Signed-off-by: Pavan Nikhilesh <pbhagavatula@marvell.com>
---
v2 Changes:
- Sort version map alphabetically
- Add libabigail ignore tag for OCTEONTX2
devtools/libabigail.abignore | 4 +++
drivers/common/octeontx2/otx2_common.h | 8 ++++++
drivers/common/octeontx2/otx2_dev.h | 3 +++
drivers/common/octeontx2/otx2_irq.h | 3 +++
drivers/common/octeontx2/otx2_mbox.h | 6 +++++
drivers/common/octeontx2/otx2_sec_idev.h | 6 +++++
.../rte_common_octeontx2_version.map | 26 ++++++-------------
7 files changed, 38 insertions(+), 18 deletions(-)
diff --git a/devtools/libabigail.abignore b/devtools/libabigail.abignore
index c9ee73cb3..dfe346db4 100644
--- a/devtools/libabigail.abignore
+++ b/devtools/libabigail.abignore
@@ -48,3 +48,7 @@
changed_enumerators = RTE_CRYPTO_AEAD_LIST_END
[suppress_variable]
name = rte_crypto_aead_algorithm_strings
+
+; Ignore moving internal OCTEONTX2 stable functions to INTERNAL tag
+[suppress_file]
+ soname_regexp = librte_common_octeontx2.*
diff --git a/drivers/common/octeontx2/otx2_common.h b/drivers/common/octeontx2/otx2_common.h
index e62cdea07..174702687 100644
--- a/drivers/common/octeontx2/otx2_common.h
+++ b/drivers/common/octeontx2/otx2_common.h
@@ -62,13 +62,21 @@ struct otx2_idev_cfg {
};
};
+__rte_internal
struct otx2_idev_cfg *otx2_intra_dev_get_cfg(void);
+__rte_internal
void otx2_sso_pf_func_set(uint16_t sso_pf_func);
+__rte_internal
uint16_t otx2_sso_pf_func_get(void);
+__rte_internal
uint16_t otx2_npa_pf_func_get(void);
+__rte_internal
struct otx2_npa_lf *otx2_npa_lf_obj_get(void);
+__rte_internal
void otx2_npa_set_defaults(struct otx2_idev_cfg *idev);
+__rte_internal
int otx2_npa_lf_active(void *dev);
+__rte_internal
int otx2_npa_lf_obj_ref(void);
/* Log */
diff --git a/drivers/common/octeontx2/otx2_dev.h b/drivers/common/octeontx2/otx2_dev.h
index 13b75e118..cd4fe517d 100644
--- a/drivers/common/octeontx2/otx2_dev.h
+++ b/drivers/common/octeontx2/otx2_dev.h
@@ -94,6 +94,7 @@ struct otx2_dev {
OTX2_DEV;
};
+__rte_internal
int otx2_dev_priv_init(struct rte_pci_device *pci_dev, void *otx2_dev);
/* Common dev init and fini routines */
@@ -116,7 +117,9 @@ otx2_dev_init(struct rte_pci_device *pci_dev, void *otx2_dev)
return otx2_dev_priv_init(pci_dev, otx2_dev);
}
+__rte_internal
void otx2_dev_fini(struct rte_pci_device *pci_dev, void *otx2_dev);
+__rte_internal
int otx2_dev_active_vfs(void *otx2_dev);
#define RVU_PFVF_PF_SHIFT 10
diff --git a/drivers/common/octeontx2/otx2_irq.h b/drivers/common/octeontx2/otx2_irq.h
index 9d326276e..0683cf554 100644
--- a/drivers/common/octeontx2/otx2_irq.h
+++ b/drivers/common/octeontx2/otx2_irq.h
@@ -16,10 +16,13 @@ typedef struct {
uint64_t bits[MAX_VFPF_DWORD_BITS];
} otx2_intr_t;
+__rte_internal
int otx2_register_irq(struct rte_intr_handle *intr_handle,
rte_intr_callback_fn cb, void *data, unsigned int vec);
+__rte_internal
void otx2_unregister_irq(struct rte_intr_handle *intr_handle,
rte_intr_callback_fn cb, void *data, unsigned int vec);
+__rte_internal
int otx2_disable_irqs(struct rte_intr_handle *intr_handle);
#endif /* _OTX2_IRQ_H_ */
diff --git a/drivers/common/octeontx2/otx2_mbox.h b/drivers/common/octeontx2/otx2_mbox.h
index 80778a0be..7fa4276e9 100644
--- a/drivers/common/octeontx2/otx2_mbox.h
+++ b/drivers/common/octeontx2/otx2_mbox.h
@@ -1617,19 +1617,25 @@ struct tim_enable_rsp {
uint32_t __otx2_io currentbucket;
};
+__rte_internal
const char *otx2_mbox_id2name(uint16_t id);
int otx2_mbox_id2size(uint16_t id);
void otx2_mbox_reset(struct otx2_mbox *mbox, int devid);
int otx2_mbox_init(struct otx2_mbox *mbox, uintptr_t hwbase, uintptr_t reg_base,
int direction, int ndevsi, uint64_t intr_offset);
void otx2_mbox_fini(struct otx2_mbox *mbox);
+__rte_internal
void otx2_mbox_msg_send(struct otx2_mbox *mbox, int devid);
+__rte_internal
int otx2_mbox_wait_for_rsp(struct otx2_mbox *mbox, int devid);
int otx2_mbox_wait_for_rsp_tmo(struct otx2_mbox *mbox, int devid, uint32_t tmo);
+__rte_internal
int otx2_mbox_get_rsp(struct otx2_mbox *mbox, int devid, void **msg);
+__rte_internal
int otx2_mbox_get_rsp_tmo(struct otx2_mbox *mbox, int devid, void **msg,
uint32_t tmo);
int otx2_mbox_get_availmem(struct otx2_mbox *mbox, int devid);
+__rte_internal
struct mbox_msghdr *otx2_mbox_alloc_msg_rsp(struct otx2_mbox *mbox, int devid,
int size, int size_rsp);
diff --git a/drivers/common/octeontx2/otx2_sec_idev.h b/drivers/common/octeontx2/otx2_sec_idev.h
index c681f5094..89cdaf66a 100644
--- a/drivers/common/octeontx2/otx2_sec_idev.h
+++ b/drivers/common/octeontx2/otx2_sec_idev.h
@@ -22,16 +22,22 @@ struct otx2_sec_idev_cfg {
rte_spinlock_t tx_cpt_lock;
};
+__rte_internal
uint8_t otx2_eth_dev_is_sec_capable(struct rte_eth_dev *eth_dev);
+__rte_internal
int otx2_sec_idev_cfg_init(int port_id);
+__rte_internal
int otx2_sec_idev_tx_cpt_qp_add(uint16_t port_id, struct otx2_cpt_qp *qp);
+__rte_internal
int otx2_sec_idev_tx_cpt_qp_remove(struct otx2_cpt_qp *qp);
+__rte_internal
int otx2_sec_idev_tx_cpt_qp_put(struct otx2_cpt_qp *qp);
+__rte_internal
int otx2_sec_idev_tx_cpt_qp_get(uint16_t port_id, struct otx2_cpt_qp **qp);
#endif /* _OTX2_SEC_IDEV_H_ */
diff --git a/drivers/common/octeontx2/rte_common_octeontx2_version.map b/drivers/common/octeontx2/rte_common_octeontx2_version.map
index 01279c339..7621a59ad 100644
--- a/drivers/common/octeontx2/rte_common_octeontx2_version.map
+++ b/drivers/common/octeontx2/rte_common_octeontx2_version.map
@@ -1,13 +1,15 @@
-DPDK_20.0 {
+INTERNAL {
global:
otx2_dev_active_vfs;
otx2_dev_fini;
otx2_dev_priv_init;
otx2_disable_irqs;
+ otx2_eth_dev_is_sec_capable;
otx2_intra_dev_get_cfg;
otx2_logtype_base;
otx2_logtype_dpi;
+ otx2_logtype_ep;
otx2_logtype_mbox;
otx2_logtype_nix;
otx2_logtype_npa;
@@ -27,26 +29,14 @@ DPDK_20.0 {
otx2_npa_pf_func_get;
otx2_npa_set_defaults;
otx2_register_irq;
- otx2_sso_pf_func_get;
- otx2_sso_pf_func_set;
- otx2_unregister_irq;
-
- local: *;
-};
-
-DPDK_21 {
- global:
-
- otx2_eth_dev_is_sec_capable;
otx2_sec_idev_cfg_init;
otx2_sec_idev_tx_cpt_qp_add;
- otx2_sec_idev_tx_cpt_qp_remove;
otx2_sec_idev_tx_cpt_qp_get;
otx2_sec_idev_tx_cpt_qp_put;
-} DPDK_20.0;
-
-EXPERIMENTAL {
- global:
+ otx2_sec_idev_tx_cpt_qp_remove;
+ otx2_sso_pf_func_get;
+ otx2_sso_pf_func_set;
+ otx2_unregister_irq;
- otx2_logtype_ep;
+ local: *;
};
--
2.17.1
^ permalink raw reply [flat|nested] 13+ messages in thread
* [dpdk-dev] [PATCH v2 2/2] mempool/octeontx2: move internal symbols to INTERNAL section
2020-05-13 1:04 ` [dpdk-dev] [PATCH v2 " pbhagavatula
@ 2020-05-13 1:04 ` pbhagavatula
2020-05-13 8:58 ` [dpdk-dev] [PATCH v2 1/2] common/octeontx2: " David Marchand
` (2 subsequent siblings)
3 siblings, 0 replies; 13+ messages in thread
From: pbhagavatula @ 2020-05-13 1:04 UTC (permalink / raw)
To: jerinj, aostruszka, Ray Kinsella, Neil Horman, Nithin Dabilpuram
Cc: thomas, dev, Pavan Nikhilesh
From: Pavan Nikhilesh <pbhagavatula@marvell.com>
Move the internal symbols to INTERNAL sections so that any
change in them is not reported as ABI breakage.
Signed-off-by: Pavan Nikhilesh <pbhagavatula@marvell.com>
---
devtools/libabigail.abignore | 4 +++-
drivers/mempool/octeontx2/otx2_mempool.h | 2 ++
drivers/mempool/octeontx2/rte_mempool_octeontx2_version.map | 2 +-
3 files changed, 6 insertions(+), 2 deletions(-)
diff --git a/devtools/libabigail.abignore b/devtools/libabigail.abignore
index dfe346db4..4a5e0cb01 100644
--- a/devtools/libabigail.abignore
+++ b/devtools/libabigail.abignore
@@ -49,6 +49,8 @@
[suppress_variable]
name = rte_crypto_aead_algorithm_strings
-; Ignore moving internal OCTEONTX2 stable functions to INTERNAL tag
+; Ignore moving OCTEONTX2 stable functions to INTERNAL tag
[suppress_file]
soname_regexp = librte_common_octeontx2.*
+[suppress_file]
+ soname_regexp = librte_mempool_octeontx2.*
diff --git a/drivers/mempool/octeontx2/otx2_mempool.h b/drivers/mempool/octeontx2/otx2_mempool.h
index adcc0db24..8aa548248 100644
--- a/drivers/mempool/octeontx2/otx2_mempool.h
+++ b/drivers/mempool/octeontx2/otx2_mempool.h
@@ -206,7 +206,9 @@ npa_lf_aura_op_range_set(uint64_t aura_handle, uint64_t start_iova,
}
/* NPA LF */
+__rte_internal
int otx2_npa_lf_init(struct rte_pci_device *pci_dev, void *otx2_dev);
+__rte_internal
int otx2_npa_lf_fini(void);
/* IRQ */
diff --git a/drivers/mempool/octeontx2/rte_mempool_octeontx2_version.map b/drivers/mempool/octeontx2/rte_mempool_octeontx2_version.map
index d4f81aed8..e6887ceb8 100644
--- a/drivers/mempool/octeontx2/rte_mempool_octeontx2_version.map
+++ b/drivers/mempool/octeontx2/rte_mempool_octeontx2_version.map
@@ -1,4 +1,4 @@
-DPDK_20.0 {
+INTERNAL {
global:
otx2_npa_lf_fini;
--
2.17.1
^ permalink raw reply [flat|nested] 13+ messages in thread
* Re: [dpdk-dev] [PATCH v2 1/2] common/octeontx2: move internal symbols to INTERNAL section
2020-05-13 1:04 ` [dpdk-dev] [PATCH v2 " pbhagavatula
2020-05-13 1:04 ` [dpdk-dev] [PATCH v2 2/2] mempool/octeontx2: " pbhagavatula
@ 2020-05-13 8:58 ` David Marchand
2020-05-13 9:11 ` Ray Kinsella
2020-05-13 9:55 ` [dpdk-dev] [PATCH v3 " pbhagavatula
2020-05-14 7:02 ` [dpdk-dev] [PATCH v2 1/2] common/octeontx2: " Ray Kinsella
3 siblings, 1 reply; 13+ messages in thread
From: David Marchand @ 2020-05-13 8:58 UTC (permalink / raw)
To: Pavan Nikhilesh, Ray Kinsella
Cc: Jerin Jacob Kollanukkaran, Andrzej Ostruszka, Neil Horman,
Nithin Dabilpuram, Anoob Joseph, Thomas Monjalon, dev,
Dodji Seketeli
On Wed, May 13, 2020 at 3:05 AM <pbhagavatula@marvell.com> wrote:
> diff --git a/devtools/libabigail.abignore b/devtools/libabigail.abignore
> index c9ee73cb3..dfe346db4 100644
> --- a/devtools/libabigail.abignore
> +++ b/devtools/libabigail.abignore
> @@ -48,3 +48,7 @@
> changed_enumerators = RTE_CRYPTO_AEAD_LIST_END
> [suppress_variable]
> name = rte_crypto_aead_algorithm_strings
> +
> +; Ignore moving internal OCTEONTX2 stable functions to INTERNAL tag
> +[suppress_file]
> + soname_regexp = librte_common_octeontx2.*
This syntax will work with libabigail (current master and 1.7), but
not with older versions like the 1.6 we use in Travis:
https://travis-ci.com/github/david-marchand/dpdk/jobs/333080901#L2387
mlx common drivers were handled with the file_name_regexp syntax.
https://git.dpdk.org/next/dpdk-next-net-mlx/diff/devtools/libabigail.abignore?id=196ca2dfc05df7685b86aba8cdd657b4aa401ffa
Rather than bump to 1.7 in Travis, my preference goes to using a
single syntax for those exceptions.
Ray, opinion?
--
David Marchand
^ permalink raw reply [flat|nested] 13+ messages in thread
* Re: [dpdk-dev] [PATCH v2 1/2] common/octeontx2: move internal symbols to INTERNAL section
2020-05-13 8:58 ` [dpdk-dev] [PATCH v2 1/2] common/octeontx2: " David Marchand
@ 2020-05-13 9:11 ` Ray Kinsella
2020-05-13 9:51 ` [dpdk-dev] [EXT] " Pavan Nikhilesh Bhagavatula
0 siblings, 1 reply; 13+ messages in thread
From: Ray Kinsella @ 2020-05-13 9:11 UTC (permalink / raw)
To: David Marchand, Pavan Nikhilesh
Cc: Jerin Jacob Kollanukkaran, Andrzej Ostruszka, Neil Horman,
Nithin Dabilpuram, Anoob Joseph, Thomas Monjalon, dev,
Dodji Seketeli
On 13/05/2020 09:58, David Marchand wrote:
> On Wed, May 13, 2020 at 3:05 AM <pbhagavatula@marvell.com> wrote:
>> diff --git a/devtools/libabigail.abignore b/devtools/libabigail.abignore
>> index c9ee73cb3..dfe346db4 100644
>> --- a/devtools/libabigail.abignore
>> +++ b/devtools/libabigail.abignore
>> @@ -48,3 +48,7 @@
>> changed_enumerators = RTE_CRYPTO_AEAD_LIST_END
>> [suppress_variable]
>> name = rte_crypto_aead_algorithm_strings
>> +
>> +; Ignore moving internal OCTEONTX2 stable functions to INTERNAL tag
>> +[suppress_file]
>> + soname_regexp = librte_common_octeontx2.*
>
> This syntax will work with libabigail (current master and 1.7), but
> not with older versions like the 1.6 we use in Travis:
> https://travis-ci.com/github/david-marchand/dpdk/jobs/333080901#L2387
>
> mlx common drivers were handled with the file_name_regexp syntax.
> https://git.dpdk.org/next/dpdk-next-net-mlx/diff/devtools/libabigail.abignore?id=196ca2dfc05df7685b86aba8cdd657b4aa401ffa
>
>
> Rather than bump to 1.7 in Travis, my preference goes to using a
> single syntax for those exceptions.
>
> Ray, opinion?
>
We need to aim for lowest common denominator support.
Ubuntu 20.04 shipped with 1.6
Ubuntu 20.04 shipped with 1.2 (however I suspect we will soon be depreciating this).
CentOS 8/7 EPEL both ship with 1.7
Supporting 1.6 is a reasonable choice.
Ray K
^ permalink raw reply [flat|nested] 13+ messages in thread
* Re: [dpdk-dev] [EXT] Re: [PATCH v2 1/2] common/octeontx2: move internal symbols to INTERNAL section
2020-05-13 9:11 ` Ray Kinsella
@ 2020-05-13 9:51 ` Pavan Nikhilesh Bhagavatula
0 siblings, 0 replies; 13+ messages in thread
From: Pavan Nikhilesh Bhagavatula @ 2020-05-13 9:51 UTC (permalink / raw)
To: Ray Kinsella, David Marchand
Cc: Jerin Jacob Kollanukkaran, Andrzej Ostruszka [C],
Neil Horman, Nithin Kumar Dabilpuram, Anoob Joseph,
Thomas Monjalon, dev, Dodji Seketeli
>On 13/05/2020 09:58, David Marchand wrote:
>> On Wed, May 13, 2020 at 3:05 AM <pbhagavatula@marvell.com>
>wrote:
>>> diff --git a/devtools/libabigail.abignore
>b/devtools/libabigail.abignore
>>> index c9ee73cb3..dfe346db4 100644
>>> --- a/devtools/libabigail.abignore
>>> +++ b/devtools/libabigail.abignore
>>> @@ -48,3 +48,7 @@
>>> changed_enumerators = RTE_CRYPTO_AEAD_LIST_END
>>> [suppress_variable]
>>> name = rte_crypto_aead_algorithm_strings
>>> +
>>> +; Ignore moving internal OCTEONTX2 stable functions to INTERNAL
>tag
>>> +[suppress_file]
>>> + soname_regexp = librte_common_octeontx2.*
>>
>> This syntax will work with libabigail (current master and 1.7), but
>> not with older versions like the 1.6 we use in Travis:
>> https://urldefense.proofpoint.com/v2/url?u=https-3A__travis-
>2Dci.com_github_david-2Dmarchand_dpdk_jobs_333080901-
>23L2387&d=DwICaQ&c=nKjWec2b6R0mOyPaz7xtfQ&r=E3SgYMjtKCMV
>sB-fmvgGV3o-
>g_fjLhk5Pupi9ijohpc&m=Bl3yyReQ1bAmiy1qgiGOuuvmirDgofnVWVRfs
>8oQVTU&s=vRaQQ-
>sQmxRD4NkHjWkdNPN32w9wZcGPikKCwyPwugE&e=
>>
>> mlx common drivers were handled with the file_name_regexp
>syntax.
>> https://urldefense.proofpoint.com/v2/url?u=https-
>3A__git.dpdk.org_next_dpdk-2Dnext-2Dnet-
>2Dmlx_diff_devtools_libabigail.abignore-3Fid-
>3D196ca2dfc05df7685b86aba8cdd657b4aa401ffa&d=DwICaQ&c=nKjWec
>2b6R0mOyPaz7xtfQ&r=E3SgYMjtKCMVsB-fmvgGV3o-
>g_fjLhk5Pupi9ijohpc&m=Bl3yyReQ1bAmiy1qgiGOuuvmirDgofnVWVRfs
>8oQVTU&s=LGDNXG_tOMpX42G1jkyVVVN58qL7AIAd_QrdfgKTjNk&e=
>>
>>
>> Rather than bump to 1.7 in Travis, my preference goes to using a
>> single syntax for those exceptions.
>>
>> Ray, opinion?
>>
>
>We need to aim for lowest common denominator support.
>Ubuntu 20.04 shipped with 1.6
>Ubuntu 20.04 shipped with 1.2 (however I suspect we will soon be
>depreciating this).
>
>CentOS 8/7 EPEL both ship with 1.7
>
>Supporting 1.6 is a reasonable choice.
Sure, I will send a v3.
Thanks,
Pavan.
>
>Ray K
^ permalink raw reply [flat|nested] 13+ messages in thread
* [dpdk-dev] [PATCH v3 1/2] common/octeontx2: move internal symbols to INTERNAL section
2020-05-13 1:04 ` [dpdk-dev] [PATCH v2 " pbhagavatula
2020-05-13 1:04 ` [dpdk-dev] [PATCH v2 2/2] mempool/octeontx2: " pbhagavatula
2020-05-13 8:58 ` [dpdk-dev] [PATCH v2 1/2] common/octeontx2: " David Marchand
@ 2020-05-13 9:55 ` pbhagavatula
2020-05-13 9:55 ` [dpdk-dev] [PATCH v3 2/2] mempool/octeontx2: " pbhagavatula
2020-05-14 7:02 ` [dpdk-dev] [PATCH v2 1/2] common/octeontx2: " Ray Kinsella
3 siblings, 1 reply; 13+ messages in thread
From: pbhagavatula @ 2020-05-13 9:55 UTC (permalink / raw)
To: jerinj, aostruszka, thomas, david.marchand, mdr, Neil Horman,
Nithin Dabilpuram, Anoob Joseph
Cc: dev, Pavan Nikhilesh
From: Pavan Nikhilesh <pbhagavatula@marvell.com>
Move the internal symbols to INTERNAL sections so that any
change in them is not reported as ABI breakage.
Signed-off-by: Pavan Nikhilesh <pbhagavatula@marvell.com>
---
v3 Changes:
- Use `file_name_regexp` insted of `soname_regexp` in supress list for
backward compatibility of libabigail.
v2 Changes:
- Sort version map alphabetically
- Add libabigail ignore tag for OCTEONTX2
devtools/libabigail.abignore | 4 +++
drivers/common/octeontx2/otx2_common.h | 8 ++++++
drivers/common/octeontx2/otx2_dev.h | 3 +++
drivers/common/octeontx2/otx2_irq.h | 3 +++
drivers/common/octeontx2/otx2_mbox.h | 6 +++++
drivers/common/octeontx2/otx2_sec_idev.h | 6 +++++
.../rte_common_octeontx2_version.map | 26 ++++++-------------
7 files changed, 38 insertions(+), 18 deletions(-)
diff --git a/devtools/libabigail.abignore b/devtools/libabigail.abignore
index c9ee73cb3..39a76fe9a 100644
--- a/devtools/libabigail.abignore
+++ b/devtools/libabigail.abignore
@@ -48,3 +48,7 @@
changed_enumerators = RTE_CRYPTO_AEAD_LIST_END
[suppress_variable]
name = rte_crypto_aead_algorithm_strings
+
+; Ignore moving internal OCTEONTX2 stable functions to INTERNAL tag
+[suppress_file]
+ file_name_regexp = ^librte_common_octeontx2\.
diff --git a/drivers/common/octeontx2/otx2_common.h b/drivers/common/octeontx2/otx2_common.h
index e62cdea07..174702687 100644
--- a/drivers/common/octeontx2/otx2_common.h
+++ b/drivers/common/octeontx2/otx2_common.h
@@ -62,13 +62,21 @@ struct otx2_idev_cfg {
};
};
+__rte_internal
struct otx2_idev_cfg *otx2_intra_dev_get_cfg(void);
+__rte_internal
void otx2_sso_pf_func_set(uint16_t sso_pf_func);
+__rte_internal
uint16_t otx2_sso_pf_func_get(void);
+__rte_internal
uint16_t otx2_npa_pf_func_get(void);
+__rte_internal
struct otx2_npa_lf *otx2_npa_lf_obj_get(void);
+__rte_internal
void otx2_npa_set_defaults(struct otx2_idev_cfg *idev);
+__rte_internal
int otx2_npa_lf_active(void *dev);
+__rte_internal
int otx2_npa_lf_obj_ref(void);
/* Log */
diff --git a/drivers/common/octeontx2/otx2_dev.h b/drivers/common/octeontx2/otx2_dev.h
index 13b75e118..cd4fe517d 100644
--- a/drivers/common/octeontx2/otx2_dev.h
+++ b/drivers/common/octeontx2/otx2_dev.h
@@ -94,6 +94,7 @@ struct otx2_dev {
OTX2_DEV;
};
+__rte_internal
int otx2_dev_priv_init(struct rte_pci_device *pci_dev, void *otx2_dev);
/* Common dev init and fini routines */
@@ -116,7 +117,9 @@ otx2_dev_init(struct rte_pci_device *pci_dev, void *otx2_dev)
return otx2_dev_priv_init(pci_dev, otx2_dev);
}
+__rte_internal
void otx2_dev_fini(struct rte_pci_device *pci_dev, void *otx2_dev);
+__rte_internal
int otx2_dev_active_vfs(void *otx2_dev);
#define RVU_PFVF_PF_SHIFT 10
diff --git a/drivers/common/octeontx2/otx2_irq.h b/drivers/common/octeontx2/otx2_irq.h
index 9d326276e..0683cf554 100644
--- a/drivers/common/octeontx2/otx2_irq.h
+++ b/drivers/common/octeontx2/otx2_irq.h
@@ -16,10 +16,13 @@ typedef struct {
uint64_t bits[MAX_VFPF_DWORD_BITS];
} otx2_intr_t;
+__rte_internal
int otx2_register_irq(struct rte_intr_handle *intr_handle,
rte_intr_callback_fn cb, void *data, unsigned int vec);
+__rte_internal
void otx2_unregister_irq(struct rte_intr_handle *intr_handle,
rte_intr_callback_fn cb, void *data, unsigned int vec);
+__rte_internal
int otx2_disable_irqs(struct rte_intr_handle *intr_handle);
#endif /* _OTX2_IRQ_H_ */
diff --git a/drivers/common/octeontx2/otx2_mbox.h b/drivers/common/octeontx2/otx2_mbox.h
index 80778a0be..7fa4276e9 100644
--- a/drivers/common/octeontx2/otx2_mbox.h
+++ b/drivers/common/octeontx2/otx2_mbox.h
@@ -1617,19 +1617,25 @@ struct tim_enable_rsp {
uint32_t __otx2_io currentbucket;
};
+__rte_internal
const char *otx2_mbox_id2name(uint16_t id);
int otx2_mbox_id2size(uint16_t id);
void otx2_mbox_reset(struct otx2_mbox *mbox, int devid);
int otx2_mbox_init(struct otx2_mbox *mbox, uintptr_t hwbase, uintptr_t reg_base,
int direction, int ndevsi, uint64_t intr_offset);
void otx2_mbox_fini(struct otx2_mbox *mbox);
+__rte_internal
void otx2_mbox_msg_send(struct otx2_mbox *mbox, int devid);
+__rte_internal
int otx2_mbox_wait_for_rsp(struct otx2_mbox *mbox, int devid);
int otx2_mbox_wait_for_rsp_tmo(struct otx2_mbox *mbox, int devid, uint32_t tmo);
+__rte_internal
int otx2_mbox_get_rsp(struct otx2_mbox *mbox, int devid, void **msg);
+__rte_internal
int otx2_mbox_get_rsp_tmo(struct otx2_mbox *mbox, int devid, void **msg,
uint32_t tmo);
int otx2_mbox_get_availmem(struct otx2_mbox *mbox, int devid);
+__rte_internal
struct mbox_msghdr *otx2_mbox_alloc_msg_rsp(struct otx2_mbox *mbox, int devid,
int size, int size_rsp);
diff --git a/drivers/common/octeontx2/otx2_sec_idev.h b/drivers/common/octeontx2/otx2_sec_idev.h
index c681f5094..89cdaf66a 100644
--- a/drivers/common/octeontx2/otx2_sec_idev.h
+++ b/drivers/common/octeontx2/otx2_sec_idev.h
@@ -22,16 +22,22 @@ struct otx2_sec_idev_cfg {
rte_spinlock_t tx_cpt_lock;
};
+__rte_internal
uint8_t otx2_eth_dev_is_sec_capable(struct rte_eth_dev *eth_dev);
+__rte_internal
int otx2_sec_idev_cfg_init(int port_id);
+__rte_internal
int otx2_sec_idev_tx_cpt_qp_add(uint16_t port_id, struct otx2_cpt_qp *qp);
+__rte_internal
int otx2_sec_idev_tx_cpt_qp_remove(struct otx2_cpt_qp *qp);
+__rte_internal
int otx2_sec_idev_tx_cpt_qp_put(struct otx2_cpt_qp *qp);
+__rte_internal
int otx2_sec_idev_tx_cpt_qp_get(uint16_t port_id, struct otx2_cpt_qp **qp);
#endif /* _OTX2_SEC_IDEV_H_ */
diff --git a/drivers/common/octeontx2/rte_common_octeontx2_version.map b/drivers/common/octeontx2/rte_common_octeontx2_version.map
index 01279c339..7621a59ad 100644
--- a/drivers/common/octeontx2/rte_common_octeontx2_version.map
+++ b/drivers/common/octeontx2/rte_common_octeontx2_version.map
@@ -1,13 +1,15 @@
-DPDK_20.0 {
+INTERNAL {
global:
otx2_dev_active_vfs;
otx2_dev_fini;
otx2_dev_priv_init;
otx2_disable_irqs;
+ otx2_eth_dev_is_sec_capable;
otx2_intra_dev_get_cfg;
otx2_logtype_base;
otx2_logtype_dpi;
+ otx2_logtype_ep;
otx2_logtype_mbox;
otx2_logtype_nix;
otx2_logtype_npa;
@@ -27,26 +29,14 @@ DPDK_20.0 {
otx2_npa_pf_func_get;
otx2_npa_set_defaults;
otx2_register_irq;
- otx2_sso_pf_func_get;
- otx2_sso_pf_func_set;
- otx2_unregister_irq;
-
- local: *;
-};
-
-DPDK_21 {
- global:
-
- otx2_eth_dev_is_sec_capable;
otx2_sec_idev_cfg_init;
otx2_sec_idev_tx_cpt_qp_add;
- otx2_sec_idev_tx_cpt_qp_remove;
otx2_sec_idev_tx_cpt_qp_get;
otx2_sec_idev_tx_cpt_qp_put;
-} DPDK_20.0;
-
-EXPERIMENTAL {
- global:
+ otx2_sec_idev_tx_cpt_qp_remove;
+ otx2_sso_pf_func_get;
+ otx2_sso_pf_func_set;
+ otx2_unregister_irq;
- otx2_logtype_ep;
+ local: *;
};
--
2.17.1
^ permalink raw reply [flat|nested] 13+ messages in thread
* [dpdk-dev] [PATCH v3 2/2] mempool/octeontx2: move internal symbols to INTERNAL section
2020-05-13 9:55 ` [dpdk-dev] [PATCH v3 " pbhagavatula
@ 2020-05-13 9:55 ` pbhagavatula
0 siblings, 0 replies; 13+ messages in thread
From: pbhagavatula @ 2020-05-13 9:55 UTC (permalink / raw)
To: jerinj, aostruszka, thomas, david.marchand, mdr, Neil Horman,
Nithin Dabilpuram
Cc: dev, Pavan Nikhilesh
From: Pavan Nikhilesh <pbhagavatula@marvell.com>
Move the internal symbols to INTERNAL sections so that any
change in them is not reported as ABI breakage.
Signed-off-by: Pavan Nikhilesh <pbhagavatula@marvell.com>
---
devtools/libabigail.abignore | 4 +++-
drivers/mempool/octeontx2/otx2_mempool.h | 2 ++
drivers/mempool/octeontx2/rte_mempool_octeontx2_version.map | 2 +-
3 files changed, 6 insertions(+), 2 deletions(-)
diff --git a/devtools/libabigail.abignore b/devtools/libabigail.abignore
index 39a76fe9a..e2ca73db2 100644
--- a/devtools/libabigail.abignore
+++ b/devtools/libabigail.abignore
@@ -49,6 +49,8 @@
[suppress_variable]
name = rte_crypto_aead_algorithm_strings
-; Ignore moving internal OCTEONTX2 stable functions to INTERNAL tag
+; Ignore moving OCTEONTX2 stable functions to INTERNAL tag
[suppress_file]
file_name_regexp = ^librte_common_octeontx2\.
+[suppress_file]
+ file_name_regexp = ^librte_mempool_octeontx2\.
diff --git a/drivers/mempool/octeontx2/otx2_mempool.h b/drivers/mempool/octeontx2/otx2_mempool.h
index adcc0db24..8aa548248 100644
--- a/drivers/mempool/octeontx2/otx2_mempool.h
+++ b/drivers/mempool/octeontx2/otx2_mempool.h
@@ -206,7 +206,9 @@ npa_lf_aura_op_range_set(uint64_t aura_handle, uint64_t start_iova,
}
/* NPA LF */
+__rte_internal
int otx2_npa_lf_init(struct rte_pci_device *pci_dev, void *otx2_dev);
+__rte_internal
int otx2_npa_lf_fini(void);
/* IRQ */
diff --git a/drivers/mempool/octeontx2/rte_mempool_octeontx2_version.map b/drivers/mempool/octeontx2/rte_mempool_octeontx2_version.map
index d4f81aed8..e6887ceb8 100644
--- a/drivers/mempool/octeontx2/rte_mempool_octeontx2_version.map
+++ b/drivers/mempool/octeontx2/rte_mempool_octeontx2_version.map
@@ -1,4 +1,4 @@
-DPDK_20.0 {
+INTERNAL {
global:
otx2_npa_lf_fini;
--
2.17.1
^ permalink raw reply [flat|nested] 13+ messages in thread
* Re: [dpdk-dev] [PATCH v2 1/2] common/octeontx2: move internal symbols to INTERNAL section
2020-05-13 1:04 ` [dpdk-dev] [PATCH v2 " pbhagavatula
` (2 preceding siblings ...)
2020-05-13 9:55 ` [dpdk-dev] [PATCH v3 " pbhagavatula
@ 2020-05-14 7:02 ` Ray Kinsella
2020-05-14 12:50 ` David Marchand
3 siblings, 1 reply; 13+ messages in thread
From: Ray Kinsella @ 2020-05-14 7:02 UTC (permalink / raw)
To: pbhagavatula, jerinj, aostruszka, Neil Horman, Nithin Dabilpuram,
Anoob Joseph
Cc: thomas, dev
On 13/05/2020 02:04, pbhagavatula@marvell.com wrote:
> From: Pavan Nikhilesh <pbhagavatula@marvell.com>
>
> Move the internal symbols to INTERNAL sections so that any
> change in them is not reported as ABI breakage.
>
> Signed-off-by: Pavan Nikhilesh <pbhagavatula@marvell.com>
> ---
> v2 Changes:
> - Sort version map alphabetically
> - Add libabigail ignore tag for OCTEONTX2
>
> devtools/libabigail.abignore | 4 +++
> drivers/common/octeontx2/otx2_common.h | 8 ++++++
> drivers/common/octeontx2/otx2_dev.h | 3 +++
> drivers/common/octeontx2/otx2_irq.h | 3 +++
> drivers/common/octeontx2/otx2_mbox.h | 6 +++++
> drivers/common/octeontx2/otx2_sec_idev.h | 6 +++++
> .../rte_common_octeontx2_version.map | 26 ++++++-------------
> 7 files changed, 38 insertions(+), 18 deletions(-)
>
> diff --git a/devtools/libabigail.abignore b/devtools/libabigail.abignore
> index c9ee73cb3..dfe346db4 100644
> --- a/devtools/libabigail.abignore
> +++ b/devtools/libabigail.abignore
> @@ -48,3 +48,7 @@
> changed_enumerators = RTE_CRYPTO_AEAD_LIST_END
> [suppress_variable]
> name = rte_crypto_aead_algorithm_strings
> +
> +; Ignore moving internal OCTEONTX2 stable functions to INTERNAL tag
> +[suppress_file]
> + soname_regexp = librte_common_octeontx2.*
> diff --git a/drivers/common/octeontx2/otx2_common.h b/drivers/common/octeontx2/otx2_common.h
> index e62cdea07..174702687 100644
> --- a/drivers/common/octeontx2/otx2_common.h
> +++ b/drivers/common/octeontx2/otx2_common.h
> @@ -62,13 +62,21 @@ struct otx2_idev_cfg {
> };
> };
>
> +__rte_internal
> struct otx2_idev_cfg *otx2_intra_dev_get_cfg(void);
> +__rte_internal
> void otx2_sso_pf_func_set(uint16_t sso_pf_func);
> +__rte_internal
> uint16_t otx2_sso_pf_func_get(void);
> +__rte_internal
> uint16_t otx2_npa_pf_func_get(void);
> +__rte_internal
> struct otx2_npa_lf *otx2_npa_lf_obj_get(void);
> +__rte_internal
> void otx2_npa_set_defaults(struct otx2_idev_cfg *idev);
> +__rte_internal
> int otx2_npa_lf_active(void *dev);
> +__rte_internal
> int otx2_npa_lf_obj_ref(void);
>
> /* Log */
> diff --git a/drivers/common/octeontx2/otx2_dev.h b/drivers/common/octeontx2/otx2_dev.h
> index 13b75e118..cd4fe517d 100644
> --- a/drivers/common/octeontx2/otx2_dev.h
> +++ b/drivers/common/octeontx2/otx2_dev.h
> @@ -94,6 +94,7 @@ struct otx2_dev {
> OTX2_DEV;
> };
>
> +__rte_internal
> int otx2_dev_priv_init(struct rte_pci_device *pci_dev, void *otx2_dev);
>
> /* Common dev init and fini routines */
> @@ -116,7 +117,9 @@ otx2_dev_init(struct rte_pci_device *pci_dev, void *otx2_dev)
> return otx2_dev_priv_init(pci_dev, otx2_dev);
> }
>
> +__rte_internal
> void otx2_dev_fini(struct rte_pci_device *pci_dev, void *otx2_dev);
> +__rte_internal
> int otx2_dev_active_vfs(void *otx2_dev);
>
> #define RVU_PFVF_PF_SHIFT 10
> diff --git a/drivers/common/octeontx2/otx2_irq.h b/drivers/common/octeontx2/otx2_irq.h
> index 9d326276e..0683cf554 100644
> --- a/drivers/common/octeontx2/otx2_irq.h
> +++ b/drivers/common/octeontx2/otx2_irq.h
> @@ -16,10 +16,13 @@ typedef struct {
> uint64_t bits[MAX_VFPF_DWORD_BITS];
> } otx2_intr_t;
>
> +__rte_internal
> int otx2_register_irq(struct rte_intr_handle *intr_handle,
> rte_intr_callback_fn cb, void *data, unsigned int vec);
> +__rte_internal
> void otx2_unregister_irq(struct rte_intr_handle *intr_handle,
> rte_intr_callback_fn cb, void *data, unsigned int vec);
> +__rte_internal
> int otx2_disable_irqs(struct rte_intr_handle *intr_handle);
>
> #endif /* _OTX2_IRQ_H_ */
> diff --git a/drivers/common/octeontx2/otx2_mbox.h b/drivers/common/octeontx2/otx2_mbox.h
> index 80778a0be..7fa4276e9 100644
> --- a/drivers/common/octeontx2/otx2_mbox.h
> +++ b/drivers/common/octeontx2/otx2_mbox.h
> @@ -1617,19 +1617,25 @@ struct tim_enable_rsp {
> uint32_t __otx2_io currentbucket;
> };
>
> +__rte_internal
> const char *otx2_mbox_id2name(uint16_t id);
> int otx2_mbox_id2size(uint16_t id);
> void otx2_mbox_reset(struct otx2_mbox *mbox, int devid);
> int otx2_mbox_init(struct otx2_mbox *mbox, uintptr_t hwbase, uintptr_t reg_base,
> int direction, int ndevsi, uint64_t intr_offset);
> void otx2_mbox_fini(struct otx2_mbox *mbox);
> +__rte_internal
> void otx2_mbox_msg_send(struct otx2_mbox *mbox, int devid);
> +__rte_internal
> int otx2_mbox_wait_for_rsp(struct otx2_mbox *mbox, int devid);
> int otx2_mbox_wait_for_rsp_tmo(struct otx2_mbox *mbox, int devid, uint32_t tmo);
> +__rte_internal
> int otx2_mbox_get_rsp(struct otx2_mbox *mbox, int devid, void **msg);
> +__rte_internal
> int otx2_mbox_get_rsp_tmo(struct otx2_mbox *mbox, int devid, void **msg,
> uint32_t tmo);
> int otx2_mbox_get_availmem(struct otx2_mbox *mbox, int devid);
> +__rte_internal
> struct mbox_msghdr *otx2_mbox_alloc_msg_rsp(struct otx2_mbox *mbox, int devid,
> int size, int size_rsp);
>
> diff --git a/drivers/common/octeontx2/otx2_sec_idev.h b/drivers/common/octeontx2/otx2_sec_idev.h
> index c681f5094..89cdaf66a 100644
> --- a/drivers/common/octeontx2/otx2_sec_idev.h
> +++ b/drivers/common/octeontx2/otx2_sec_idev.h
> @@ -22,16 +22,22 @@ struct otx2_sec_idev_cfg {
> rte_spinlock_t tx_cpt_lock;
> };
>
> +__rte_internal
> uint8_t otx2_eth_dev_is_sec_capable(struct rte_eth_dev *eth_dev);
>
> +__rte_internal
> int otx2_sec_idev_cfg_init(int port_id);
>
> +__rte_internal
> int otx2_sec_idev_tx_cpt_qp_add(uint16_t port_id, struct otx2_cpt_qp *qp);
>
> +__rte_internal
> int otx2_sec_idev_tx_cpt_qp_remove(struct otx2_cpt_qp *qp);
>
> +__rte_internal
> int otx2_sec_idev_tx_cpt_qp_put(struct otx2_cpt_qp *qp);
>
> +__rte_internal
> int otx2_sec_idev_tx_cpt_qp_get(uint16_t port_id, struct otx2_cpt_qp **qp);
>
> #endif /* _OTX2_SEC_IDEV_H_ */
> diff --git a/drivers/common/octeontx2/rte_common_octeontx2_version.map b/drivers/common/octeontx2/rte_common_octeontx2_version.map
> index 01279c339..7621a59ad 100644
> --- a/drivers/common/octeontx2/rte_common_octeontx2_version.map
> +++ b/drivers/common/octeontx2/rte_common_octeontx2_version.map
> @@ -1,13 +1,15 @@
> -DPDK_20.0 {
> +INTERNAL {
> global:
>
> otx2_dev_active_vfs;
> otx2_dev_fini;
> otx2_dev_priv_init;
> otx2_disable_irqs;
> + otx2_eth_dev_is_sec_capable;
> otx2_intra_dev_get_cfg;
> otx2_logtype_base;
> otx2_logtype_dpi;
> + otx2_logtype_ep;
> otx2_logtype_mbox;
> otx2_logtype_nix;
> otx2_logtype_npa;
> @@ -27,26 +29,14 @@ DPDK_20.0 {
> otx2_npa_pf_func_get;
> otx2_npa_set_defaults;
> otx2_register_irq;
> - otx2_sso_pf_func_get;
> - otx2_sso_pf_func_set;
> - otx2_unregister_irq;
> -
> - local: *;
> -};
> -
> -DPDK_21 {
> - global:
> -
> - otx2_eth_dev_is_sec_capable;
> otx2_sec_idev_cfg_init;
> otx2_sec_idev_tx_cpt_qp_add;
> - otx2_sec_idev_tx_cpt_qp_remove;
> otx2_sec_idev_tx_cpt_qp_get;
> otx2_sec_idev_tx_cpt_qp_put;
> -} DPDK_20.0;
> -
> -EXPERIMENTAL {
> - global:
> + otx2_sec_idev_tx_cpt_qp_remove;
> + otx2_sso_pf_func_get;
> + otx2_sso_pf_func_set;
> + otx2_unregister_irq;
>
> - otx2_logtype_ep;
> + local: *;
> };
> --
> 2.17.1
>
Acked-by: Ray Kinsella <mdr@ashroe.eu>
^ permalink raw reply [flat|nested] 13+ messages in thread
* Re: [dpdk-dev] [PATCH v2 1/2] common/octeontx2: move internal symbols to INTERNAL section
2020-05-14 7:02 ` [dpdk-dev] [PATCH v2 1/2] common/octeontx2: " Ray Kinsella
@ 2020-05-14 12:50 ` David Marchand
2020-05-18 15:51 ` David Marchand
0 siblings, 1 reply; 13+ messages in thread
From: David Marchand @ 2020-05-14 12:50 UTC (permalink / raw)
To: Ray Kinsella
Cc: Pavan Nikhilesh, Jerin Jacob Kollanukkaran, Andrzej Ostruszka,
Neil Horman, Nithin Dabilpuram, Anoob Joseph, Thomas Monjalon,
dev
On Thu, May 14, 2020 at 9:02 AM Ray Kinsella <mdr@ashroe.eu> wrote:
> > diff --git a/devtools/libabigail.abignore b/devtools/libabigail.abignore
> > index c9ee73cb3..dfe346db4 100644
> > --- a/devtools/libabigail.abignore
> > +++ b/devtools/libabigail.abignore
> > @@ -48,3 +48,7 @@
> > changed_enumerators = RTE_CRYPTO_AEAD_LIST_END
> > [suppress_variable]
> > name = rte_crypto_aead_algorithm_strings
> > +
> > +; Ignore moving internal OCTEONTX2 stable functions to INTERNAL tag
> > +[suppress_file]
> > + soname_regexp = librte_common_octeontx2.*
[snip]
> Acked-by: Ray Kinsella <mdr@ashroe.eu>
This ack is on the v2 of the patch, but seeing the exchanges and the
chronology, I will take this as a ack on v3.
--
David Marchand
^ permalink raw reply [flat|nested] 13+ messages in thread
* Re: [dpdk-dev] [PATCH v2 1/2] common/octeontx2: move internal symbols to INTERNAL section
2020-05-14 12:50 ` David Marchand
@ 2020-05-18 15:51 ` David Marchand
0 siblings, 0 replies; 13+ messages in thread
From: David Marchand @ 2020-05-18 15:51 UTC (permalink / raw)
To: Pavan Nikhilesh
Cc: Jerin Jacob Kollanukkaran, Andrzej Ostruszka, Neil Horman,
Nithin Dabilpuram, Anoob Joseph, Thomas Monjalon, dev,
Ray Kinsella
On Thu, May 14, 2020 at 2:50 PM David Marchand
<david.marchand@redhat.com> wrote:
>
> On Thu, May 14, 2020 at 9:02 AM Ray Kinsella <mdr@ashroe.eu> wrote:
> > > diff --git a/devtools/libabigail.abignore b/devtools/libabigail.abignore
> > > index c9ee73cb3..dfe346db4 100644
> > > --- a/devtools/libabigail.abignore
> > > +++ b/devtools/libabigail.abignore
> > > @@ -48,3 +48,7 @@
> > > changed_enumerators = RTE_CRYPTO_AEAD_LIST_END
> > > [suppress_variable]
> > > name = rte_crypto_aead_algorithm_strings
> > > +
> > > +; Ignore moving internal OCTEONTX2 stable functions to INTERNAL tag
> > > +[suppress_file]
> > > + soname_regexp = librte_common_octeontx2.*
>
> [snip]
>
> > Acked-by: Ray Kinsella <mdr@ashroe.eu>
>
> This ack is on the v2 of the patch, but seeing the exchanges and the
> chronology, I will take this as a ack on v3.
Thanks, series applied.
--
David Marchand
^ permalink raw reply [flat|nested] 13+ messages in thread
end of thread, other threads:[~2020-05-18 15:51 UTC | newest]
Thread overview: 13+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2020-05-11 10:00 [dpdk-dev] [PATCH 1/2] common/octeontx2: move internal symbols to INTERNAL section pbhagavatula
2020-05-11 10:00 ` [dpdk-dev] [PATCH 2/2] mempool/octeontx2: " pbhagavatula
2020-05-11 14:45 ` [dpdk-dev] [PATCH 1/2] common/octeontx2: " Thomas Monjalon
2020-05-13 1:04 ` [dpdk-dev] [PATCH v2 " pbhagavatula
2020-05-13 1:04 ` [dpdk-dev] [PATCH v2 2/2] mempool/octeontx2: " pbhagavatula
2020-05-13 8:58 ` [dpdk-dev] [PATCH v2 1/2] common/octeontx2: " David Marchand
2020-05-13 9:11 ` Ray Kinsella
2020-05-13 9:51 ` [dpdk-dev] [EXT] " Pavan Nikhilesh Bhagavatula
2020-05-13 9:55 ` [dpdk-dev] [PATCH v3 " pbhagavatula
2020-05-13 9:55 ` [dpdk-dev] [PATCH v3 2/2] mempool/octeontx2: " pbhagavatula
2020-05-14 7:02 ` [dpdk-dev] [PATCH v2 1/2] common/octeontx2: " Ray Kinsella
2020-05-14 12:50 ` David Marchand
2020-05-18 15:51 ` David Marchand
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).