[dpdk-dev] [PATCH v3] eal: rename state values in rte_lcore_state
David Marchand
david.marchand at redhat.com
Wed Apr 3 13:59:58 CEST 2019
On Tue, Apr 2, 2019 at 10:54 PM Stephen Hemminger <
stephen at networkplumber.org> wrote:
> C language does not really treat enum's as first class symbols.
> The values in an enum live in a global namespace. That means if
> DPDK defines "RUNNING" it can't be used by another enum in an
> application using DPDK.
>
> To solve this add a prefix "RTE_LCORE_" to the enum values, and
> make them grammatically consistent.
>
> Also, simplify the inline thread_is_running() which is copied
> in softnic and ip_pipeline.
>
> Signed-off-by: Stephen Hemminger <stephen at networkplumber.org>
> ---
> v3 - fix BSD and bond driver usage of state
>
>
>
> diff --git a/examples/bond/main.c b/examples/bond/main.c
> index ef86194fff4a..12123a4b16d8 100644
> --- a/examples/bond/main.c
> +++ b/examples/bond/main.c
> @@ -527,7 +527,7 @@ static void cmd_start_parsed(__attribute__((unused))
> void *parsed_result,
>
> rte_spinlock_trylock(&global_flag_stru_p->lock);
> if (global_flag_stru_p->LcoreMainIsRunning == 0) {
> - if (lcore_config[global_flag_stru_p->LcoreMainCore].state
> != WAIT) {
> + if (lcore_config[global_flag_stru_p->LcoreMainCore].state
> != RTE_LCORE_WAIT) {
> rte_spinlock_unlock(&global_flag_stru_p->lock);
> return;
> }
> @@ -796,7 +796,7 @@ main(int argc, char *argv[])
>
> /* check state of lcores */
> RTE_LCORE_FOREACH_SLAVE(slave_core_id) {
> - if (lcore_config[slave_core_id].state != WAIT)
> + if (lcore_config[slave_core_id].state != RTE_LCORE_WAIT)
> return -EBUSY;
> }
> /* start lcore main on core != master_core - ARP response thread */
>
diff --git a/lib/librte_eal/freebsd/eal/eal.c
> b/lib/librte_eal/freebsd/eal/eal.c
> index 790c6afa7050..aae4243486bd 100644
> --- a/lib/librte_eal/freebsd/eal/eal.c
> +++ b/lib/librte_eal/freebsd/eal/eal.c
> @@ -784,7 +784,7 @@ rte_eal_init(int argc, char **argv)
> if (pipe(lcore_config[i].pipe_slave2master) < 0)
> rte_panic("Cannot create pipe\n");
>
> - lcore_config[i].state = WAIT;
> + lcore_config[i].state = RTE_LCORE_WAIT;
>
> /* create a thread for each lcore */
> ret = pthread_create(&lcore_config[i].thread_id, NULL,
>
s/RTE_LCORE_WAIT/RTE_LCORE_WAITING/g
--
David Marchand
More information about the dev
mailing list