From mboxrd@z Thu Jan 1 00:00:00 1970 From: Yong Liu Subject: [PATCH] app/test-pmd: fix rte_pci_tailq not initialized before used Date: Wed, 11 Mar 2015 16:43:56 +0800 Message-ID: <1426063436-15939-1-git-send-email-yong.liu@intel.com> To: dev-VfR2kkLFssw@public.gmane.org Return-path: List-Id: patches and discussions about DPDK List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces-VfR2kkLFssw@public.gmane.org Sender: "dev" Function rte_eal_pci_init will cast pci resource list and used for insert probed device later. But all tailq initialized in function rte_eal_tailqs_init, so rte_eal_pci_init must be called after it. Signed-off-by: Marvin Liu diff --git a/lib/librte_eal/linuxapp/eal/eal.c b/lib/librte_eal/linuxapp/eal/eal.c index bd770cf..576f9f8 100644 --- a/lib/librte_eal/linuxapp/eal/eal.c +++ b/lib/librte_eal/linuxapp/eal/eal.c @@ -755,9 +755,6 @@ rte_eal_init(int argc, char **argv) rte_config_init(); - if (rte_eal_pci_init() < 0) - rte_panic("Cannot init PCI\n"); - #ifdef RTE_LIBRTE_IVSHMEM if (rte_eal_ivshmem_init() < 0) rte_panic("Cannot init IVSHMEM\n"); @@ -792,6 +789,9 @@ rte_eal_init(int argc, char **argv) if (rte_eal_timer_init() < 0) rte_panic("Cannot init HPET or TSC timers\n"); + if (rte_eal_pci_init() < 0) + rte_panic("Cannot init PCI\n"); + eal_check_mem_on_local_socket(); rte_eal_mcfg_complete(); -- 1.9.3