From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mail-wi0-f176.google.com (mail-wi0-f176.google.com [209.85.212.176]) by dpdk.org (Postfix) with ESMTP id AEF5B58DB for ; Fri, 22 Nov 2013 13:47:06 +0100 (CET) Received: by mail-wi0-f176.google.com with SMTP id hq4so661543wib.3 for ; Fri, 22 Nov 2013 04:48:05 -0800 (PST) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:from:organization:to:subject:date:user-agent:cc :references:in-reply-to:mime-version:content-type :content-transfer-encoding:message-id; bh=RRm6KcOA34zJe9+0cHecKnKenzArPLKQ4COW0FSYf4Y=; b=m+grJuLdVJTGrte3f5Mcws8l9jKUap6jl1UyOJx8j3k78t93Zgyd2zGPhzwIGg1yQH UGnE/XuxQB/aYUdp9uq3urB5qRJuxUopBuX0kLQbPHlEGhkJl6DMmE3GfPO+FmSiF5YL Nh7BBfLJrl8Z6M9VXgCnGZeCdwFjVP4WFqt9ymUa52pi2ZGjsr/hLlHwTjLW2m17efLR XxAr7jqjX2QbogChyN0svYSfBqzq3UINnLNq/jFNeu0WM+vMEfPP05+7X8/TFbxo3XO9 ZkcxHw6aC/ZhKwBVtWu7IrOZwPJ5UEqg+vSCWS5XQLtKPiOEQ693bTdpdD+60wC8rzXe J3xA== X-Gm-Message-State: ALoCoQl/8d7s0Jh+E6M5cmdYU/9eN22qAX3AyL07OpSJrB3vjLxXsPJWsUCjQBqe+kGj6yGhkzkk X-Received: by 10.180.76.196 with SMTP id m4mr2478024wiw.59.1385124485299; Fri, 22 Nov 2013 04:48:05 -0800 (PST) Received: from angus.localnet (6wind.net2.nerim.net. [213.41.180.237]) by mx.google.com with ESMTPSA id je17sm15511371wic.4.2013.11.22.04.48.03 for (version=TLSv1.2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Fri, 22 Nov 2013 04:48:04 -0800 (PST) From: Thomas Monjalon Organization: 6WIND To: Dmitry Vyal Date: Fri, 22 Nov 2013 13:48:02 +0100 User-Agent: KMail/1.13.7 (Linux/3.2.0-4-amd64; KDE/4.8.4; x86_64; ; ) References: <528F4E41.2000405@gmail.com> In-Reply-To: <528F4E41.2000405@gmail.com> MIME-Version: 1.0 Content-Type: Text/Plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Message-Id: <201311221348.02307.thomas.monjalon@6wind.com> Cc: dev@dpdk.org Subject: Re: [dpdk-dev] Sporadic errors while initializing NICs in example applications, dpdk-1.5.0r1 X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: patches and discussions about DPDK List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 22 Nov 2013 12:47:07 -0000 Hello, 22/11/2013 13:29, Dmitry Vyal : > EAL: PCI device 0000:02:00.0 on NUMA socket -1 > EAL: probe driver: 8086:10fb rte_ixgbe_pmd > EAL: PCI memory mapped at 0x7f6b83687000 > EAL: PCI memory mapped at 0x7f6b83683000 > EAL: PCI device 0000:02:00.1 on NUMA socket -1 > EAL: probe driver: 8086:10fb rte_ixgbe_pmd > EAL: PCI memory mapped at 0x7f6b83663000 > EAL: PCI memory mapped at 0x7f6b8365f000 [...] > EAL: Error - exiting with code: 1 > Cause: No Ethernet ports - bye > > Any ideas how to investigate this? Could you try this patch in order to see the root cause of your issue ? --- a/lib/librte_pmd_ixgbe/ixgbe_logs.h +++ b/lib/librte_pmd_ixgbe/ixgbe_logs.h @@ -34,41 +34,44 @@ #ifndef _IXGBE_LOGS_H_ #define _IXGBE_LOGS_H_ +#define PMD_LOG(level, fmt, args...) \ + RTE_LOG(level, PMD, "%s(): " fmt "\n", __func__, ##args) + #ifdef RTE_LIBRTE_IXGBE_DEBUG_INIT -#define PMD_INIT_LOG(level, fmt, args...) \ - RTE_LOG(level, PMD, "%s(): " fmt "\n", __func__, ## args) +#define PMD_INIT_LOG(level, fmt, args...) PMD_LOG(level, fmt, ##args) #define PMD_INIT_FUNC_TRACE() PMD_INIT_LOG(DEBUG, " >>") #else -#define PMD_INIT_LOG(level, fmt, args...) do { } while(0) +#define PMD_INIT_LOG(level, fmt, args...) \ + (void)(RTE_LOG_##level <= RTE_LOG_ERR ? PMD_LOG(level, fmt, ##args) : 0) #define PMD_INIT_FUNC_TRACE() do { } while(0) #endif #ifdef RTE_LIBRTE_IXGBE_DEBUG_RX -#define PMD_RX_LOG(level, fmt, args...) \ - RTE_LOG(level, PMD, "%s(): " fmt "\n", __func__, ## args) +#define PMD_RX_LOG(level, fmt, args...) PMD_LOG(level, fmt, ##args) #else -#define PMD_RX_LOG(level, fmt, args...) do { } while(0) +#define PMD_RX_LOG(level, fmt, args...) \ + (void)(RTE_LOG_##level <= RTE_LOG_ERR ? PMD_LOG(level, fmt, ##args) : 0) #endif #ifdef RTE_LIBRTE_IXGBE_DEBUG_TX -#define PMD_TX_LOG(level, fmt, args...) \ - RTE_LOG(level, PMD, "%s(): " fmt "\n", __func__, ## args) +#define PMD_TX_LOG(level, fmt, args...) PMD_LOG(level, fmt, ##args) #else -#define PMD_TX_LOG(level, fmt, args...) do { } while(0) +#define PMD_TX_LOG(level, fmt, args...) \ + (void)(RTE_LOG_##level <= RTE_LOG_ERR ? PMD_LOG(level, fmt, ##args) : 0) #endif #ifdef RTE_LIBRTE_IXGBE_DEBUG_TX_FREE -#define PMD_TX_FREE_LOG(level, fmt, args...) \ - RTE_LOG(level, PMD, "%s(): " fmt "\n", __func__, ## args) +#define PMD_TX_FREE_LOG(level, fmt, args...) PMD_LOG(level, fmt, ##args) #else -#define PMD_TX_FREE_LOG(level, fmt, args...) do { } while(0) +#define PMD_TX_FREE_LOG(level, fmt, args...) \ + (void)(RTE_LOG_##level <= RTE_LOG_ERR ? PMD_LOG(level, fmt, ##args) : 0) #endif #ifdef RTE_LIBRTE_IXGBE_DEBUG_DRIVER -#define PMD_DRV_LOG(level, fmt, args...) \ - RTE_LOG(level, PMD, "%s(): " fmt "\n", __func__, ## args) +#define PMD_DRV_LOG(level, fmt, args...) PMD_LOG(level, fmt, ##args) #else -#define PMD_DRV_LOG(level, fmt, args...) do { } while(0) +#define PMD_DRV_LOG(level, fmt, args...) \ + (void)(RTE_LOG_##level <= RTE_LOG_ERR ? PMD_LOG(level, fmt, ##args) : 0) #endif #endif /* _IXGBE_LOGS_H_ */ -- Thomas