26/06/2018 12:53, Anatoly Burakov:
> From: Jianfeng Tan <jianfeng....@intel.com>
> 
> Next commit will make asynchronous IPC requests rely on alarm API,
> which in turn relies on interrupts to work. Therefore, move the EAL
> interrupt initialization before IPC initialization to avoid breaking
> IPC in the next commit.
> 
> Signed-off-by: Jianfeng Tan <jianfeng....@intel.com>
> Signed-off-by: Anatoly Burakov <anatoly.bura...@intel.com>
> ---
> --- a/lib/librte_eal/linuxapp/eal/eal.c
> +++ b/lib/librte_eal/linuxapp/eal/eal.c
> @@ -839,6 +839,11 @@ rte_eal_init(int argc, char **argv)
>  
>       rte_config_init();
>  
> +     if (rte_eal_intr_init() < 0) {
> +             rte_eal_init_alert("Cannot init interrupt-handling thread\n");
> +             return -1;
> +     }
> +
>       /* Put mp channel init before bus scan so that we can init the vdev
>        * bus through mp channel in the secondary process before the bus scan.
>        */
> @@ -968,11 +973,6 @@ rte_eal_init(int argc, char **argv)
>               rte_config.master_lcore, (int)thread_id, cpuset,
>               ret == 0 ? "" : "...");
>  
> -     if (rte_eal_intr_init() < 0) {
> -             rte_eal_init_alert("Cannot init interrupt-handling thread\n");
> -             return -1;
> -     }
> -
>       RTE_LCORE_FOREACH_SLAVE(i) {

I am almost sure it will bring regressions.

Please think again about the consequences of initializing interrupt thread
before affinity setting, memory init, device init.

Opinions / ideas from anyone?


Reply via email to