[v1,2/5] bus: use lcore accessor functions

Message ID 20190408182510.16078-3-stephen@networkplumber.org (mailing list archive)
State Superseded, archived
Delegated to: Thomas Monjalon
Headers
Series make lcore_config internal |

Checks

Context Check Description
ci/checkpatch success coding style OK
ci/Intel-compilation success Compilation OK

Commit Message

Stephen Hemminger April 8, 2019, 6:25 p.m. UTC
  Fix the bus logic in fslmc and dpaa drivers to use the new
accessor functions.

Signed-off-by: Stephen Hemminger <stephen@networkplumber.org>
---
 drivers/bus/dpaa/dpaa_bus.c              | 6 ++++--
 drivers/bus/fslmc/portal/dpaa2_hw_dpio.c | 4 +++-
 2 files changed, 7 insertions(+), 3 deletions(-)
  

Comments

David Marchand April 9, 2019, 7:43 a.m. UTC | #1
On Mon, Apr 8, 2019 at 8:25 PM Stephen Hemminger <stephen@networkplumber.org>
wrote:

> Fix the bus logic in fslmc and dpaa drivers to use the new
> accessor functions.
>
> Signed-off-by: Stephen Hemminger <stephen@networkplumber.org>
> ---
>  drivers/bus/dpaa/dpaa_bus.c              | 6 ++++--
>  drivers/bus/fslmc/portal/dpaa2_hw_dpio.c | 4 +++-
>  2 files changed, 7 insertions(+), 3 deletions(-)
>
> diff --git a/drivers/bus/dpaa/dpaa_bus.c b/drivers/bus/dpaa/dpaa_bus.c
> index ac20eccd53c1..08c822781d9d 100644
> --- a/drivers/bus/dpaa/dpaa_bus.c
> +++ b/drivers/bus/dpaa/dpaa_bus.c
> @@ -254,6 +254,7 @@ int rte_dpaa_portal_init(void *arg)
>         unsigned int cpu, lcore = rte_lcore_id();
>         int ret;
>         struct dpaa_portal *dpaa_io_portal;
> +       rte_cpuset_t cpuset;
>
>         BUS_INIT_FUNC_TRACE();
>
> @@ -263,12 +264,13 @@ int rte_dpaa_portal_init(void *arg)
>                 if (lcore >= RTE_MAX_LCORE)
>                         return -1;
>
> -       cpu = lcore_config[lcore].core_id;
> +       cpu = rte_lcore_to_cpu_id(lcore);
>
>         /* Set CPU affinity for this thread.*/
>         id = pthread_self();
> +       cpuset = rte_lcore_cpuset(lcore);
>         ret = pthread_setaffinity_np(id, sizeof(cpu_set_t),
> -                       &lcore_config[lcore].cpuset);
> +                                    &cpuset);
>         if (ret) {
>                 DPAA_BUS_LOG(ERR, "pthread_setaffinity_np failed on core
> :%u"
>                              " (lcore=%u) with ret: %d", cpu, lcore, ret);
> diff --git a/drivers/bus/fslmc/portal/dpaa2_hw_dpio.c
> b/drivers/bus/fslmc/portal/dpaa2_hw_dpio.c
> index 7bcbde840e63..8efb24af5c6a 100644
> --- a/drivers/bus/fslmc/portal/dpaa2_hw_dpio.c
> +++ b/drivers/bus/fslmc/portal/dpaa2_hw_dpio.c
> @@ -366,7 +366,9 @@ dpaa2_check_lcore_cpuset(void)
>
>         for (lcore_id = 0; lcore_id < RTE_MAX_LCORE; lcore_id++) {
>                 for (i = 0; i < RTE_MAX_LCORE; i++) {
> -                       if (CPU_ISSET(i, &lcore_config[lcore_id].cpuset)) {
> +                       rte_cpuset_t cpuset = rte_lcore_cpuset(lcore_id);
> +
> +                       if (CPU_ISSET(i, &cpuset)) {
>                                 RTE_LOG(DEBUG, EAL, "lcore id = %u
> cpu=%u\n",
>                                         lcore_id, i);
>                                 if (dpaa2_cpu[lcore_id] != 0xffffffff) {
> --
> 2.17.1
>
>
Reviewed-by: David Marchand <david.marchand@redhat.com>
  

Patch

diff --git a/drivers/bus/dpaa/dpaa_bus.c b/drivers/bus/dpaa/dpaa_bus.c
index ac20eccd53c1..08c822781d9d 100644
--- a/drivers/bus/dpaa/dpaa_bus.c
+++ b/drivers/bus/dpaa/dpaa_bus.c
@@ -254,6 +254,7 @@  int rte_dpaa_portal_init(void *arg)
 	unsigned int cpu, lcore = rte_lcore_id();
 	int ret;
 	struct dpaa_portal *dpaa_io_portal;
+	rte_cpuset_t cpuset;
 
 	BUS_INIT_FUNC_TRACE();
 
@@ -263,12 +264,13 @@  int rte_dpaa_portal_init(void *arg)
 		if (lcore >= RTE_MAX_LCORE)
 			return -1;
 
-	cpu = lcore_config[lcore].core_id;
+	cpu = rte_lcore_to_cpu_id(lcore);
 
 	/* Set CPU affinity for this thread.*/
 	id = pthread_self();
+	cpuset = rte_lcore_cpuset(lcore);
 	ret = pthread_setaffinity_np(id, sizeof(cpu_set_t),
-			&lcore_config[lcore].cpuset);
+				     &cpuset);
 	if (ret) {
 		DPAA_BUS_LOG(ERR, "pthread_setaffinity_np failed on core :%u"
 			     " (lcore=%u) with ret: %d", cpu, lcore, ret);
diff --git a/drivers/bus/fslmc/portal/dpaa2_hw_dpio.c b/drivers/bus/fslmc/portal/dpaa2_hw_dpio.c
index 7bcbde840e63..8efb24af5c6a 100644
--- a/drivers/bus/fslmc/portal/dpaa2_hw_dpio.c
+++ b/drivers/bus/fslmc/portal/dpaa2_hw_dpio.c
@@ -366,7 +366,9 @@  dpaa2_check_lcore_cpuset(void)
 
 	for (lcore_id = 0; lcore_id < RTE_MAX_LCORE; lcore_id++) {
 		for (i = 0; i < RTE_MAX_LCORE; i++) {
-			if (CPU_ISSET(i, &lcore_config[lcore_id].cpuset)) {
+			rte_cpuset_t cpuset = rte_lcore_cpuset(lcore_id);
+
+			if (CPU_ISSET(i, &cpuset)) {
 				RTE_LOG(DEBUG, EAL, "lcore id = %u cpu=%u\n",
 					lcore_id, i);
 				if (dpaa2_cpu[lcore_id] != 0xffffffff) {