]> git.droids-corp.org - dpdk.git/commitdiff
eal: bring forward init of interrupt handling
authorJianfeng Tan <jianfeng.tan@intel.com>
Tue, 26 Jun 2018 10:53:16 +0000 (11:53 +0100)
committerThomas Monjalon <thomas@monjalon.net>
Fri, 13 Jul 2018 10:41:15 +0000 (12:41 +0200)
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.tan@intel.com>
Signed-off-by: Anatoly Burakov <anatoly.burakov@intel.com>
lib/librte_eal/bsdapp/eal/eal.c
lib/librte_eal/linuxapp/eal/eal.c

index dc279542d0acfb0745ef06e77bcf1938a9e13bb7..f70f7aecdd40d584f631c74eada7f363d2478e4e 100644 (file)
@@ -625,6 +625,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.
         */
@@ -713,11 +718,6 @@ rte_eal_init(int argc, char **argv)
                return -1;
        }
 
-       if (rte_eal_intr_init() < 0) {
-               rte_eal_init_alert("Cannot init interrupt-handling thread\n");
-               return -1;
-       }
-
        if (rte_eal_timer_init() < 0) {
                rte_eal_init_alert("Cannot init HPET or TSC timers\n");
                rte_errno = ENOTSUP;
index ec7cea55d3ded7f0efb530594e766e9b2ee4b7c3..3c0449c64e1c0aaa3df9a680b947aa3369114231 100644 (file)
@@ -853,6 +853,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.
         */
@@ -982,11 +987,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) {
 
                /*